X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fio.pl;h=c1bc770326eda2b03e7ddc9802c8fdd1ffcd4c16;hb=03d3d025ea4c8bea085fc7cdf1fe7be0b513eb63;hp=99b61f31e72eaf37c4abb5dc80018fe86c92e08c;hpb=c6b2257945060625bcb86fa7e2efd27c737480ff;p=kivitendo-erp.git diff --git a/bin/mozilla/io.pl b/bin/mozilla/io.pl index 99b61f31e..c1bc77032 100644 --- a/bin/mozilla/io.pl +++ b/bin/mozilla/io.pl @@ -47,6 +47,7 @@ use SL::CT; use SL::IC; use SL::IO; +use SL::DB::Default; use SL::DB::Language; use SL::DB::Printer; use SL::Helper::Flash; @@ -102,7 +103,7 @@ use Data::Dumper; sub _check_io_auth { $main::auth->assert('part_service_assembly_edit | vendor_invoice_edit | sales_order_edit | invoice_edit |' . 'request_quotation_edit | sales_quotation_edit | purchase_order_edit | ' . - 'purchase_delivery_order_edit | sales_delivery_order_edit'); + 'purchase_delivery_order_edit | sales_delivery_order_edit | part_service_assembly_details'); } ######################################## @@ -668,11 +669,7 @@ sub check_form { my $count = 0; # remove any makes or model rows - if ($form->{item} eq 'part') { - map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } - qw(listprice sellprice lastcost weight rop); - - } elsif ($form->{item} eq 'assembly') { + if ($form->{item} eq 'assembly') { # fuer assemblies auskommentiert. seiteneffekte? ;-) wird die woanders benoetigt? #$form->{sellprice} = 0; @@ -705,10 +702,7 @@ sub check_form { $form->redo_rows(\@flds, \@a, $count, $form->{assembly_rows}); $form->{assembly_rows} = $count; - } elsif ($form->{item} eq 'service') { - map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(listprice sellprice lastcost); - - } else { + } elsif ($form->{item} !~ m{^(?:part|service)$}) { remove_emptied_rows(1); $form->{creditremaining} -= &invoicetotal; @@ -950,7 +944,7 @@ sub quotation { map({ $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, $form->{"${_}_${i}"}) if ($form->{"${_}_${i}"}) } - qw(ship qty sellprice listprice basefactor discount)); + qw(ship qty sellprice listprice basefactor discount lastcost)); } &prepare_order; @@ -995,7 +989,6 @@ sub edit_e_mail { my $attachment_filename = $form->generate_attachment_filename(); my $subject = $form->{subject} || $form->generate_email_subject(); - $::request->{layout}->focus($form->{"email"} ? "#subject" : "#email"); $form->header; my (@dont_hide_key_list, %dont_hide_key, @hidden_keys); @@ -1224,6 +1217,10 @@ sub print_form { _check_io_auth(); + my $defaults = SL::DB::Default->get; + $form->error($::locale->text('No print templates have been created for this client yet. Please do so in the client configuration.')) if !$defaults->templates; + $form->{templates} = $defaults->templates; + my ($old_form) = @_; my $inv = "inv"; @@ -1368,6 +1365,7 @@ sub print_form { my $language_saved = $form->{language_id}; my $payment_id_saved = $form->{payment_id}; + my $delivery_term_id_saved = $form->{delivery_term_id}; my $salesman_id_saved = $form->{salesman_id}; my $cp_id_saved = $form->{cp_id}; my $taxzone_id_saved = $form->{taxzone_id}; @@ -1377,6 +1375,7 @@ sub print_form { $form->{language_id} = $language_saved; $form->{payment_id} = $payment_id_saved; + $form->{delivery_term_id} = $delivery_term_id_saved; $form->{taxzone_id} = $taxzone_id_saved; $form->{currency} = $currency_saved; @@ -1438,8 +1437,8 @@ sub print_form { if ($shipto) { if ( $form->{formname} eq 'purchase_order' || $form->{formname} eq 'request_quotation') { - $form->{shiptoname} = $myconfig{company}; - $form->{shiptostreet} = $myconfig{address}; + $form->{shiptoname} = $defaults->company; + $form->{shiptostreet} = $defaults->address; } else { map { $form->{"shipto$_"} = $form->{$_} } @a; } @@ -1447,8 +1446,6 @@ sub print_form { $form->{notes} =~ s/^\s+//g; - $form->{templates} = "$myconfig{templates}"; - delete $form->{printer_command}; $form->{language} = $form->get_template_language(\%myconfig); @@ -1528,7 +1525,7 @@ sub print_form { push @template_files, "$form->{formname}.$extension"; push @template_files, "default.$extension"; @template_files = uniq @template_files; - $form->{IN} = first { -f "$myconfig{templates}/$_" } @template_files; + $form->{IN} = first { -f ($defaults->templates . "/$_") } @template_files; if (!defined $form->{IN}) { $::form->error($::locale->text('Cannot find matching template for this print request. Please contact your template maintainer. I tried these: #1.', join ', ', map { "'$_'"} @template_files));