X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=js%2Fkivi.SalesPurchase.js;h=86704f24655710f2af630a0f445ba9fdeec50c21;hb=bec23a700e524b09e80fde2ec8178367aa3a16e2;hp=98111dadc76b8c3c9b3193bcc8cfac817254d02c;hpb=c2aaf253649281fee8e79a3300d81c827d9a1fd1;p=kivitendo-erp.git diff --git a/js/kivi.SalesPurchase.js b/js/kivi.SalesPurchase.js index 98111dadc..86704f246 100644 --- a/js/kivi.SalesPurchase.js +++ b/js/kivi.SalesPurchase.js @@ -32,8 +32,6 @@ namespace('kivi.SalesPurchase', function(ns) { $edit.val(params.default_longdescription); - kivi.init_text_editor($edit); - $('#popup_edit_longdescription_runningnumber').html(params.runningnumber); $('#popup_edit_longdescription_partnumber').html(params.partnumber); @@ -224,22 +222,28 @@ namespace('kivi.SalesPurchase', function(ns) { }; // Sending records via email. - this.send_email = function() { + this.check_required_email_fields = function() { var unset = $('#email_form_to,#email_form_subject,#email_form_message').filter(function(idx, elt) { return $(elt).val() === ''; }); - if (unset.length > 0) { - alert(kivi.t8("The recipient, subject or body is missing.")); - $(unset[0]).focus(); + if (unset.length === 0) + return true; + + alert(kivi.t8("The recipient, subject or body is missing.")); + $(unset[0]).focus(); + return false; + }; + + this.send_email = function() { + if (!kivi.SalesPurchase.check_required_email_fields()) return false; - } $('#send_email_dialog').children().remove().appendTo('#email_inputs'); $('#send_email_dialog').dialog('close'); - kivi.submit_form_with_action('#form', 'send_sales_purchase_email'); + kivi.submit_form_with_action('#form', $('#form').data('send-email-action')); return true; }; @@ -259,24 +263,39 @@ namespace('kivi.SalesPurchase', function(ns) { return true; }; - this.show_email_dialog = function() { + this.show_email_dialog = function(send_action) { + $('#form').data('send-email-action', send_action || 'send_sales_purchase_email'); + + var vc = $('#vc').val(); + var data = { + action: 'show_sales_purchase_email_dialog', + cp_id: $('#cp_id').val(), + donumber: $('#donumber').val(), + format: $('#format').val(), + formname: $('#formname').val(), + id: $('#id').val(), + invnumber: $('#invnumber').val(), + language_id: $('#language_id').val(), + media: 'email', + ordnumber: $('#ordnumber').val(), + rowcount: $('#rowcount').val(), + quonumber: $('#quonumber').val(), + type: $('#type').val(), + vc: vc, + vc_id: $('#' + vc + '_id').val(), + }; + + $('[name^=id_],[name^=partnumber_]').each(function(idx, elt) { + var val = $(elt).val() || ''; + if (val !== '') + data[ $(elt).attr('name') ] = val; + }); + kivi.popup_dialog({ id: 'send_email_dialog', url: 'io.pl', load: kivi.SalesPurchase.setup_send_email_dialog, - data: { - action: 'show_sales_purchase_email_dialog', - type: $('#type').val(), - formname: $('#formname').val(), - format: $('#format').val(), - media: 'email', - ordnumber: $('#ordnumber').val(), - donumber: $('#donumber').val(), - invnumber: $('#invnumber').val(), - quonumber: $('#quonumber').val(), - cp_id: $('#cp_id').val(), - language_id: $('#language_id').val(), - }, + data: data, dialog: { height: 600, title: kivi.t8('Send email'), @@ -286,4 +305,47 @@ namespace('kivi.SalesPurchase', function(ns) { return true; }; + + this.activate_send_email_actions_regarding_printout = function() { + var selected = $('#email_form_attachment_policy').val(); + $('#email_form_attachment_filename').parents('tr')[selected !== 'no_file' ? 'show' : 'hide'](); + $('#email_form_print_options')[selected === 'normal' ? 'show' : 'hide'](); + }; + + // Printing records. + this.setup_print_dialog = function() { + kivi.SalesPurchase.show_all_print_options_elements(); + + $('#print_options').children().remove().appendTo('#print_dialog_print_options'); + + $('#print_dialog_print_button').focus(); + }; + + this.finish_print_dialog = function() { + $('#print_dialog_print_options').children().remove().appendTo('#print_options'); + }; + + this.print_record = function() { + $('#print_dialog').dialog('close'); + + var action = $('#form').data('print-action'); + if (action.match("^js:")) + return kivi.run(action.substring(3)); + + kivi.submit_form_with_action('#form', action); + }; + + this.show_print_dialog = function(print_action) { + $('#form').data('print-action', print_action || 'print'); + + kivi.popup_dialog({ + id: 'print_dialog', + dialog: { + height: 600, + title: kivi.t8('Print record'), + open: kivi.SalesPurchase.setup_print_dialog, + close: kivi.SalesPurchase.finish_print_dialog, + } + }); + }; });