X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=js%2Fkivi.Order.js;h=d74e3470d61a378857a2748ce1564b3d5c11678b;hb=d4c5ff04f33e7fe29e079c4489c4126a7ea2493c;hp=580ff50d71900285dceecf259d2e8be295773cb6;hpb=199bd497fa158b819070767fa737b2e23d164b96;p=kivitendo-erp.git diff --git a/js/kivi.Order.js b/js/kivi.Order.js index 580ff50d7..d74e3470d 100644 --- a/js/kivi.Order.js +++ b/js/kivi.Order.js @@ -28,7 +28,7 @@ namespace('kivi.Order', function(ns) { } if (pos.length > 0) { - question = question || kivi.t8("Do you really want to save?"); + question = question || kivi.t8("Do you really want to continue?"); return confirm(kivi.t8("There are duplicate parts at positions") + "\n" + pos.join(', ') + "\n" + question); @@ -51,7 +51,6 @@ namespace('kivi.Order', function(ns) { if (warn_on_reqdate && !ns.check_valid_reqdate()) return; var data = $('#order_form').serializeArray(); - data.push({ name: 'order.language_id', value: $('#language_id').val() }); // language from print options data.push({ name: 'action', value: 'Order/' + action }); $.post("controller.pl", data, kivi.eval_json_result); @@ -83,23 +82,11 @@ namespace('kivi.Order', function(ns) { var data = $('#order_form').serializeArray(); data = data.concat($('#print_options_form').serializeArray()); - data.push({ name: 'order.language_id', value: $('#language_id').val() }); // language from print options data.push({ name: 'action', value: 'Order/print' }); $.post("controller.pl", data, kivi.eval_json_result); }; - ns.email = function(warn_on_duplicates) { - if (warn_on_duplicates && !ns.check_duplicate_parts(kivi.t8("Do you really want to send by mail?"))) return; - if (!ns.check_cv()) return; - - var data = $('#order_form').serializeArray(); - data.push({ name: 'order.language_id', value: $('#language_id').val() }); // language from print options - data.push({ name: 'action', value: 'Order/show_email_dialog' }); - - $.post("controller.pl", data, kivi.eval_json_result); - }; - var email_dialog; ns.setup_send_email_dialog = function() { @@ -150,7 +137,6 @@ namespace('kivi.Order', function(ns) { var data = $('#order_form').serializeArray(); data = data.concat($('[name^="email_form."]').serializeArray()); data = data.concat($('[name^="print_options."]').serializeArray()); - data.push({ name: 'order.language_id', value: $('#language_id').val() }); // language from print options data.push({ name: 'action', value: 'Order/send_email' }); $.post("controller.pl", data, kivi.eval_json_result); }; @@ -594,40 +580,15 @@ namespace('kivi.Order', function(ns) { var position = $(row).find('[name="position"]').html(); var partnumber = $(row).find('[name="partnumber"]').html(); var description_elt = $(row).find('[name="order.orderitems[].description"]'); - var description = description_elt.val(); var longdescription_elt = $(row).find('[name="order.orderitems[].longdescription"]'); - var longdescription; - - if (!longdescription_elt.length) { - var data = [ - { name: 'action', value: 'Order/get_item_longdescription' }, - { name: 'type', value: $('#type').val() }, - { name: 'item_id', value: $(row).find('[name="order.orderitems[+].id"]').val() }, - { name: 'parts_id', value: $(row).find('[name="order.orderitems[].parts_id"]').val() } - ]; - - $.ajax({ - url: 'controller.pl', - data: data, - method: "GET", - async: false, - dataType: 'text', - success: function(val) { - longdescription = val; - } - }); - } else { - longdescription = longdescription_elt.val(); - } var params = { runningnumber: position, partnumber: partnumber, - description: description, - default_longdescription: longdescription, + description: description_elt.val(), + default_longdescription: longdescription_elt.val(), set_function: function(val) { - longdescription_elt.remove(); - $('').insertAfter(description_elt).val(val); + longdescription_elt.val(val); } }; @@ -852,6 +813,101 @@ namespace('kivi.Order', function(ns) { kivi.SalesPurchase.edit_custom_shipto(); }; + ns.purchase_order_check_for_direct_delivery = function() { + if ($('#type').val() != 'sales_order') { + kivi.submit_form_with_action($('#order_form'), 'Order/purchase_order'); + } + + var empty = true; + var shipto; + if ($('#order_shipto_id').val() !== '') { + empty = false; + shipto = $('#order_shipto_id option:selected').text(); + } else { + $('#shipto_inputs [id^="shipto"]').each(function(idx, elt) { + if (!empty) return true; + if (/^shipto_to_copy/.test($(elt).prop('id'))) return true; + if (/^shiptocp_gender/.test($(elt).prop('id'))) return true; + if (/^shiptocvar_/.test($(elt).prop('id'))) return true; + if ($(elt).val() !== '') { + empty = false; + return false; + } + }); + var shipto_elements = []; + $([$('#shiptoname').val(), $('#shiptostreet').val(), $('#shiptozipcode').val(), $('#shiptocity').val()]).each(function(idx, elt) { + if (elt !== '') shipto_elements.push(elt); + }); + shipto = shipto_elements.join('; '); + } + + var use_it = false; + if (!empty) { + ns.direct_delivery_dialog(shipto); + } else { + kivi.submit_form_with_action($('#order_form'), 'Order/purchase_order'); + } + }; + + ns.direct_delivery_callback = function(accepted) { + $('#direct-delivery-dialog').dialog('close'); + + if (accepted) { + $('').appendTo('#order_form').val('1'); + } + + kivi.submit_form_with_action($('#order_form'), 'Order/purchase_order'); + }; + + ns.direct_delivery_dialog = function(shipto) { + $('#direct-delivery-dialog').remove(); + + var text1 = kivi.t8('You have entered or selected the following shipping address for this customer:'); + var text2 = kivi.t8('Do you want to carry this shipping address over to the new purchase order so that the vendor can deliver the goods directly to your customer?'); + var html = '

' + text1 + '

' + shipto + '

' + text2 + '

'; + html = html + '

'; + html = html + ''; + html = html + ' '; + html = html + ''; + html = html + '

'; + $(html).hide().appendTo('#order_form'); + + kivi.popup_dialog({id: 'direct-delivery-dialog', + dialog: {title: kivi.t8('Carry over shipping address'), + height: 300, + width: 500 }}); + }; + + ns.follow_up_window = function() { + var id = $('#id').val(); + var type = $('#type').val(); + + var number_info = ''; + if ($('#type').val() == 'sales_order' || $('#type').val() == 'purchase_order') { + number_info = $('#order_ordnumber').val(); + } else if ($('#type').val() == 'sales_quotation' || $('#type').val() == 'request_quotation') { + number_info = $('#order_quonumber').val(); + } + + var name_info = ''; + if ($('#type').val() == 'sales_order' || $('#type').val() == 'sales_quotation') { + name_info = $('#order_customer_id_name').val(); + } else if ($('#type').val() == 'purchase_order' || $('#type').val() == 'request_quotation') { + name_info = $('#order_vendor_id_name').val(); + } + + var info = ''; + if (number_info !== '') { info += ' (' + number_info + ')' } + if (name_info !== '') { info += ' (' + name_info + ')' } + + $('').appendTo('#order_form').val(1); + $('').appendTo('#order_form').val(id); + $('').appendTo('#order_form').val(type); + $('').appendTo('#order_form').val(info); + + follow_up_window(); + }; + }); $(function() {