Dateispeicher "Webdav" auch für Kunden und Lieferanten
[kivitendo-erp.git] / js / kivi.Order.js
index 4d7971d..580ff50 100644 (file)
@@ -164,6 +164,7 @@ namespace('kivi.Order', function(ns) {
   };
 
   ns.reload_cv_dependent_selections = function() {
+    $('#order_shipto_id').val('');
     var data = $('#order_form').serializeArray();
     data.push({ name: 'action', value: 'Order/customer_vendor_changed' });
 
@@ -174,9 +175,29 @@ namespace('kivi.Order', function(ns) {
     $(event.target).val(kivi.format_amount(kivi.parse_amount($(event.target).val()), -2));
   };
 
+  ns.reformat_number_as_null_number = function(event) {
+    if ($(event.target).val() === '') {
+      return;
+    }
+    ns.reformat_number(event);
+  };
+
   ns.update_exchangerate = function(event) {
+    if (!ns.check_cv()) {
+      $('#order_currency_id').val($('#old_currency_id').val());
+      return;
+    }
+
     var rate_input = $('#order_exchangerate_as_null_number');
-    rate_input.prop('disabled', true);
+    // unset exchangerate if currency changed
+    if ($('#order_currency_id').val() !== $('#old_currency_id').val()) {
+      rate_input.val('');
+    }
+
+    // only set exchangerate if unset
+    if (rate_input.val() !== '') {
+      return;
+    }
 
     var data = $('#order_form').serializeArray();
     data.push({ name: 'action', value: 'Order/update_exchangerate' });
@@ -189,17 +210,14 @@ namespace('kivi.Order', function(ns) {
       success: function(data){
         if (!data.is_standard) {
           $('#currency_name').text(data.currency_name);
-          var rate_text = $('#exchangerate_text');
           if (data.exchangerate) {
-            rate_text.text(data.exchangerate);
-            rate_input.hide();
+            rate_input.val(data.exchangerate);
           } else {
-            rate_text.text('');
-            rate_input.prop('disabled', false);
-            rate_input.show().val(0);
+            rate_input.val('');
           }
           $('#exchangerate_settings').show();
         } else {
+          rate_input.val('');
           $('#exchangerate_settings').hide();
         }
         if ($('#order_currency_id').val() != $('#old_currency_id').val() ||
@@ -828,6 +846,12 @@ namespace('kivi.Order', function(ns) {
     return true;
   };
 
+  ns.edit_custom_shipto = function() {
+    if (!ns.check_cv()) return;
+
+    kivi.SalesPurchase.edit_custom_shipto();
+  };
+
 });
 
 $(function() {
@@ -887,4 +911,6 @@ $(function() {
     return false;
   });
 
+  $('.reformat_number_as_null_number').change(kivi.Order.reformat_number_as_null_number);
+
 });