From: Moritz Bunkus Date: Tue, 31 Mar 2015 09:34:58 +0000 (+0200) Subject: Langtext-HTML-Editor: bei jedem Aufruf DOM-Element neu anlegen und ckeditor initialis... X-Git-Tag: release-3.2.1~21 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=c3d10acecf7f45e4f5fcb7d29c910e3005e6598c;p=kivitendo-erp.git Langtext-HTML-Editor: bei jedem Aufruf DOM-Element neu anlegen und ckeditor initialisieren Unter Firefox kommt es beim mehrmaligen Aufrufen ansonsten sehr schnell zu nicht mehr behebbaren JavaScript-Fehlern. Es bleibt dann beim Öffnen des Popups nur das grau gestreifte Overlay sichtbar, nicht aber der Dialog selber. --- diff --git a/js/kivi.SalesPurchase.js b/js/kivi.SalesPurchase.js index f6c163362..3edefdef9 100644 --- a/js/kivi.SalesPurchase.js +++ b/js/kivi.SalesPurchase.js @@ -1,6 +1,5 @@ namespace('kivi.SalesPurchase', function(ns) { this.edit_longdescription = function(row) { - var $edit = $('#popup_edit_longdescription_input'); var $element = $('#longdescription_' + row); if (!$element.length) { @@ -8,9 +7,17 @@ namespace('kivi.SalesPurchase', function(ns) { return; } - $edit.data('element', $element); + var $container = $('#popup_edit_longdescription_input_container'); + var $edit = $(''); + + $container.children().remove(); + $container.append($edit); + $container.data('element', $element); + $edit.val($element.val()); + kivi.init_text_editor($edit); + $('#popup_edit_longdescription_runningnumber').html(row); $('#popup_edit_longdescription_partnumber').html($('#partnumber_' + row).val() || ''); @@ -23,16 +30,17 @@ namespace('kivi.SalesPurchase', function(ns) { id: 'edit_longdescription_dialog', dialog: { title: kivi.t8('Enter longdescription'), - open: function() { kivi.set_focus('#popup_edit_longdescription_input'); } + open: function() { kivi.focus_ckeditor_when_ready('#popup_edit_longdescription_input'); }, + close: function() { $('#popup_edit_longdescription_input_container').children().remove(); } } }); }; this.set_longdescription = function() { - var $edit = $('#popup_edit_longdescription_input'); - var $element = $edit.data('element'); + $('#popup_edit_longdescription_input_container') + .data('element') + .val( $('#popup_edit_longdescription_input').val() ); - $element.val($edit.val()); $('#edit_longdescription_dialog').dialog('close'); }; diff --git a/templates/webpages/generic/set_longdescription.html b/templates/webpages/generic/set_longdescription.html index 461222541..e7a357bd7 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", "", class="texteditor-in-dialog" wrap="soft", style="width: 750px; height: 220px;") %]

+

[% L.button_tag("kivi.SalesPurchase.set_longdescription()", LxERP.t8("Close")) %]