return true;
};
- ns.check_save_duplicate_parts = function() {
+ ns.check_duplicate_parts = function(question) {
var id_arr = $('[name="order.orderitems[].parts_id"]').map(function() { return this.value; }).get();
var i, obj = {}, pos = [];
}
if (pos.length > 0) {
+ question = question || kivi.t8("Do you really want to save?");
return confirm(kivi.t8("There are duplicate parts at positions") + "\n"
+ pos.join(', ') + "\n"
- + kivi.t8("Do you really want to save?"));
+ + question);
}
return true;
};
ns.check_valid_reqdate = function() {
- if ($('#order_reqdate').val() === '') {
+ if ($('#order_reqdate_as_date').val() === '') {
alert(kivi.t8('Please select a delivery date.'));
return false;
} else {
ns.save = function(action, warn_on_duplicates, warn_on_reqdate) {
if (!ns.check_cv()) return;
- if (warn_on_duplicates && !ns.check_save_duplicate_parts()) return;
- if (warn_on_reqdate && !ns.check_valid_reqdate()) return;
+ if (warn_on_duplicates && !ns.check_duplicate_parts()) return;
+ if (warn_on_reqdate && !ns.check_valid_reqdate()) return;
var data = $('#order_form').serializeArray();
data.push({ name: 'action', value: 'Order/' + action });
$.post("controller.pl", data, kivi.eval_json_result);
};
- ns.show_print_options = function() {
+ ns.show_print_options = function(warn_on_duplicates) {
if (!ns.check_cv()) return;
+ if (warn_on_duplicates && !ns.check_duplicate_parts(kivi.t8("Do you really want to print?"))) return;
kivi.popup_dialog({
id: 'print_options',
$.download("controller.pl", data);
};
- ns.email = function() {
+ 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: 'action', value: 'Order/show_email_dialog' });
});
};
+ ns.redisplay_cvpartnumbers = function(data) {
+ $('.row_entry').each(function(idx, elt) {
+ $(elt).find('[name="cvpartnumber"]').html(data[idx][0]);
+ });
+ };
+
ns.renumber_positions = function() {
$('.row_entry [name="position"]').each(function(idx, elt) {
$(elt).html(idx+1);
kivi.popup_dialog({
url: 'controller.pl?action=Order/show_periodic_invoices_config_dialog',
- data: { type: $('#type').val(),
- id: $('#id').val(),
- config: $('#order_periodic_invoices_config').val(),
- customer_id: $('#order_customer_id').val(),
- transdate: $('#order_transdate').val(),
- language_id: $('#language_id').val()
+ data: { type: $('#type').val(),
+ id: $('#id').val(),
+ config: $('#order_periodic_invoices_config').val(),
+ customer_id: $('#order_customer_id').val(),
+ transdate_as_date: $('#order_transdate_as_date').val(),
+ language_id: $('#language_id').val()
},
id: 'jq_periodic_invoices_config_dialog',
load: kivi.reinit_widgets,
return true;
};
+ ns.update_row_from_master_data = function(clicked) {
+ var row = $(clicked).parents("tbody").first();
+ var item_id_dom = $(row).find('[name="orderitem_ids[+]"]');
+
+ var data = $('#order_form').serializeArray();
+ data.push({ name: 'action', value: 'Order/update_row_from_master_data' });
+ data.push({ name: 'item_ids[]', value: item_id_dom.val() });
+
+ $.post("controller.pl", data, kivi.eval_json_result);
+ };
+
+ ns.update_all_rows_from_master_data = function() {
+ var item_ids = $.map($('.row_entry'), function(elt) {
+ var item_id = $(elt).find('[name="orderitem_ids[+]"]').val();
+ return { name: 'item_ids[]', value: item_id };
+ });
+
+ if (item_ids.length == 0) {
+ return;
+ }
+
+ var data = $('#order_form').serializeArray();
+ data.push({ name: 'action', value: 'Order/update_row_from_master_data' });
+ data = data.concat(item_ids);
+
+ $.post("controller.pl", data, kivi.eval_json_result);
+ };
+
ns.show_calculate_qty_dialog = function(clicked) {
var row = $(clicked).parents("tbody").first();
var input_id = $(row).find('[name="order.orderitems[].qty_as_number"]').attr('id');