X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Foe.pl;h=3c55ee58f60248b7c6e95be9e63c1c421652b71a;hb=ce3ce404919a3e39c4b966db7b7d02076cd8c7e5;hp=e82e63ae189a7e97ae2669e15b24b0f0b69ebcb5;hpb=1a5270059b710ba69d50a2f3e2e621595ba58bd4;p=kivitendo-erp.git diff --git a/bin/mozilla/oe.pl b/bin/mozilla/oe.pl index e82e63ae1..3c55ee58f 100644 --- a/bin/mozilla/oe.pl +++ b/bin/mozilla/oe.pl @@ -37,8 +37,8 @@ use SL::IR; use SL::IS; use SL::PE; -require "$form->{path}/io.pl"; -require "$form->{path}/arap.pl"; +require "bin/mozilla/io.pl"; +require "bin/mozilla/arap.pl"; 1; @@ -98,7 +98,7 @@ sub add { set_headings("add"); $form->{callback} = - "$form->{script}?action=add&type=$form->{type}&vc=$form->{vc}&login=$form->{login}&path=$form->{path}&password=$form->{password}" + "$form->{script}?action=add&type=$form->{type}&vc=$form->{vc}&login=$form->{login}&password=$form->{password}" unless $form->{callback}; &order_links; @@ -110,24 +110,29 @@ sub add { sub edit { $lxdebug->enter_sub(); + # show history button + $form->{javascript} = qq||; + #/show hhistory button + + $form->{simple_save} = 0; set_headings("edit"); # editing without stuff to edit? try adding it first if ($form->{rowcount}) { - map { $id++ if $form->{"id_$_"} } (1 .. $form->{rowcount}); + map { $id++ if $form->{"multi_id_$_"} } (1 .. $form->{rowcount}); if (!$id) { # reset rowcount undef $form->{rowcount}; &add; + $lxdebug->leave_sub(); return; } - } else { - if (!$form->{id}) { - &add; - return; - } + } elsif (!$form->{id}) { + &add; + $lxdebug->leave_sub(); + return; } if ($form->{print_and_save}) { @@ -162,6 +167,8 @@ sub order_links { # set jscalendar $form->{jscalendar} = $jscalendar; + my $editing = $form->{id}; + OE->retrieve(\%myconfig, \%$form); if ($form->{payment_id}) { @@ -174,6 +181,8 @@ sub order_links { $taxzone_id = $form->{taxzone_id}; } + $salesman_id = $form->{salesman_id} if ($editing); + # if multiple rowcounts (== collective order) then check if the # there were more than one customer (in that case OE::retrieve removes @@ -203,7 +212,7 @@ sub order_links { $intnotes = $form->{intnotes}; # get customer / vendor - if ($form->{type} =~ /(purchase_order|request_quotation|receive_order)/) { + if ($form->{type} =~ /(purchase_order|request_quotation)/) { IR->get_vendor(\%myconfig, \%$form); #quote all_vendor Bug 133 @@ -212,7 +221,7 @@ sub order_links { } } - if ($form->{type} =~ /(sales|ship)_(order|quotation)/) { + if ($form->{type} =~ /sales_(order|quotation)/) { IS->get_customer(\%myconfig, \%$form); #quote all_vendor Bug 133 @@ -231,7 +240,7 @@ sub order_links { if ($taxzone_id) { $form->{taxzone_id} = $taxzone_id; } - $form->{intnotes} = $intnotes; + $form->{intnotes} = $intnotes if $intnotes; ($form->{ $form->{vc} }) = split /--/, $form->{ $form->{vc} }; $form->{"old$form->{vc}"} = qq|$form->{$form->{vc}}--$form->{"$form->{vc}_id"}|; @@ -240,18 +249,11 @@ sub order_links { if (@{ $form->{"all_$form->{vc}"} }) { $form->{ $form->{vc} } = qq|$form->{$form->{vc}}--$form->{"$form->{vc}_id"}|; - map { $form->{"select$form->{vc}"} .= "\n" } (@{ $form->{"all_$form->{vc}"} }); } - # currencies - @curr = split(/:/, $form->{currencies}); - chomp $curr[0]; - $form->{defaultcurrency} = $curr[0]; - $form->{currency} = $form->{defaultcurrency} unless $form->{currency}; - - map { $form->{selectcurrency} .= "\n" } (@{ $form->{all_departments} }); } @@ -270,24 +272,22 @@ sub order_links { # sales staff if (@{ $form->{all_employees} }) { $form->{selectemployee} = ""; - map { $form->{selectemployee} .= "\n" } (@{ $form->{all_employees} }); } # forex $form->{forex} = $form->{exchangerate}; + $form->{salesman_id} = $salesman_id if ($editing); + $lxdebug->leave_sub(); } sub prepare_order { $lxdebug->enter_sub(); - $form->{format} = "pdf" unless ($form->{print_and_save} && $form->{format}); - $form->{media} = "screen"; $form->{formname} = $form->{type} unless $form->{formname}; - map { $form->{$_} =~ s/\"/"/g } - qw(ordnumber quonumber shippingpoint shipvia notes intnotes shiptoname shiptostreet shiptozipcode shiptocity shiptocountry shiptocontact); my $i = 0; foreach $ref (@{ $form->{form_details} }) { $form->{rowcount} = ++$i; @@ -329,8 +329,13 @@ sub prepare_order { sub form_header { $lxdebug->enter_sub(); - $checkedopen = ($form->{closed}) ? "" : "checked"; - $checkedclosed = ($form->{closed}) ? "checked" : ""; + my $checkedclosed = $form->{"closed"} ? "checked" : ""; + my $checkeddelivered = $form->{"delivered"} ? "checked" : ""; + + map { $form->{$_} =~ s/\"/"/g } + qw(ordnumber quonumber shippingpoint shipvia notes intnotes shiptoname + shiptostreet shiptozipcode shiptocity shiptocountry shiptocontact + shiptophone shiptofax shiptodepartment_1 shiptodepartment_2); # use JavaScript Calendar or not $form->{jsscript} = $form->{jscalendar}; @@ -348,12 +353,12 @@ sub form_header { # with JavaScript Calendar $button1 = qq| -
| - . $locale->text('Open') . qq| | -| - . $locale->text('Closed') . qq| | -
---|