Brieffunktion: Verwendung von HTML im Body
authorMoritz Bunkus <m.bunkus@linet-services.de>
Wed, 10 Feb 2016 12:55:35 +0000 (13:55 +0100)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Wed, 10 Feb 2016 12:55:35 +0000 (13:55 +0100)
SL/Controller/Letter.pm
SL/DB/Letter.pm
SL/DB/LetterDraft.pm
sql/Pg-upgrade2/use_html_in_letter.pl [new file with mode: 0644]
templates/webpages/letter/edit.html

index 5e07bd0..2af59b0 100644 (file)
@@ -221,6 +221,9 @@ sub action_print_letter {
     template  => $template_file,
     variables => $::form,
     return    => 'file_name',
+    variable_content_types => {
+      body                 => 'html',
+    },
   );
 
   my $pdf_file_name;
@@ -306,6 +309,8 @@ sub action_delete_drafts {
 sub _display {
   my ($self, %params) = @_;
 
+  $::request->{layout}->use_javascript("${_}.js") for qw(ckeditor/ckeditor ckeditor/adapters/jquery);
+
   my $letter = $self->letter;
 
  $params{title} ||= t8('Edit Letter');
index a7deeae..02b54cd 100644 (file)
@@ -1,10 +1,8 @@
-# This file has been auto-generated only because it didn't exist.
-# Feel free to modify it at will; it will not be overwritten automatically.
-
 package SL::DB::Letter;
 
 use strict;
 
+use SL::DB::Helper::AttrHTML;
 use SL::DB::MetaSetup::Letter;
 use SL::DB::Manager::Letter;
 
@@ -19,6 +17,8 @@ __PACKAGE__->meta->add_relationships(
 
 __PACKAGE__->meta->initialize;
 
+__PACKAGE__->attr_html('body');
+
 sub new_from_draft {
   my ($class, $draft) = @_;
 
index 109010e..089755b 100644 (file)
@@ -1,14 +1,14 @@
-# This file has been auto-generated only because it didn't exist.
-# Feel free to modify it at will; it will not be overwritten automatically.
-
 package SL::DB::LetterDraft;
 
 use strict;
 
+use SL::DB::Helper::AttrHTML;
 use SL::DB::MetaSetup::LetterDraft;
 
 __PACKAGE__->meta->initialize;
 
+__PACKAGE__->attr_html('body');
+
 # Creates get_all, get_all_count, get_all_iterator, delete_all and update_all.
 __PACKAGE__->meta->make_manager_class;
 
diff --git a/sql/Pg-upgrade2/use_html_in_letter.pl b/sql/Pg-upgrade2/use_html_in_letter.pl
new file mode 100644 (file)
index 0000000..7f42cc0
--- /dev/null
@@ -0,0 +1,21 @@
+# @tag: use_html_in_letter
+# @description: Briefe: HTML für Body nutzen können
+# @depends: letter letter_draft
+package SL::DBUpgrade2::use_html_in_letter;
+
+use strict;
+use utf8;
+
+use SL::DBUtils;
+
+use parent qw(SL::DBUpgrade2::Base);
+
+sub run {
+  my ($self) = @_;
+
+  $self->convert_column_to_html($_, 'body') for qw(letter letter_draft);
+
+  return 1;
+}
+
+1;
index 1e84de8..a43f310 100644 (file)
@@ -69,7 +69,7 @@
     <tr>
     <tr>
      <th align=right>[% 'Body' | $T8 %]</th>
-     <td><textarea name='letter.body' style='width:100%' rows=20>[% letter.body | html %]</textarea></td>
+     <td>[% L.textarea_tag('letter.body_as_restricted_html', letter.body_as_restricted_html, style='width:100%', rows=20, class="texteditor") %]</td>
     </tr>
     <tr height=10></tr>
      <th align=right>[% 'Internal Notes' | $T8 %]</th>