X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fic.pl;h=a30378123a01bf5370e87ad96aa4e526b420d582;hb=c69b3d4d4fef109ecc8627eb79481ed717ef76f2;hp=3df2e51ed60d680415ea750787642b39997b9196;hpb=4dbb09950c9f5596646537c12d991c99086fe7c1;p=kivitendo-erp.git
diff --git a/bin/mozilla/ic.pl b/bin/mozilla/ic.pl
index 3df2e51ed..a30378123 100644
--- a/bin/mozilla/ic.pl
+++ b/bin/mozilla/ic.pl
@@ -31,23 +31,59 @@
#
#======================================================================
+use POSIX qw(strftime);
+use List::Util qw(first max);
+use List::MoreUtils qw(any);
+use SL::AM;
+use SL::CVar;
use SL::IC;
+use SL::ReportGenerator;
-require "$form->{path}/io.pl";
+#use SL::PE;
+
+use strict;
+#use warnings;
+
+# global imports
+our ($form, $locale, %myconfig, $lxdebug, $auth);
+
+require "bin/mozilla/io.pl";
+require "bin/mozilla/invoice_io.pl";
+require "bin/mozilla/common.pl";
+require "bin/mozilla/reportgenerator.pl";
1;
+
+# Parserhappy(R):
+# type=submit $locale->text('Add Part')
+# type=submit $locale->text('Add Service')
+# type=submit $locale->text('Add Assembly')
+# type=submit $locale->text('Edit Part')
+# type=submit $locale->text('Edit Service')
+# type=submit $locale->text('Edit Assembly')
+# $locale->text('Parts')
+# $locale->text('Services')
+# $locale->text('Inventory quantity must be zero before you can set this part obsolete!')
+# $locale->text('Inventory quantity must be zero before you can set this assembly obsolete!')
+# $locale->text('Part Number missing!')
+# $locale->text('Service Number missing!')
+# $locale->text('Assembly Number missing!')
+# $locale->text('ea');
+
# end of main
sub add {
$lxdebug->enter_sub();
- $form->{title} = $locale->text('Add ' . ucfirst $form->{item});
+ $auth->assert('part_service_assembly_edit');
- $form->{callback} = "$form->{script}?action=add&item=$form->{item}&path=$form->{path}&login=$form->{login}&password=$form->{password}" unless $form->{callback};
-
- $form->{unit} = ($form->{item} eq 'service') ? $locale->text('hr') : $locale->text('ea');
+ my $title = 'Add ' . ucfirst $form->{item};
+ $form->{title} = $locale->text($title);
+ $form->{callback} = "$form->{script}?action=add&item=$form->{item}" unless $form->{callback};
+ $form->{unit_changeable} = 1;
+ IC->get_pricegroups(\%myconfig, \%$form);
&link_part;
&display_form;
@@ -57,695 +93,448 @@ sub add {
sub search {
$lxdebug->enter_sub();
- $form->{title} = (ucfirst $form->{searchitems})."s";
- $form->{title} = $locale->text($form->{title});
-
- # switch for backward sorting
- $form->{revers} = 0;
- # memory for which table was sort at last time
- $form->{lastsort} = "";
- # counter for added entries to top100
- $form->{ndxs_counter} = 0;
-
-# $locale->text('Parts')
-# $locale->text('Services')
-
- # use JavaScript Calendar or not
- $form->{jsscript} = $jscalendar;
- $jsscript = "";
- if ($form->{jsscript})
- {
- # with JavaScript Calendar
- $button1 = qq|
-
|
- text('button').qq|> |
- |;
- $button2 = qq|
- |
- text('button').qq|> |
- |;
- #write Trigger
- $jsscript = Form->write_trigger(\%myconfig,"2","transdatefrom","BL","trigger1","transdateto","BL","trigger2");
- }
- else
- {
- # without JavaScript Calendar
- $button1 = qq|
- | |;
- $button2 = qq|
- | |;
- }
-
- unless ($form->{searchitems} eq 'service') {
-
- $onhand = qq|
- |.$locale->text('On Hand').qq|
- |.$locale->text('Short').qq|
-|;
-
- $makemodel = qq|
-
- |.$locale->text('Make').qq| |
- |
- |.$locale->text('Model').qq| |
- |
-
-|;
-
- $serialnumber = qq|
- |.$locale->text('Serial Number').qq| |
- |
-|;
-
- $l_serialnumber = qq|
- |.$locale->text('Serial Number').qq| |
-|;
-
- }
-
- if ($form->{searchitems} eq 'assembly') {
+ $auth->assert('part_service_assembly_edit');
- $form->{title} = $locale->text('Assemblies');
+ $form->{revers} = 0; # switch for backward sorting
+ $form->{lastsort} = ""; # memory for which table was sort at last time
+ $form->{ndxs_counter} = 0; # counter for added entries to top100
- $toplevel = qq|
-
- |
-
- |.$locale->text('Top Level').qq|
- |.$locale->text('Individual Items').qq|
- |
-
-|;
+ my %is_xyz = map { +"is_$_" => ($form->{searchitems} eq $_) } qw(part service assembly);
- $bought = qq|
-
- |
-
-
-
-
-
- |
- |
- |.$locale->text('From').qq| |
- $button1
- |.$locale->text('To').qq| |
- $button2
-
-
- |
-
-|;
+ $form->{title} = (ucfirst $form->{searchitems}) . "s";
+ $form->{title} = $locale->text($form->{title});
+ $form->{title} = $locale->text('Assemblies') if ($is_xyz{is_assembly});
- } else {
+ $form->{jsscript} = 1;
- $bought = qq|
-
- |
-
-
-
-
-
- |
- |
-
-
-
- |.$locale->text('From').qq| |
- $button1
- |.$locale->text('To').qq| |
- $button2
-
-
- |
-
-
- |
-
-|;
- }
+ $form->{CUSTOM_VARIABLES} = CVar->get_configs('module' => 'IC');
+ ($form->{CUSTOM_VARIABLES_FILTER_CODE},
+ $form->{CUSTOM_VARIABLES_INCLUSION_CODE}) = CVar->render_search_options('variables' => $form->{CUSTOM_VARIABLES},
+ 'include_prefix' => 'l_',
+ 'include_value' => 'Y');
$form->header;
- print qq|
-
-
-
+ print $form->parse_html_template('ic/search_update_prices', { PRICE_ROWS => $pricegroups });
-
-