From 5f6d6d4eaca3a3d238c678ef3f2a1fe676c3a77a Mon Sep 17 00:00:00 2001
From: Moritz Bunkus
Date: Wed, 15 Jan 2014 13:33:59 +0100
Subject: [PATCH] Verkaufs-/Einkaufsmasken: HTML in Langtexten nutzen
---
SL/DO.pm | 4 +++-
SL/IR.pm | 5 ++++-
SL/IS.pm | 4 +++-
SL/OE.pm | 4 +++-
bin/mozilla/do.pl | 2 +-
bin/mozilla/ir.pl | 2 +-
bin/mozilla/is.pl | 2 +-
bin/mozilla/oe.pl | 2 +-
js/kivi.SalesPurchase.js | 3 ++-
js/kivi.js | 7 ++++++-
templates/webpages/generic/set_longdescription.html | 2 +-
11 files changed, 26 insertions(+), 11 deletions(-)
diff --git a/SL/DO.pm b/SL/DO.pm
index a0087dee0..1da5a8e2d 100644
--- a/SL/DO.pm
+++ b/SL/DO.pm
@@ -42,6 +42,7 @@ use SL::CVar;
use SL::DB::DeliveryOrder;
use SL::DB::Status;
use SL::DBUtils;
+use SL::HTML::Restrict;
use SL::RecordLinks;
use SL::IC;
use SL::TransNumber;
@@ -216,6 +217,7 @@ sub save {
# connect to database, turn off autocommit
my $dbh = $form->get_standard_dbh($myconfig);
+ my $restricter = SL::HTML::Restrict->create;
my ($query, @values, $sth, $null);
@@ -323,7 +325,7 @@ sub save {
# save detail record in delivery_order_items table
@values = (conv_i($item_id), conv_i($form->{id}), conv_i($form->{"id_$i"}),
- $form->{"description_$i"}, $form->{"longdescription_$i"},
+ $form->{"description_$i"}, $restricter->process($form->{"longdescription_$i"}),
$form->{"qty_$i"}, $baseqty,
$form->{"sellprice_$i"}, $form->{"discount_$i"} / 100,
$form->{"unit_$i"}, conv_date($items_reqdate), conv_i($form->{"project_id_$i"}),
diff --git a/SL/IR.pm b/SL/IR.pm
index e5e02f5be..301fe3b64 100644
--- a/SL/IR.pm
+++ b/SL/IR.pm
@@ -42,6 +42,7 @@ use SL::DATEV qw(:CONSTANTS);
use SL::DBUtils;
use SL::DO;
use SL::GenericTranslations;
+use SL::HTML::Restrict;
use SL::IO;
use SL::MoreCommon;
use SL::DB::Default;
@@ -56,6 +57,8 @@ sub post_invoice {
# connect to database, turn off autocommit
my $dbh = $provided_dbh ? $provided_dbh : $form->dbconnect_noauto($myconfig);
+ my $restricter = SL::HTML::Restrict->create;
+
$form->{defaultcurrency} = $form->get_default_currency($myconfig);
my $defaultcurrency = $form->{defaultcurrency};
@@ -378,7 +381,7 @@ sub post_invoice {
project_id, serialnumber, price_factor_id, price_factor, marge_price_factor)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, (SELECT factor FROM price_factors WHERE id = ?), ?)|;
@values = ($invoice_id, conv_i($form->{id}), conv_i($form->{"id_$i"}),
- $form->{"description_$i"}, $form->{"longdescription_$i"}, $form->{"qty_$i"} * -1,
+ $form->{"description_$i"}, $restricter->process($form->{"longdescription_$i"}), $form->{"qty_$i"} * -1,
$baseqty * -1, $form->{"sellprice_$i"}, $fxsellprice, $form->{"discount_$i"}, $allocated,
$form->{"unit_$i"}, conv_date($form->{deliverydate}),
conv_i($form->{"project_id_$i"}), $form->{"serialnumber_$i"},
diff --git a/SL/IS.pm b/SL/IS.pm
index c5fd8821f..5a6484505 100644
--- a/SL/IS.pm
+++ b/SL/IS.pm
@@ -44,6 +44,7 @@ use SL::DATEV qw(:CONSTANTS);
use SL::DBUtils;
use SL::DO;
use SL::GenericTranslations;
+use SL::HTML::Restrict;
use SL::MoreCommon;
use SL::IC;
use SL::IO;
@@ -546,6 +547,7 @@ sub post_invoice {
# connect to database, turn off autocommit
my $dbh = $provided_dbh ? $provided_dbh : $form->get_standard_dbh;
+ my $restricter = SL::HTML::Restrict->create;
my ($query, $sth, $null, $project_id, @values);
my $exchangerate = 0;
@@ -749,7 +751,7 @@ sub post_invoice {
(SELECT factor FROM price_factors WHERE id = ?), ?)|;
@values = ($invoice_id, conv_i($form->{id}), conv_i($form->{"id_$i"}),
- $form->{"description_$i"}, $form->{"longdescription_$i"}, $form->{"qty_$i"},
+ $form->{"description_$i"}, $restricter->process($form->{"longdescription_$i"}), $form->{"qty_$i"},
$form->{"sellprice_$i"}, $fxsellprice,
$form->{"discount_$i"}, $allocated, 'f',
$form->{"unit_$i"}, conv_date($form->{"reqdate_$i"}), conv_i($form->{"project_id_$i"}),
diff --git a/SL/OE.pm b/SL/OE.pm
index 13e735a38..547985cf7 100644
--- a/SL/OE.pm
+++ b/SL/OE.pm
@@ -45,6 +45,7 @@ use SL::DB::PeriodicInvoicesConfig;
use SL::DB::Status;
use SL::DB::Tax;
use SL::DBUtils;
+use SL::HTML::Restrict;
use SL::IC;
use SL::TransNumber;
@@ -330,6 +331,7 @@ sub save {
# connect to database, turn off autocommit
my $dbh = $form->get_standard_dbh;
+ my $restricter = SL::HTML::Restrict->create;
my ($query, @values, $sth, $null);
my $exchangerate = 0;
@@ -500,7 +502,7 @@ sub save {
(SELECT factor FROM price_factors WHERE id = ?), ?)|;
push(@values,
conv_i($orderitems_id), conv_i($form->{id}), conv_i($form->{"id_$i"}),
- $form->{"description_$i"}, $form->{"longdescription_$i"},
+ $form->{"description_$i"}, $restricter->process($form->{"longdescription_$i"}),
$form->{"qty_$i"}, $baseqty,
$fxsellprice, $form->{"discount_$i"},
$form->{"unit_$i"}, conv_date($reqdate), conv_i($form->{"project_id_$i"}),
diff --git a/bin/mozilla/do.pl b/bin/mozilla/do.pl
index 06b8f6552..67f2740c5 100644
--- a/bin/mozilla/do.pl
+++ b/bin/mozilla/do.pl
@@ -310,7 +310,7 @@ sub form_header {
$form->{follow_up_trans_info} = $form->{donumber} .'('. $follow_up_vc .')';
- $::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase));
+ $::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase ckeditor/ckeditor ckeditor/adapters/jquery));
$form->header();
# Fix für Bug 1082 Erwartet wird: 'abteilungsNAME--abteilungsID'
diff --git a/bin/mozilla/ir.pl b/bin/mozilla/ir.pl
index 2666efd34..e90b12cf6 100644
--- a/bin/mozilla/ir.pl
+++ b/bin/mozilla/ir.pl
@@ -331,7 +331,7 @@ sub form_header {
), @custom_hiddens,
map { $_.'_rate', $_.'_description', $_.'_taxnumber' } split / /, $form->{taxaccounts}];
- $::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase));
+ $::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase ckeditor/ckeditor ckeditor/adapters/jquery));
$form->header();
diff --git a/bin/mozilla/is.pl b/bin/mozilla/is.pl
index a83897a45..379544809 100644
--- a/bin/mozilla/is.pl
+++ b/bin/mozilla/is.pl
@@ -383,7 +383,7 @@ sub form_header {
), @custom_hiddens,
map { $_.'_rate', $_.'_description', $_.'_taxnumber' } split / /, $form->{taxaccounts}];
- $::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase));
+ $::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase ckeditor/ckeditor ckeditor/adapters/jquery));
$form->header();
diff --git a/bin/mozilla/oe.pl b/bin/mozilla/oe.pl
index a2d7175bc..0dabe9ec1 100644
--- a/bin/mozilla/oe.pl
+++ b/bin/mozilla/oe.pl
@@ -429,7 +429,7 @@ sub form_header {
}
}
- $::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase show_form_details show_history show_vc_details));
+ $::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase show_form_details show_history show_vc_details ckeditor/ckeditor ckeditor/adapters/jquery));
$form->header;
if ($form->{CFDD_shipto} && $form->{CFDD_shipto_id} ) {
diff --git a/js/kivi.SalesPurchase.js b/js/kivi.SalesPurchase.js
index 0331d8408..a390c8721 100644
--- a/js/kivi.SalesPurchase.js
+++ b/js/kivi.SalesPurchase.js
@@ -22,7 +22,8 @@ namespace('kivi.SalesPurchase', function(ns) {
kivi.popup_dialog({
id: 'edit_longdescription_dialog',
dialog: {
- title: kivi.t8('Enter longdescription')
+ title: kivi.t8('Enter longdescription'),
+ open: function() { kivi.set_focus('#popup_edit_longdescription_input'); }
}
});
};
diff --git a/js/kivi.js b/js/kivi.js
index 469d889d3..17c0ab056 100644
--- a/js/kivi.js
+++ b/js/kivi.js
@@ -190,7 +190,12 @@ namespace("kivi", function(ns) {
if (!params.url) {
// Use existing DOM element and show it. No AJAX call.
- dialog = $('#' + id).dialog(dialog_params);
+ dialog =
+ $('#' + id)
+ .bind('dialogopen', function() {
+ ns.run_once_for('.texteditor-in-dialog,.texteditor-dialog', 'texteditor', kivi.init_text_editor);
+ })
+ .dialog(dialog_params);
return true;
}
diff --git a/templates/webpages/generic/set_longdescription.html b/templates/webpages/generic/set_longdescription.html
index f7855f341..461222541 100644
--- a/templates/webpages/generic/set_longdescription.html
+++ b/templates/webpages/generic/set_longdescription.html
@@ -20,7 +20,7 @@
- [% L.textarea_tag("popup_edit_longdescription_input", "", wrap="soft", style="width: 750px; height: 240px;") %]
+ [% L.textarea_tag("popup_edit_longdescription_input", "", class="texteditor-in-dialog" wrap="soft", style="width: 750px; height: 220px;") %]
[% L.button_tag("kivi.SalesPurchase.set_longdescription()", LxERP.t8("Close")) %]
--
2.20.1