1 namespace('kivi.MassInvoiceCreatePrint', function(ns) {
 
   2   this.checkSalesOrderSelection = function() {
 
   3     if ($("[data-checkall=1]:checked").size() > 0)
 
   5     alert(kivi.t8('No delivery orders have been selected.'));
 
   9   this.checkDeliveryOrderSelection = function() {
 
  10     if ($("[data-checkall=1]:checked").size() > 0)
 
  12     alert(kivi.t8('No delivery orders have been selected.'));
 
  16   this.checkInvoiceSelection = function() {
 
  17     if ($("[data-checkall=1]:checked").size() > 0)
 
  19     alert(kivi.t8('No invoices have been selected.'));
 
  23   this.submitMassCreationForm = function() {
 
  24     if (!kivi.MassInvoiceCreatePrint.checkDeliveryOrderSelection())
 
  27     $('body').addClass('loading');
 
  32   this.createPrintAllInitialize = function() {
 
  34       id: 'create_print_all_dialog',
 
  36         title: kivi.t8('Create and print all invoices')
 
  41   this.createPrintAllStartProcess = function() {
 
  42     $('#cpa_start_process_button,.ui-dialog-titlebar button.ui-dialog-titlebar-close').prop('disabled', 'disabled');
 
  43     $('#cpa_start_process_abort_link').remove();
 
  45     var filter = $('[name^=filter\\.]').serializeArray();
 
  47       action:             'MassInvoiceCreatePrint/create_print_all_start',
 
  48       number_of_invoices: $('#cpa_number_of_invoices').val(),
 
  49       bothsided:          $('#cpa_bothsided').val(),
 
  50       printer_id:         $('#cpa_printer_id').val(),
 
  51       copy_printer_id:    $('#cpa_copy_printer_id').val(),
 
  52       transdate:          $('#transdate').val()
 
  55     $(filter).each(function(index, obj){ data[obj.name] = obj.value; });
 
  57     $.post('controller.pl', data, kivi.eval_json_result);
 
  60   this.createPrintAllFinishProcess = function() {
 
  61     $('#create_print_all_dialog').dialog('close');
 
  62     window.location.href = 'controller.pl?action=MassInvoiceCreatePrint%2flist_invoices&noshow=1';
 
  65   this.massConversionStarted = function() {
 
  66     $('#create_print_all_dialog').data('timerId', setInterval(function() {
 
  67       $.get("controller.pl", {
 
  68         action: 'MassInvoiceCreatePrint/create_print_all_status',
 
  69         job_id: $('#cpa_job_id').val()
 
  70       }, kivi.eval_json_result);
 
  74   this.massConversionFinished = function() {
 
  75     clearInterval($('#create_print_all_dialog').data('timerId'));
 
  76     $('.ui-dialog-titlebar button.ui-dialog-titlebar-close').prop('disabled', '')
 
  79   this.setup = function() {
 
  80     $('#create_button').click(kivi.MassInvoiceCreatePrint.submitMassCreationForm);
 
  81     $('#create_print_all_button').click(kivi.MassInvoiceCreatePrint.createPrintAllInitialize);
 
  84   ns.showMassPrintOptions = function() {
 
  85     $('#printer_options_printer_id').val($('#printer_id').val());
 
  90         title: kivi.t8('Print options'),
 
  99   ns.showMassPrintOptionsOrDownloadDirectly = function() {
 
 100     if (!kivi.MassInvoiceCreatePrint.checkInvoiceSelection())
 
 103     if ($('#print_options_printer_id').length === 0)
 
 104       return kivi.MassInvoiceCreatePrint.massPrint();
 
 105     return kivi.MassInvoiceCreatePrint.showMassPrintOptions();
 
 108   ns.massPrint = function() {
 
 109     $('#print_options').dialog('close');
 
 111     $('#printer_id').val($('#print_options_printer_id').val());
 
 112     $('#action').val('MassInvoiceCreatePrint/print');
 
 114     $('#report_form').submit();
 
 119   this.resetSearchForm = function() {
 
 120     $("#filter_table input").val("");
 
 124 $(kivi.MassInvoiceCreatePrint.setup);