X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=js%2Fkivi.SalesPurchase.js;h=2b13dd8669d6366c4333fa2e20035964d65c376d;hb=cfb029307ecd356f377952f3190df655cbd447c6;hp=69fec6d8b34a1ffe9856df266882a7e065d978d4;hpb=4cb932aba73b8d72df10a1c0095228a10692536c;p=kivitendo-erp.git
diff --git a/js/kivi.SalesPurchase.js b/js/kivi.SalesPurchase.js
index 69fec6d8b..2b13dd866 100644
--- a/js/kivi.SalesPurchase.js
+++ b/js/kivi.SalesPurchase.js
@@ -18,7 +18,7 @@ namespace('kivi.SalesPurchase', function(ns) {
this.edit_longdescription_with_params = function(params) {
var $container = $('#popup_edit_longdescription_input_container');
- var $edit = $('');
+ var $edit = $('');
$container.children().remove();
$container.append($edit);
@@ -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);
@@ -172,8 +170,9 @@ namespace('kivi.SalesPurchase', function(ns) {
$('#shiptoname').focus();
};
- this.submit_custom_shipto = function() {
- $('#shipto_id').val('');
+ this.submit_custom_shipto = function(id_selector) {
+ id_selector = id_selector || '#shipto_id';
+ $(id_selector).val('');
$('#shipto_dialog').data('confirmed', true);
$('#shipto_dialog').dialog('close');
};
@@ -208,4 +207,159 @@ namespace('kivi.SalesPurchase', function(ns) {
}
});
};
+
+ this.show_print_options_elements = function(elements, show) {
+ $(elements).each(function(idx, elt) {
+ var $elements = $('#print_options_header_' + elt + ',#print_options_input_' + elt);
+ if (show)
+ $elements.show();
+ else
+ $elements.hide();
+ });
+ };
+
+ this.show_all_print_options_elements = function() {
+ kivi.SalesPurchase.show_print_options_elements([ 'formname', 'language_id', 'format', 'sendmode', 'media', 'printer_id', 'copies', 'groupitems', 'remove_draft' ], true);
+ };
+
+ // Sending records via email.
+ 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)
+ 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;
+
+ // ckeditor gets de-initialized when removing the children from
+ // the DOM. Therefore we have to manually preserve its content
+ // over the children's relocation.
+
+ var message = $('#email_form_message').val();
+
+ $('#send_email_dialog').children().remove().appendTo('#email_inputs');
+ $('#send_email_dialog').dialog('close');
+
+ $('#email_form_message').val(message);
+
+ kivi.submit_form_with_action('#form', $('#form').data('send-email-action'));
+
+ return true;
+ };
+
+ this.setup_send_email_dialog = function() {
+ kivi.SalesPurchase.show_all_print_options_elements();
+ kivi.SalesPurchase.show_print_options_elements([ 'sendmode', 'media', 'copies', 'remove_draft' ], false);
+
+ $('#print_options').children().remove().appendTo('#email_form_print_options');
+
+ kivi.reinit_widgets();
+
+ var to_focus = $('#email_form_to').val() === '' ? 'to' : 'subject';
+ $('#email_form_' + to_focus).focus();
+ };
+
+ this.finish_send_email_dialog = function() {
+ $('#email_form_print_options').children().remove().appendTo('#print_options');
+ return true;
+ };
+
+ 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(),
+ direct_debit: $('#direct_debit').prop('checked') ? 1 : 0,
+ 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(),
+ cusordnumber: $('#cusordnumber').val(),
+ rowcount: $('#rowcount').val(),
+ quonumber: $('#quonumber').val(),
+ type: $('#type').val(),
+ vc: vc,
+ vc_id: $('#' + vc + '_id').val(),
+ project_id: $('#globalproject_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: data,
+ dialog: {
+ height: 600,
+ title: kivi.t8('Send email'),
+ beforeClose: kivi.SalesPurchase.finish_send_email_dialog
+ }
+ });
+
+ 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 !== 'no_file' ? '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,
+ }
+ });
+ };
});