X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fio.pl;h=bd248030db783ba519368aa44bfb356513e8b158;hb=055a6bf2aa1a2ce48d02ea57ed066a813f5c9434;hp=7643f14f145928290a17b597959e3aa26e206ae8;hpb=9c83f827e1a1669a9dbfc57c5e71e34f5831ea92;p=kivitendo-erp.git diff --git a/bin/mozilla/io.pl b/bin/mozilla/io.pl index 7643f14f1..bd248030d 100644 --- a/bin/mozilla/io.pl +++ b/bin/mozilla/io.pl @@ -33,7 +33,12 @@ # ####################################################################### +use SL::CT; use SL::IC; +use CGI::Ajax; +use CGI; + +require "$form->{path}/common.pl"; # any custom scripts for this one if (-f "$form->{path}/custom_io.pl") { @@ -85,6 +90,7 @@ use Data::Dumper; sub display_row { $lxdebug->enter_sub(); my $numrows = shift; + if ($lizenzen && $form->{vc} eq "customer") { if ($form->{type} =~ /sales_order/) { @column_index = (runningnumber, partnumber, description, ship, qty); @@ -192,9 +198,20 @@ sub display_row { . qq||; ############## ENDE Neueintrag ################## + $myconfig{"show_form_details"} = 1 + unless (defined($myconfig{"show_form_details"})); + $form->{"show_details"} = $myconfig{"show_form_details"} + unless (defined($form->{"show_details"})); + $form->{"show_details"} = $form->{"show_details"} ? 1 : 0; + my $show_details_new = 1 - $form->{"show_details"}; + my $show_details_checked = $form->{"show_details"} ? "checked" : ""; + print qq| + + +
|; @@ -433,9 +450,13 @@ sub display_row { # Eintrag fuer Version 2.2.0 geaendert # # neue Optik im Rechnungsformular # ######################################## + + my $row_style_attr = + 'style="display:none;"' if (!$form->{"show_details"}); + # print second row print qq| - + |; $column_data{partnumber} = @@ -557,7 +578,8 @@ sub select_item { qq||; $column_data{onhand} = qq||; - + $column_data{unit} = + qq||; # list items with radio button on a form $form->header; @@ -615,7 +637,8 @@ sub select_item { qq||; - + $column_data{unit} = + qq||; $j++; $j %= 2; print qq| @@ -1165,6 +1188,13 @@ sub order { \%myconfig, $form->{currency}, $form->{transdate}, $buysell ))); + for $i (1 .. $form->{rowcount}) { + map({ $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, + $form->{"${_}_${i}"}) + if ($form->{"${_}_${i}"}) } + qw(ship qty sellprice listprice basefactor)); + } + &prepare_order; &display_form; @@ -1218,12 +1248,23 @@ sub quotation { \%myconfig, $form->{currency}, $form->{transdate}, $buysell ))); + for $i (1 .. $form->{rowcount}) { + map({ $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, + $form->{"${_}_${i}"}) + if ($form->{"${_}_${i}"}) } + qw(ship qty sellprice listprice basefactor)); + } + &prepare_order; &display_form; $lxdebug->leave_sub(); } +sub request_for_quotation { + quotation(); +} + sub e_mail { $lxdebug->enter_sub(); if ($form->{second_run}) { @@ -1241,6 +1282,11 @@ sub e_mail { $form->{email} = $form->{shiptoemail} if $form->{shiptoemail}; } + if ($form->{"cp_id"} && !$form->{"email"}) { + CT->get_contact(\%myconfig, $form); + $form->{"email"} = $form->{"cp_email"}; + } + $name = $form->{ $form->{vc} }; $name =~ s/--.*//g; $title = $locale->text('E-mail') . " $name"; @@ -1342,7 +1388,16 @@ sub send_email { sub print_options { $lxdebug->enter_sub(); $form->{sendmode} = "attachment"; - $form->{copies} = 3 unless $form->{copies}; + + $form->{"format"} = + $form->{"format"} ? $form->{"format"} : + $myconfig{"template_format"} ? $myconfig{"template_format"} : + "pdf"; + + $form->{"copies"} = + $form->{"copies"} ? $form->{"copies"} : + $myconfig{"copies"} ? $myconfig{"copies"} : + 3; $form->{PD}{ $form->{formname} } = "selected"; $form->{DF}{ $form->{format} } = "selected"; @@ -1453,7 +1508,7 @@ sub print_options { $format .= qq||; - if ($latex) { + if ($latex_templates) { $format .= qq||; } @@ -1749,9 +1804,14 @@ sub print_form { $form->{"cc"} = $saved_cc if ($saved_cc); $form->{"bcc"} = $saved_bcc if ($saved_bcc); - # format payment dates - for $i (1 .. $form->{paidaccounts} - 1) { - $form->{"datepaid_$i"} = $locale->date(\%myconfig, $form->{"datepaid_$i"}); + my ($language_tc, $output_numberformat, $output_dateformat, $output_longdates); + if ($form->{"language_id"}) { + ($language_tc, $output_numberformat, $output_dateformat, $output_longdates) = + AM->get_language_details(\%myconfig, $form, $form->{language_id}); + } else { + $output_dateformat = $myconfig{"dateformat"}; + $output_numberformat = $myconfig{"numberformat"}; + $output_longdates = 1; } ($form->{employee}) = split /--/, $form->{employee}; @@ -1764,17 +1824,6 @@ sub print_form { IS->invoice_details(\%myconfig, \%$form, $locale); } - # format global dates - map { $form->{$_} = $locale->date(\%myconfig, $form->{$_}, 1) } - ("${inv}date", "${due}date", "shippingdate", "deliverydate"); - - # format item dates - for my $field (qw(transdate_oe deliverydate_oe)) { - map { - $form->{$field}[$_] = $locale->date(\%myconfig, $form->{$field}[$_], 1); - } 0 .. $#{ $form->{$field} }; - } - if ($form->{shipto_id}) { $form->get_shipto(\%myconfig); } @@ -1796,24 +1845,59 @@ sub print_form { || $form->{formname} eq 'request_quotation') { $form->{shiptoname} = $myconfig{company}; $form->{shiptostreet} = $myconfig{address}; - } else { + } else { map { $form->{"shipto$_"} = $form->{$_} } @a; } } $form->{notes} =~ s/^\s+//g; - map({ $form->{$_} =~ s/\\n/\n/g; } qw(company address)); - $form->{templates} = "$myconfig{templates}"; $form->{language} = $form->get_template_language(\%myconfig); $form->{printer_code} = $form->get_printer_code(\%myconfig); if ($form->{language} ne "") { + map({ $form->{"unit"}->[$_] = + AM->translate_units($form, $form->{"language"}, + $form->{"unit"}->[$_], $form->{"qty"}->[$_]); } + (0..scalar(@{$form->{"unit"}}) - 1)); $form->{language} = "_" . $form->{language}; } + # Format dates. + format_dates($output_dateformat, $output_longdates, + qw(invdate orddate quodate pldate duedate reqdate transdate + shippingdate deliverydate validitydate paymentdate + datepaid transdate_oe deliverydate_oe + employee_startdate employee_enddate + ), + grep({ /^datepaid_\d+$/ || + /^transdate_oe_\d+$/ || + /^deliverydate_oe_\d+$/ || + /^reqdate_\d+$/ || + /^deliverydate_\d+$/ || + /^transdate_\d+$/ + } keys(%{$form}))); + + reformat_numbers($output_numberformat, 2, + qw(invtotal ordtotal quototal subtotal linetotal + listprice sellprice netprice discount + tax taxbase), + grep({ /^linetotal_\d+$/ || + /^listprice_\d+$/ || + /^sellprice_\d+$/ || + /^netprice_\d+$/ || + /^taxbase_\d+$/ || + /^discount_\d+$/ || + /^tax_\d+$/ + } keys(%{$form}))); + + reformat_numbers($output_numberformat, undef, + qw(qty), + grep({ /^qty_\d+$/ + } keys(%{$form}))); + if ($form->{printer_code} ne "") { $form->{printer_code} = "_" . $form->{printer_code}; } @@ -2012,6 +2096,16 @@ sub ship_to { + + + + + + + + + + @@ -2062,7 +2156,7 @@ sub ship_to { # delete shipto map { delete $form->{$_} } - qw(shiptoname shiptostreet shiptozipcode shiptocity shiptocountry shiptocontact shiptophone shiptofax shiptoemail header); + qw(shiptoname shiptostreet shiptozipcode shiptocity shiptocountry shiptocontact shiptophone shiptofax shiptoemail shiptodepartment_1 shiptodepartment_2 header); $form->{title} = $title; foreach $key (keys %$form) { @@ -2134,11 +2228,26 @@ sub relink_accounts { } $form->{"taxaccounts"} = ""; - for ($i = 1; $i <= $form->{"rowcount"}; $i++) { + for (my $i = 1; $i <= $form->{"rowcount"}; $i++) { if ($form->{"id_$i"}) { - IC->retrieve_taxaccounts(\%myconfig, $form, $form->{"id_$i"}, $i, 1); + IC->retrieve_accounts(\%myconfig, $form, $form->{"id_$i"}, $i, 1); } } $lxdebug->leave_sub(); } + + +sub set_duedate { + $lxdebug->enter_sub(); + + $form->get_duedate(\%myconfig); + + my $q = new CGI; + $result = "$form->{duedate}"; + print $q->header(); + print $result; + $lxdebug->leave_sub(); + +} +
|; if ($lizenzen && $form->{type} eq "invoice" && $form->{vc} eq "customer") { @@ -546,7 +567,7 @@ sub set_pricegroup { sub select_item { $lxdebug->enter_sub(); - @column_index = qw(ndx partnumber description onhand sellprice); + @column_index = qw(ndx partnumber description onhand unit sellprice); $column_data{ndx} = qq| | . $locale->text('Price') . qq|| . $locale->text('Qty') . qq|| . $locale->text('Unit') . qq|{onhand}>| . $form->format_amount(\%myconfig, $ref->{onhand}, '', " ") . qq|$ref->{unit}$form->{name}
| . $locale->text('Department') . qq|$form->{department_1}
 $form->{department_2}
| . $locale->text('Street') . qq| $form->{street}