X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=js%2Fkivi.Order.js;h=b0960e7be0de30ad54c5343da0dda4b93f772485;hb=d58b1a04c2facd0a4484cf2b801b27b9741cce26;hp=7294072741eed88765b89941906c676f357531aa;hpb=2644d2a93d051b4040354c87c0410ebf494a15df;p=kivitendo-erp.git diff --git a/js/kivi.Order.js b/js/kivi.Order.js index 729407274..b0960e7be 100644 --- a/js/kivi.Order.js +++ b/js/kivi.Order.js @@ -45,7 +45,7 @@ namespace('kivi.Order', function(ns) { } }; - ns.save = function(action, warn_on_duplicates, warn_on_reqdate) { + ns.save = function(action, warn_on_duplicates, warn_on_reqdate, back_to_caller) { if (!ns.check_cv()) return; if (warn_on_duplicates && !ns.check_duplicate_parts()) return; if (warn_on_reqdate && !ns.check_valid_reqdate()) return; @@ -53,6 +53,8 @@ namespace('kivi.Order', function(ns) { var data = $('#order_form').serializeArray(); data.push({ name: 'action', value: 'Order/' + action }); + if (back_to_caller) data.push({ name: 'back_to_caller', value: '1' }); + $.post("controller.pl", data, kivi.eval_json_result); }; @@ -472,6 +474,15 @@ namespace('kivi.Order', function(ns) { return insert_before_item_id; }; + ns.update_item_input_row = function() { + if (!ns.check_cv()) return; + + var data = $('#order_form').serializeArray(); + data.push({ name: 'action', value: 'Order/update_item_input_row' }); + + $.post("controller.pl", data, kivi.eval_json_result); + }; + ns.add_item = function() { if ($('#add_item_parts_id').val() === '') return; if (!ns.check_cv()) return; @@ -547,7 +558,7 @@ namespace('kivi.Order', function(ns) { $.post("controller.pl", data, kivi.eval_json_result); }; - ns.update_price_source = function(item_id, source, descr, price_str, price_editable) { + ns.set_price_and_source_text = function(item_id, source, descr, price_str, price_editable) { var row = $('#item_' + item_id).parents("tbody").first(); var source_elt = $(row).find('[name="order.orderitems[].active_price_source"]'); var button_elt = $(row).find('[name="price_chooser_button"]'); @@ -576,13 +587,17 @@ namespace('kivi.Order', function(ns) { var html_elt = $(row).find('[name="sellprice_text"]'); price_elt.val(price_str); html_elt.html(price_str); - ns.recalc_amounts_and_taxes(); } + }; + ns.update_price_source = function(item_id, source, descr, price_str, price_editable) { + ns.set_price_and_source_text(item_id, source, descr, price_str, price_editable); + + if (price_str) ns.recalc_amounts_and_taxes(); kivi.io.close_dialog(); }; - ns.update_discount_source = function(item_id, source, descr, discount_str, price_editable) { + ns.set_discount_and_source_text = function(item_id, source, descr, discount_str, price_editable) { var row = $('#item_' + item_id).parents("tbody").first(); var source_elt = $(row).find('[name="order.orderitems[].active_discount_source"]'); var button_elt = $(row).find('[name="price_chooser_button"]'); @@ -611,9 +626,13 @@ namespace('kivi.Order', function(ns) { var html_elt = $(row).find('[name="discount_text"]'); discount_elt.val(discount_str); html_elt.html(discount_str); - ns.recalc_amounts_and_taxes(); } + }; + + ns.update_discount_source = function(item_id, source, descr, discount_str, price_editable) { + ns.set_discount_and_source_text(item_id, source, descr, discount_str, price_editable); + if (discount_str) ns.recalc_amounts_and_taxes(); kivi.io.close_dialog(); }; @@ -900,13 +919,9 @@ $(function() { $('#order_transdate_as_date').change(kivi.Order.update_exchangerate); $('#order_exchangerate_as_null_number').change(kivi.Order.exchangerate_changed); - if ($('#type').val() == 'sales_order' || $('#type').val() == 'sales_quotation' ) { - $('#add_item_parts_id').on('set_item:PartPicker', function(e,o) { $('#add_item_sellprice_as_number').val(kivi.format_amount(o.sellprice, -2)) }); - } else { - $('#add_item_parts_id').on('set_item:PartPicker', function(e,o) { $('#add_item_sellprice_as_number').val(kivi.format_amount(o.lastcost, -2)) }); - } - $('#add_item_parts_id').on('set_item:PartPicker', function(e,o) { $('#add_item_description').val(o.description) }); - $('#add_item_parts_id').on('set_item:PartPicker', function(e,o) { $('#add_item_unit').val(o.unit) }); + $('#add_item_parts_id').on('set_item:PartPicker', function() { + kivi.Order.update_item_input_row(); + }); $('.add_item_input').keydown(function(event) { if (event.keyCode == 13) {