Auftrags-Controller: Typo + vergessenes Ende-Tag von td
[kivitendo-erp.git] / js / kivi.SalesPurchase.js
index bcae114..303ae5f 100644 (file)
@@ -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      = $('<textarea id="popup_edit_longdescription_input" class="texteditor-in-dialog" wrap="soft" style="width: 750px; height: 220px;"></textarea>');
+
+    $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');
   };
 
@@ -53,6 +61,14 @@ namespace('kivi.SalesPurchase', function(ns) {
     return confirm(kivi.t8('This sales order has an active configuration for periodic invoices. If you save then all subsequently created invoices will contain those changes as well, but not those that have already been created. Do you want to continue?'));
   };
 
+  this.check_transaction_description = function() {
+    if ($('#transaction_description').val() != '')
+      return true;
+
+    alert(kivi.t8('A transaction description is required.'));
+    return false;
+  };
+
   this.on_submit_checks = function() {
     var $button = $(this);
     if (($button.data('check-transfer-qty') == 1) && !kivi.SalesPurchase.delivery_order_check_transfer_qty())
@@ -61,10 +77,25 @@ namespace('kivi.SalesPurchase', function(ns) {
     if (($button.data('warn-save-active-periodic-invoice') == 1) && !kivi.SalesPurchase.oe_warn_save_active_periodic_invoice())
       return false;
 
+    if (($button.data('require-transaction-description') == 1) && !kivi.SalesPurchase.check_transaction_description())
+      return false;
+
     return true;
   };
 
   this.init_on_submit_checks = function() {
      $('input[type=submit]').click(kivi.SalesPurchase.on_submit_checks);
   };
+
+  this.set_duedate_on_reference_date_change = function(reference_field_id) {
+    setTimeout(function() {
+      var data = {
+        action:     'set_duedate',
+        invdate:    $('#' + reference_field_id).val(),
+        duedate:    $('#duedate').val(),
+        payment_id: $('#payment_id').val(),
+      };
+      $.post('is.pl', data, kivi.eval_json_result);
+    });
+  };
 });