namespace('kivi.SalesPurchase', function(ns) {
+ this.longdescription_dialog_size_percentage = 0;
+
this.edit_longdescription = function(row) {
var $element = $('#longdescription_' + row);
};
this.edit_longdescription_with_params = function(params) {
+ var dialog_width = 800;
+ var dialog_height = 500;
+ var textarea_width = 750;
+ var textarea_height = 220;
+ if (this.longdescription_dialog_size_percentage != 0) {
+ dialog_width = Math.ceil(window.innerWidth * this.longdescription_dialog_size_percentage/100);
+ dialog_height = Math.ceil(window.innerHeight * this.longdescription_dialog_size_percentage/100);
+ textarea_width = Math.ceil(dialog_width * 95/100);
+ textarea_height = dialog_height - 220;
+ if (textarea_height <= 0) textarea_height = 220;
+ }
+
var $container = $('#popup_edit_longdescription_input_container');
- var $edit = $('<textarea id="popup_edit_longdescription_input" class="texteditor-in-dialog" wrap="soft" style="width: 750px; height: 220px;"></textarea>');
+ var $edit = $('<textarea id="popup_edit_longdescription_input" class="texteditor-in-dialog texteditor-space-for-toolbar" wrap="soft" style="width: ' + textarea_width + 'px; height: ' + textarea_height + 'px;"></textarea>');
$container.children().remove();
$container.append($edit);
$edit.val(params.default_longdescription);
- kivi.init_text_editor($edit);
-
$('#popup_edit_longdescription_runningnumber').html(params.runningnumber);
$('#popup_edit_longdescription_partnumber').html(params.partnumber);
id: 'edit_longdescription_dialog',
dialog: {
title: kivi.t8('Enter longdescription'),
+ width: dialog_width,
+ height: dialog_height,
open: function() { kivi.focus_ckeditor_when_ready('#popup_edit_longdescription_input'); },
close: function() { $('#popup_edit_longdescription_input_container').children().remove(); }
}
$('#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');
};
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;
$('#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();
};
return true;
};
- this.show_email_dialog = function(send_action) {
+ this.show_email_dialog = function(send_action, vc, vc_id_selector) {
$('#form').data('send-email-action', send_action || 'send_sales_purchase_email');
+ vc = vc || $('#vc').val();
+ vc_id_selector = vc_id_selector || '#' + vc + '_id';
+ var vc_id = $(vc_id_selector).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,
+ 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: {
- 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'),
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();
this.print_record = function() {
$('#print_dialog').dialog('close');
- kivi.submit_form_with_action('#form', $('#form').data('print-action'));
+ 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) {