X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fir.pl;h=6973feedb522ae5b3dd63a4a5a7d60e34707e0da;hb=62726dfdf4f763efa65c25fcfe8658d98649c8a8;hp=554d2fd4f7b26beb00717722422e99f9d5c63833;hpb=9d218dc8b07ff4f9be9589cb3246e50653e2b6e2;p=kivitendo-erp.git diff --git a/bin/mozilla/ir.pl b/bin/mozilla/ir.pl index 554d2fd4f..6973feedb 100644 --- a/bin/mozilla/ir.pl +++ b/bin/mozilla/ir.pl @@ -36,13 +36,13 @@ use SL::IR; use SL::IS; use SL::PE; use SL::DB::Default; +use SL::DB::PurchaseInvoice; use List::Util qw(max sum); +use List::UtilsBy qw(sort_by); 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; @@ -58,7 +58,11 @@ sub add { $main::auth->assert('vendor_invoice_edit'); - return $main::lxdebug->leave_sub() if (load_draft_maybe()); + if (!$::instance_conf->get_allow_new_purchase_invoice) { + $::form->show_generic_error($::locale->text("You do not have the permissions to access this function.")); + } + + $form->{show_details} = $::myconfig{show_form_details}; $form->{title} = $locale->text('Record Vendor Invoice'); @@ -77,6 +81,8 @@ sub edit { $main::auth->assert('vendor_invoice_edit'); + $form->{show_details} = $::myconfig{show_form_details}; + # show history button $form->{javascript} = qq||; #/show hhistory button @@ -101,9 +107,6 @@ sub invoice_links { $form->{vc} = 'vendor'; # create links - $form->{webdav} = $::lx_office_conf{features}->{webdav}; - $form->{jsscript} = 1; - $form->create_links("AP", \%myconfig, "vendor"); #quote all_vendor Bug 133 @@ -117,39 +120,16 @@ sub invoice_links { } } - my ($payment_id, $language_id, $taxzone_id, $currency); - if ($form->{payment_id}) { - $payment_id = $form->{payment_id}; - } - if ($form->{language_id}) { - $language_id = $form->{language_id}; - } - if ($form->{taxzone_id}) { - $taxzone_id = $form->{taxzone_id}; - } - if ($form->{currency}) { - $currency = $form->{currency}; - } + $form->backup_vars(qw(payment_id language_id taxzone_id + currency delivery_term_id intnotes 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; - } - if ($language_id) { - $form->{language_id} = $language_id; - } - if ($taxzone_id) { - $form->{taxzone_id} = $taxzone_id; - } - if ($currency) { - $form->{currency} = $currency; - } + $form->restore_vars(qw(payment_id language_id taxzone_id + currency delivery_term_id intnotes cp_id)); - my @curr = split(/:/, $form->{currencies}); #seems to be missing + my @curr = $form->get_all_currencies(); map { $form->{selectcurrency} .= "