X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=sidebyside;f=bin%2Fmozilla%2Fir.pl;h=042fd4be945df47ccccd764c7fbd124e78ab4eb7;hb=3289bcb28d541db31ff1facc7c3c64258f3d1851;hp=afae8a06b09eed05d5723b2a642ef353972f4596;hpb=1877165d12c6c20a245a473b52700cd66617d0a3;p=kivitendo-erp.git diff --git a/bin/mozilla/ir.pl b/bin/mozilla/ir.pl index afae8a06b..042fd4be9 100644 --- a/bin/mozilla/ir.pl +++ b/bin/mozilla/ir.pl @@ -31,18 +31,33 @@ # #====================================================================== +use SL::FU; use SL::IR; +use SL::IS; use SL::PE; +use List::Util qw(max sum); -require "$form->{path}/io.pl"; -require "$form->{path}/arap.pl"; +require "bin/mozilla/io.pl"; +require "bin/mozilla/invoice_io.pl"; +require "bin/mozilla/arap.pl"; +require "bin/mozilla/common.pl"; +require "bin/mozilla/drafts.pl"; + +use strict; 1; # end of main sub add { - $lxdebug->enter_sub(); + $main::lxdebug->enter_sub(); + + my $form = $main::form; + my $locale = $main::locale; + + $main::auth->assert('vendor_invoice_edit'); + + return $main::lxdebug->leave_sub() if (load_draft_maybe()); $form->{title} = $locale->text('Add Vendor Invoice'); @@ -50,11 +65,20 @@ sub add { &prepare_invoice; &display_form; - $lxdebug->leave_sub(); + $main::lxdebug->leave_sub(); } sub edit { - $lxdebug->enter_sub(); + $main::lxdebug->enter_sub(); + + my $form = $main::form; + my $locale = $main::locale; + + $main::auth->assert('vendor_invoice_edit'); + + # show history button + $form->{javascript} = qq||; + #/show hhistory button $form->{title} = $locale->text('Edit Vendor Invoice'); @@ -62,22 +86,27 @@ sub edit { &prepare_invoice; &display_form; - $lxdebug->leave_sub(); + $main::lxdebug->leave_sub(); } sub invoice_links { - $lxdebug->enter_sub(); + $main::lxdebug->enter_sub(); - # create links - $form->{webdav} = $webdav; + my $form = $main::form; + my %myconfig = %main::myconfig; + + $main::auth->assert('vendor_invoice_edit'); - # set jscalendar - $form->{jscalendar} = $jscalendar; + $form->{vc} = 'vendor'; + + # create links + $form->{webdav} = $main::webdav; + $form->{jsscript} = 1; $form->create_links("AP", \%myconfig, "vendor"); #quote all_vendor Bug 133 - foreach $ref (@{ $form->{all_vendor} }) { + foreach my $ref (@{ $form->{all_vendor} }) { $ref->{name} = $form->quote($ref->{name}); } @@ -86,6 +115,8 @@ sub invoice_links { $form->{vendor_id} = $form->{all_vendor}->[0]->{id}; } } + + my ($payment_id, $language_id, $taxzone_id); if ($form->{payment_id}) { $payment_id = $form->{payment_id}; } @@ -96,11 +127,11 @@ sub invoice_links { $taxzone_id = $form->{taxzone_id}; } - $cp_id = $form->{cp_id}; + my $cp_id = $form->{cp_id}; IR->get_vendor(\%myconfig, \%$form); IR->retrieve_invoice(\%myconfig, \%$form); $form->{cp_id} = $cp_id; - + if ($payment_id) { $form->{payment_id} = $payment_id; } @@ -111,20 +142,15 @@ sub invoice_links { $form->{taxzone_id} = $taxzone_id; } - # currencies - @curr = split(/:/, $form->{currencies}); - chomp $curr[0]; - $form->{defaultcurrency} = $curr[0]; - + my @curr = split(/:/, $form->{currencies}); #seems to be missing map { $form->{selectcurrency} .= ""; - } else { - $form->{selecttaxzone} .= - ""; - } - - } - } else { - $form->{selecttaxzone} =~ s/ selected//g; - if ($form->{taxzone_id} ne "") { - $form->{selecttaxzone} =~ s/value=$form->{taxzone_id}/value=$form->{taxzone_id} selected/; - } + $form->{"select$item"} =~ s/option>\Q$form->{$item}\E/option selected>$form->{$item}/; } - $taxzone = qq| - - | . $locale->text('Steuersatz') . qq| - - - |; - - - - $vendor = - ($form->{selectvendor}) - ? qq|\n| - : qq||; - - $contact = - ($form->{selectcontact}) - ? qq|\n| - : qq||; - - $department = qq| - - | . $locale->text('Department') . qq| - - - - -| if $form->{selectdepartment}; - - $n = ($form->{creditremaining} =~ /-/) ? "0" : "1"; - - # use JavaScript Calendar or not - $form->{jsscript} = $form->{jscalendar}; - $jsscript = ""; - if ($form->{jsscript}) { - - # with JavaScript Calendar - $button1 = qq| - {invdate}> - text('button') . qq|> - |; - $button2 = qq| - {duedate}> - text('button') . qq|> - |; - - #write Trigger - $jsscript = - Form->write_trigger(\%myconfig, "2", "invdate", "BL", "trigger1", - "duedate", "BL", "trigger2"); - } else { - - # without JavaScript Calendar - $button1 = - qq|{invdate}>|; - $button2 = - qq|{duedate}>|; - } + $TMPL_VAR{is_type_credit_note} = $form->{type} eq "credit_note"; + $TMPL_VAR{is_format_html} = $form->{format} eq 'html'; + $TMPL_VAR{dateformat} = $myconfig{dateformat}; + $TMPL_VAR{numberformat} = $myconfig{numberformat}; - $form->{"javascript"} .= qq|