X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fap.pl;h=4531e99a917bb5102c679f746e529d10692ed618;hb=3b9c2119792ae678e9368a0141d7f8646fd6ef42;hp=dddf6c515dc061039aa9c7e0a7c353fb53e1cba2;hpb=9fe004908828ea3844303b0da3dd893caaf82357;p=kivitendo-erp.git diff --git a/bin/mozilla/ap.pl b/bin/mozilla/ap.pl index dddf6c515..4531e99a9 100644 --- a/bin/mozilla/ap.pl +++ b/bin/mozilla/ap.pl @@ -97,7 +97,7 @@ sub add { AP->get_transdate(\%myconfig, $form); $form->{initial_transdate} = $form->{transdate}; - &create_links; + create_links(dont_save => 1); $form->{transdate} = $form->{initial_transdate}; &display_form; @@ -113,7 +113,7 @@ sub edit { $form->{title} = "Edit"; - &create_links; + create_links(); &display_form; $main::lxdebug->leave_sub(); @@ -135,18 +135,23 @@ sub display_form { sub create_links { $main::lxdebug->enter_sub(); + my %params = @_; + my $form = $main::form; my %myconfig = %main::myconfig; $main::auth->assert('general_ledger'); $form->create_links("AP", \%myconfig, "vendor"); - my $taxincluded = $form->{taxincluded}; - my $duedate = $form->{duedate}; + my %saved; + if (!$params{dont_save}) { + %saved = map { ($_ => $form->{$_}) } qw(direct_debit taxincluded); + $saved{duedate} = $form->{duedate} if $form->{duedate}; + } IR->get_vendor(\%myconfig, \%$form); - $form->{taxincluded} = $taxincluded; - $form->{duedate} = $duedate if $duedate; + + $form->{$_} = $saved{$_} for keys %saved; $form->{oldvendor} = "$form->{vendor}--$form->{vendor_id}"; $form->{rowcount} = 1; @@ -193,7 +198,7 @@ sub form_header { $main::auth->assert('general_ledger'); $form->{title_} = $form->{title}; - $form->{title} = $locale->text($form->{title} .' Accounts Payables Transaction'); + $form->{title} = $form->{title} eq 'Add' ? $locale->text('Add Accounts Payables Transaction') : $locale->text('Edit Accounts Payables Transaction'); # type=submit $locale->text('Add Accounts Payables Transaction') # type=submit $locale->text('Edit Accounts Payables Transaction') @@ -291,8 +296,6 @@ sub form_header { $taxcharts{$item->{id}} = $item; } - $form->{jsscript} = 1; - my $follow_up_vc = $form->{vendor}; $follow_up_vc =~ s/--.*?//; my $follow_up_trans_info = "$form->{invnumber} ($follow_up_vc)"; @@ -616,6 +619,9 @@ sub post { my $closedto = $form->datetonum($form->{closedto}, \%myconfig); my $transdate = $form->datetonum($form->{transdate}, \%myconfig); + + $form->error($locale->text('Cannot post transaction above the maximum future booking date!')) + if ($form->date_max_future($form->{"transdate"}, \%myconfig)); $form->error($locale->text('Cannot post transaction for a closed period!')) if ($form->date_closed($form->{"transdate"}, \%myconfig)); my $zero_amount_posting = 1; @@ -799,15 +805,12 @@ sub search { $form->all_vc(\%myconfig, "vendor", "AP"); $form->{title} = $locale->text('AP Transactions'); - $::request->{layout}->focus('#vendor'); - $form->{jsscript} = 1; $form->get_lists("projects" => { "key" => "ALL_PROJECTS", "all" => 1 }, "departments" => "ALL_DEPARTMENTS", "vendors" => "ALL_VC"); # constants and subs for template - $form->{jsscript} = 1; $form->{vc_keys} = sub { "$_[0]->{name}--$_[0]->{id}" }; $form->header;