X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fio.pl;h=6fc89608e494c49e2e2ebb5d1618a20a8ace596b;hb=644c68bae03521cec693800af0a19b9ab4e0ed9c;hp=adb78ed49992699e6c68c2f871a13c43274898b7;hpb=69ad8bec12ae8351fad7712b329e41081ce3689f;p=kivitendo-erp.git diff --git a/bin/mozilla/io.pl b/bin/mozilla/io.pl index adb78ed49..6fc89608e 100644 --- a/bin/mozilla/io.pl +++ b/bin/mozilla/io.pl @@ -355,11 +355,10 @@ sub display_row { } $column_data{"unit"} = "" . - ($qty_readonly ? " " : AM->unit_select_html($is_part ? $dimension_units : $is_assigned ? $service_units : $all_units, "unit_$i", $this_unit, - $is_assigned ? $form->{"unit_$i"} : undef)) + $is_assigned ? $form->{"unit_$i"} : undef) . ""; # build in drop down list for pricesgroups @@ -1292,7 +1291,7 @@ sub request_for_quotation { quotation(); } -sub e_mail { +sub edit_e_mail { $lxdebug->enter_sub(); if ($form->{second_run}) { $form->{print_and_post} = 0; @@ -1475,227 +1474,109 @@ sub send_email { $lxdebug->leave_sub(); } +# generate the printing options displayed at the bottom of oe and is forms. +# this function will attempt to guess what type of form is displayed, and will generate according options +# +# about the coding: +# this version builds the arrays of options pretty directly. if you have trouble understanding how, +# the opthash function builds hashrefs which are then pieced together for the template arrays. +# unneeded options are "undef"ed out, and then grepped out. +# +# the inline options is untested, but intended to be used later in metatemplating sub print_options { - $lxdebug->enter_sub(); - $form->{sendmode} = "attachment"; + $lxdebug->enter_sub() and my ($inline) = @_; - $form->{"format"} = - $form->{"format"} ? $form->{"format"} : - $myconfig{"template_format"} ? $myconfig{"template_format"} : - "pdf"; + # names 3 parameters and returns a hashref, for use in templates + sub opthash { +{ value => shift, selected => shift, oname => shift } } + (@FORMNAME, @FORMNAME, @LANGUAGE_ID, @FORMAT, @SENDMODE, @MEDIA, @PRINTER_ID, @SELECTS) = (); - $form->{"copies"} = - $form->{"copies"} ? $form->{"copies"} : - $myconfig{"copies"} ? $myconfig{"copies"} : - 3; - - $form->{"media"} = - $form->{"media"} ? $form->{"media"} : - $myconfig{"default_media"} ? $myconfig{"default_media"} : - "screen"; - - $form->{"printer_id"} = - defined($form->{"printer_id"}) ? $form->{"printer_id"} : - $myconfig{"default_printer_id"} ? $myconfig{"default_printer_id"} : - ""; + # note: "||"-selection is only correct for values where "0" is _not_ a correct entry + $form->{sendmode} = "attachment"; + $form->{format} = $form->{format} || $myconfig{template_format} || "pdf"; + $form->{copies} = $form->{copies} || $myconfig{copies} || 3; + $form->{media} = $form->{media} || $myconfig{default_media} || "screen"; + $form->{printer_id} = $form->{printer_id} || $myconfig{default_printer_id} || ""; $form->{PD}{ $form->{formname} } = "selected"; $form->{DF}{ $form->{format} } = "selected"; $form->{OP}{ $form->{media} } = "selected"; - $form->{SM}{ $form->{sendmode} } = "selected"; - - if ($form->{type} eq 'purchase_order') { - $type = qq| - |; - } - - if ($latex_templates) { - $format .= qq||; - } - - $format .= qq||; - - if ($latex_templates) { - $format .= qq||; - } - - if ($opendocument_templates) { - $format .= qq||; - } - $format .= qq||; - - if (scalar(keys (%{ $form->{languages} })) !=0) { - $language_select = qq| - |; - foreach $item (@{ $form->{printers} }) { - $selected = $item->{"id"} == $form->{"printer_id"} ? "selected" : ""; - $printer_select .= qq||; - } - } - - - - print qq| - - - - - -
- - - |; - if (scalar(keys (%{ $form->{languages} })) !=0) { - print qq| - |; - } - print qq| - - |; - if (scalar(keys (%{ $form->{printers} })) !=0) { - print qq| - -|; - } - - if (scalar(keys (%{ $form->{printers} })) !=0 && $latex_templates && $form->{media} ne 'email') { - print qq| - -|; - } - - $form->{groupitems} = "checked" if $form->{groupitems}; - - print qq| - - - -
$type${language_select}$format$media$printer_select| . $locale->text('Copies') . qq| - {copies}>| . $locale->text('Group Items') . qq|{groupitems}>
-
- - -|; - - if ($form->{printed} =~ /$form->{formname}/) { - print qq| - -|; - } - - if ($form->{emailed} =~ /$form->{formname}/) { - print qq| - -|; - } - - if ($form->{queued} =~ /$form->{formname}/) { - print qq| - -|; - } - - print qq| - -
\|| . $locale->text('Printed') . qq|\|\|| . $locale->text('E-mailed') . qq|\|\|| . $locale->text('Queued') . qq|\|
-
-|; - - $lxdebug->leave_sub(); } sub print { @@ -1858,7 +1739,7 @@ sub print_form { # assign number $form->{what_done} = $form->{formname}; - if (!$form->{"${inv}number"} && !$form->{preview}) { + if (!$form->{"${inv}number"} && !$form->{preview} && !$form->{id}) { $form->{"${inv}number"} = $form->update_defaults(\%myconfig, $numberfld); if ($form->{media} ne 'email') { @@ -1889,6 +1770,7 @@ sub print_form { $language_saved = $form->{language_id}; $payment_id_saved = $form->{payment_id}; + $salesman_id_saved = $form->{salesman_id}; &{"$form->{vc}_details"}(); @@ -1918,6 +1800,8 @@ sub print_form { IS->invoice_details(\%myconfig, \%$form, $locale); } + $form->get_salesman(\%myconfig, $salesman_id_saved); + if ($form->{shipto_id}) { $form->get_shipto(\%myconfig); }