X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fcp.pl;h=888bf8a9f5669de2fdec483f375780eeb5c071d7;hb=cff1389b37e5adfde7734718a02290421aa1bf9a;hp=7825ed63940d88198114d7aa765f72a50235b73a;hpb=f7f03503cfc22a15f5497d09dd9215c10c1d39b1;p=kivitendo-erp.git diff --git a/bin/mozilla/cp.pl b/bin/mozilla/cp.pl index 7825ed639..888bf8a9f 100644 --- a/bin/mozilla/cp.pl +++ b/bin/mozilla/cp.pl @@ -72,12 +72,12 @@ sub payment { # für bugfix 1771 (doppelte Leerzeichen werden nicht 'gepostet') $form->{"select$form->{vc}"} = ""; - $form->{selectcustomer} .= "\n" if $form->{vc} eq "customer"; - if ($form->{"all_$form->{vc}"}) { + $form->{"select$form->{vc}"} .= "\n"; # s.o. jb 12.10.2010 $form->{"$form->{vc}_id"} = $form->{"all_$form->{vc}"}->[0]->{id}; - map { $form->{"select$form->{vc}"} .= "\n" } + # hotfix for 2450. TODO remove legacy code and use L + map { $form->{"select$form->{vc}"} .= "\n" } @{ $form->{"all_$form->{vc}"} }; } CP->paymentaccounts(\%myconfig, \%$form); @@ -109,10 +109,9 @@ sub payment { # geben und hier reinparsen, oder besser multibox oder html auslagern? # Antwort: form->currency wird mit oldcurrency oder curr[0] überschrieben # Wofür macht das Sinn? - @curr = split(/:/, $form->{currencies}); - chomp $curr[0]; + @curr = $form->get_all_currencies(); $form->{defaultcurrency} = $form->{currency} = $form->{oldcurrency} = - $curr[0]; + $form->get_default_currency(\%myconfig); # Entsprechend präventiv die Auswahlliste für Währungen # auch mit value= zusammenbauen (s.a. oben bugfix 1771) @@ -132,7 +131,6 @@ sub form_header { $auth->assert('cash'); my ($vc, $arap, $exchangerate); - my ($onload); if ($form->{ $form->{vc} } eq "") { map { $form->{"addr$_"} = "" } (1 .. 4); @@ -140,7 +138,7 @@ sub form_header { # sometimes it happens that values in customer arrive without the signs '--' # but in order to select the right option field we need values with '--' - if ($form->{vc} eq "customer"){ + if ($form->{vc} eq "customer" && $form->{"all_$form->{vc}"}){ my ($customername) = split /--/, $form->{ $form->{vc} }; $form->{ $form->{vc} } = $customername . "--" . $form->{customer_id}; } @@ -150,6 +148,7 @@ sub form_header { # # offen: $form->{ARAP} kann raus? for my $item ($form->{vc}, "account", "currency", $form->{ARAP}) { + $form->{$item} = H($form->{$item}); $form->{"select$item"} =~ s/ selected//; $form->{"select$item"} =~ s/option value="\Q$form->{$item}\E">\Q$form->{$item}\E/option selected value="$form->{$item}">$form->{$item}/; } @@ -167,12 +166,10 @@ sub form_header { $form->header; $arap = lc $form->{ARAP}; - $onload = qq|focus()|; print $::form->parse_html_template('cp/form_header', { is_customer => $form->{vc} eq 'customer', is_receipt => $form->{type} eq 'receipt', - onload => $onload, arap => $arap, vccontent => $vc, }); @@ -467,14 +464,11 @@ sub check_form { $form->error($locale->text('Date missing!')) unless $form->{datepaid}; my $selected_check = 1; for my $i (1 .. $form->{rowcount}) { - if ($form->{"checked_$i"}) { - if ($form->parse_amount(\%myconfig, $form->{"paid_$i"}, 2) <= 0) { # negativen Betrag eingegeben - $form->error($locale->text('Amount has to be greater then zero! Wrong row number: ') . $i); - } - undef($selected_check); - # last; # ich muss doch über alle buchungen laufen, da ich noch - # die freitext-eingabe der werte prüfen will + next unless $form->{"checked_$i"}; + if (abs($form->parse_amount(\%myconfig, $form->{"paid_$i"}, 2)) < 0.01) { + $form->error($locale->text('Row #1: amount has to be different from zero.', $i)); } + undef $selected_check; } $form->error($locale->text('No transaction selected!')) if $selected_check;