X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fis.pl;h=81ba52141c6994b70ead13dbb1d7bf0a3bcbda8c;hb=e9e216f571e214e1d19c43a2b47f04525f4aaddf;hp=10dc43ef1574bb0c4ef6777295c3773c87f85b87;hpb=d629acd82a27e980899a044ca8b0f4becc8e94bb;p=kivitendo-erp.git diff --git a/bin/mozilla/is.pl b/bin/mozilla/is.pl index 10dc43ef1..81ba52141 100644 --- a/bin/mozilla/is.pl +++ b/bin/mozilla/is.pl @@ -167,19 +167,11 @@ sub invoice_links { $form->{shipto_id} = $shipto_id; } - # currencies - @curr = split(/:/, $form->{currencies}); - chomp $curr[0]; - $form->{defaultcurrency} = $curr[0]; - - map { $form->{selectcurrency} .= "\n" } @curr; - $form->{oldcustomer} = "$form->{customer}--$form->{customer_id}"; if (@{ $form->{all_customer} }) { - $form->{customer} = "$form->{customer}--$form->{customer_id}"; - map { $form->{selectcustomer} .= "\n" } - (@{ $form->{all_customer} }); + $form->{customer} = "$form->{customer}--$form->{customer_id}"; + $form->{selectcustomer} = "$form->{customer}--$form->{customer_id}"; } # departments @@ -195,13 +187,6 @@ sub invoice_links { $form->{employee} = "$form->{employee}--$form->{employee_id}"; - # sales staff - if ($form->{all_employees}) { - $form->{selectemployee} = ""; - map { $form->{selectemployee} .= "\n" } - (@{ $form->{all_employees} }); - } - # forex $form->{forex} = $form->{exchangerate}; $exchangerate = ($form->{exchangerate}) ? $form->{exchangerate} : 1; @@ -344,7 +329,9 @@ sub form_header { "all" => 0, "old_id" => \@old_project_ids }, "employees" => "ALL_SALESMEN", - "taxzones" => "ALL_TAXZONES"); + "taxzones" => "ALL_TAXZONES", + "currencies" => "ALL_CURRENCIES", + "customers" => "ALL_CUSTOMERS"); my %labels; my @values = (undef); @@ -357,6 +344,40 @@ sub form_header { NTI($cgi->popup_menu('-name' => 'cp_id', '-values' => \@values, '-labels' => \%labels, '-default' => $form->{"cp_id"})); + %labels = (); + @values = (); + foreach my $item (@{ $form->{"ALL_SALESMEN"} }) { + push(@values, $item->{"id"}); + $labels{$item->{"id"}} = $item->{"name"}; + } + + my $employees = qq| + + | . $locale->text('Employee') . qq| + | . + NTI($cgi->popup_menu('-name' => 'employee', '-default' => $form->{"employee_id"}, + '-values' => \@values, '-labels' => \%labels)) . qq| + + |; + + + %labels = (); + @values = (); + foreach my $item (@{ $form->{"ALL_CUSTOMERS"} }) { + push(@values, $item->{name}.qq|--|.$item->{"id"}); + $labels{$item->{"id"}} = $item->{name}.qq|--|.$item->{"id"}; + } + + my $customers = qq| + | . $locale->text('Customer') . qq| + | . + (($myconfig{vclimit} <= scalar(@values)) + ? qq|| + : (NTI($cgi->popup_menu('-name' => 'customer', '-default' => $form->{oldcustomer}, + '-onChange' => 'document.getElementById(\'update_button\').click();', + '-values' => \@values, '-labels' => \%labels)))) . qq| + |; + %labels = (); @values = (""); foreach my $item (@{ $form->{"ALL_SHIPTO"} }) { @@ -372,6 +393,23 @@ sub form_header { '-labels' => \%labels, '-default' => $form->{"shipto_id"})) . qq||; + %labels = (); + @values = (); + foreach my $item (@{ $form->{"ALL_CURRENCIES"} }) { + push(@values, $item); + $labels{$item} = $item; + } + + $form->{currency} = $form->{defaultcurrency} unless $form->{currency}; + my $currencies = qq| + + | . $locale->text('Currency') . qq| + | . + NTI($cgi->popup_menu('-name' => 'currency', '-default' => $form->{"currency"}, + '-values' => \@values, '-labels' => \%labels)) . qq| + + |; + %labels = (); @values = (""); foreach my $item (@{ $form->{"ALL_PROJECTS"} }) { @@ -472,14 +510,6 @@ sub form_header { |; - $customer = - ($form->{selectcustomer}) - ? qq|\n| - : qq||; - $department = qq| | . $locale->text('Department') . qq| @@ -642,11 +672,11 @@ print qq| - - + $customers - + + @@ -676,10 +706,7 @@ print qq| $taxzone $department - - - - + $currencies $exchangerate @@ -692,7 +719,11 @@ print qq| - |; + + + + + |; # #
| . $locale->text('Customer') . qq|$customer | . $locale->text('Contact Person') . qq| $contact
| . $locale->text('Currency') . qq|
| . $locale->text('Ship via') . qq|
| . $locale->text('Transaction description') . qq|| . $cgi->textfield("-name" => "transaction_description", "-size" => 35, "-value" => $form->{transaction_description}) . qq|
# @@ -717,12 +748,7 @@ print qq|
- - - - - - + $employees $salesman |; if ($form->{type} eq "credit_note") { @@ -823,13 +849,13 @@ sub form_footer { qq||; $intnotes = qq||; - - $form->{taxincluded} = ($form->{taxincluded}) ? "checked" : ""; + + $form->{taxincluded} = ($form->{taxincluded} ? "checked" : ""); $taxincluded = ""; if ($form->{taxaccounts}) { $taxincluded = qq| - {taxincluded}> | + {taxincluded}> | . $locale->text('Tax Included') . qq|

|; } @@ -1186,10 +1212,19 @@ sub update { $form->{print_and_post} = 0; } + + if($form->{taxincluded}) { + $taxincluded = "checked"; + } $form->{update} = 1; &check_name(customer); + if(!$form->{taxincluded}) { + $form->{taxincluded} = $taxincluded; + } + + $form->{exchangerate} = $exchangerate if ( $form->{forex} = ( @@ -1377,6 +1412,9 @@ sub post { $form->isblank("invdate", $locale->text('Invoice Date missing!')); $form->isblank("customer", $locale->text('Customer missing!')); + $form->{invnumber} =~ s/^\s*//g; + $form->{invnumber} =~ s/\s*$//g; + # if oldcustomer ne customer redo form if (&check_name(customer)) { &update; @@ -1487,21 +1525,25 @@ sub storno { } map({ my $key = $_; delete($form->{$key}) - unless (grep({ $key eq $_ } qw(login password id type))); } + unless (grep({ $key eq $_ } qw(login password id stylesheet type))); } keys(%{ $form })); - &invoice_links; - &prepare_invoice; + invoice_links(); + prepare_invoice(); relink_accounts(); + # Payments must not be recorded for the new storno invoice. + $form->{paidaccounts} = 0; + map { my $key = $_; delete $form->{$key} if grep { $key =~ /^$_/ } qw(datepaid_ source_ memo_ paid_ exchangerate_ AR_paid_) } keys %{ $form }; + $form->{storno_id} = $form->{id}; $form->{storno} = 1; $form->{id} = ""; $form->{invnumber} = "Storno zu " . $form->{invnumber}; + $form->{rowcount}++; - &post(); + post(); $lxdebug->leave_sub(); - } sub preview {
| . $locale->text('Employee') . qq|