X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fpe.pl;h=cae9bfc5db27b7af457fa1086457929c14519825;hb=75e721508b508648ffe2454f10cfe29ba8a359dd;hp=83273491367dc32b5499669ea31bd0d64deca3d2;hpb=4dbb09950c9f5596646537c12d991c99086fe7c1;p=kivitendo-erp.git diff --git a/bin/mozilla/pe.pl b/bin/mozilla/pe.pl index 832734913..cae9bfc5d 100644 --- a/bin/mozilla/pe.pl +++ b/bin/mozilla/pe.pl @@ -32,13 +32,13 @@ # #====================================================================== - use SL::PE; -1; -# end of main +require "bin/mozilla/common.pl"; +1; +# end of main sub add { $lxdebug->enter_sub(); @@ -46,18 +46,21 @@ sub add { $form->{title} = "Add"; # construct callback - $form->{callback} = "$form->{script}?action=add&type=$form->{type}&path=$form->{path}&login=$form->{login}&password=$form->{password}" unless $form->{callback}; + $form->{callback} = + "$form->{script}?action=add&type=$form->{type}&login=$form->{login}&password=$form->{password}" + unless $form->{callback}; + + call_sub("form_$form->{type}_header"); + call_sub("form_$form->{type}_footer"); - &{ "form_$form->{type}_header" }; - &{ "form_$form->{type}_footer" }; - $lxdebug->leave_sub(); } - sub edit { $lxdebug->enter_sub(); - + # show history button + $form->{javascript} = qq||; + #/show hhistory button $form->{title} = "Edit"; if ($form->{type} eq 'project') { @@ -66,48 +69,74 @@ sub edit { if ($form->{type} eq 'partsgroup') { PE->get_partsgroup(\%myconfig, \%$form); } + if ($form->{type} eq 'pricegroup') { + PE->get_pricegroup(\%myconfig, \%$form); + } + call_sub("form_$form->{type}_header"); + call_sub("form_$form->{type}_footer"); - &{ "form_$form->{type}_header" }; - &{ "form_$form->{type}_footer" }; - $lxdebug->leave_sub(); } - sub search { $lxdebug->enter_sub(); if ($form->{type} eq 'project') { - $report = "project_report"; - $sort = 'projectnumber'; + $report = "project_report"; + $sort = 'projectnumber'; $form->{title} = $locale->text('Projects'); $number = qq| - |.$locale->text('Number').qq| - + | . $locale->text('Number') . qq| + | . $cgi->textfield('-name' => 'projectnumber', '-size' => 20) . qq| - |.$locale->text('Description').qq| - + | . $locale->text('Description') . qq| + | . $cgi->textfield('-name' => 'description', '-size' => 60) . qq| + +   + | . + $cgi->radio_group('-name' => 'active', '-default' => 'active', + '-values' => ['active', 'inactive', 'both'], + '-labels' => { 'active' => ' ' . $locale->text("Active"), + 'inactive' => ' ' . $locale->text("Inactive"), + 'both' => ' ' . $locale->text("Both") }) + . qq| + |; } if ($form->{type} eq 'partsgroup') { - $report = "partsgroup_report"; - $sort = 'partsgroup'; + $report = "partsgroup_report"; + $sort = 'partsgroup'; $form->{title} = $locale->text('Groups'); - + $number = qq| - |.$locale->text('Group').qq| + | . $locale->text('Group') . qq| |; } + # for pricesgroups + if ($form->{type} eq 'pricegroup') { + $report = "pricegroup_report"; + $sort = 'pricegroup'; + $form->{title} = $locale->text('Pricegroup'); + + $number = qq| + + | . $locale->text('Pricegroup') . qq| + + +|; + + } + $form->header; print qq| @@ -129,8 +158,10 @@ sub search { $number -  |.$locale->text('All').qq| -  |.$locale->text('Orphaned').qq| +  | + . $locale->text('All') . qq| +  | + . $locale->text('Orphaned') . qq| @@ -142,12 +173,12 @@ sub search { -{path}> {login}> {password}>
- + @@ -157,17 +188,18 @@ sub search { $lxdebug->leave_sub(); } - - sub project_report { $lxdebug->enter_sub(); - map { $form->{$_} = $form->unescape($form->{$_}) } (projectnumber, description); + map { $form->{$_} = $form->unescape($form->{$_}) } + (projectnumber, description); PE->projects(\%myconfig, \%$form); - $callback = "$form->{script}?action=project_report&type=$form->{type}&path=$form->{path}&login=$form->{login}&password=$form->{password}&status=$form->{status}"; + $callback = + "$form->{script}?action=project_report&type=$form->{type}&login=$form->{login}&password=$form->{password}&status=$form->{status}&active=" . + E($form->{active}); $href = $callback; - + if ($form->{status} eq 'all') { $option = $locale->text('All'); } @@ -175,26 +207,37 @@ sub project_report { $option .= $locale->text('Orphaned'); } if ($form->{projectnumber}) { - $href .= "&projectnumber=".$form->escape($form->{projectnumber}); + $href .= "&projectnumber=" . $form->escape($form->{projectnumber}); $callback .= "&projectnumber=$form->{projectnumber}"; - $option .= "\n
".$locale->text('Project')." : $form->{projectnumber}"; + $option .= + "\n
" . $locale->text('Project') . " : $form->{projectnumber}"; } if ($form->{description}) { - $href .= "&description=".$form->escape($form->{description}); + $href .= "&description=" . $form->escape($form->{description}); $callback .= "&description=$form->{description}"; - $option .= "\n
".$locale->text('Description')." : $form->{description}"; + $option .= + "\n
" . $locale->text('Description') . " : $form->{description}"; } - - @column_index = $form->sort_columns(qw(projectnumber description)); + @column_index = qw(projectnumber description); - $column_header{projectnumber} = qq||.$locale->text('Number').qq||; - $column_header{description} = qq||.$locale->text('Description').qq||; + push(@column_index, "active") if ("both" eq $form->{active}); + + $column_header{projectnumber} = + qq|| + . $locale->text('Number') + . qq||; + $column_header{description} = + qq|| + . $locale->text('Description') + . qq||; + $column_header{active} = + qq|| . $locale->text('Active') . qq||; $form->{title} = $locale->text('Projects'); $form->header; - + print qq| @@ -213,7 +256,7 @@ sub project_report { |; map { print "$column_header{$_}\n" } @column_index; - + print qq| |; @@ -223,25 +266,31 @@ sub project_report { # escape callback for href $callback = $form->escape($callback); - + foreach $ref (@{ $form->{project_list} }) { - - $i++; $i %= 2; - + + $i++; + $i %= 2; + print qq| |; - - $column_data{projectnumber} = qq|{script}?action=edit&type=$form->{type}&status=$form->{status}&id=$ref->{id}&path=$form->{path}&login=$form->{login}&password=$form->{password}&callback=$callback>$ref->{projectnumber}|; + + $column_data{projectnumber} = + qq|{script}?action=edit&type=$form->{type}&status=$form->{status}&id=$ref->{id}&login=$form->{login}&password=$form->{password}&callback=$callback>$ref->{projectnumber}|; $column_data{description} = qq|$ref->{description} |; - + $column_data{active} = + qq|| . + ($ref->{active} ? $locale->text("Yes") : $locale->text("No")) . + qq||; + map { print "$column_data{$_}\n" } @column_index; - + print " "; } - + print qq| @@ -258,20 +307,14 @@ sub project_report { {type}> -{path}> {login}> {password}> -|; - - if ($form->{menubar}) { - require "$form->{path}/menu.pl"; - &menubar; - } + - print qq| - + |; @@ -279,23 +322,49 @@ sub project_report { $lxdebug->leave_sub(); } - sub form_project_header { $lxdebug->enter_sub(); $form->{title} = $locale->text("$form->{title} Project"); - -# $locale->text('Add Project') -# $locale->text('Edit Project') + + # $locale->text('Add Project') + # $locale->text('Edit Project') $form->{description} =~ s/\"/"/g; + my $projectnumber = + $cgi->textfield('-name' => 'projectnumber', '-size' => 20, + '-default' => $form->{projectnumber}); + + my $description; if (($rows = $form->numtextrows($form->{description}, 60)) > 1) { - $description = qq||; + $description = + $cgi->textarea('-name' => 'description', '-rows' => $rows, '-cols' => 60, + '-style' => 'width: 100%', '-wrap' => 'soft', + '-default' => $form->{description}); } else { - $description = qq||; + $description = + $cgi->textfield('-name' => 'description', '-size' => 60, + '-default' => $form->{description}); + } + + my $active; + if ($form->{id}) { + $active = + qq| + +   + | . + $cgi->radio_group('-name' => 'active', + '-values' => [1, 0], + '-default' => $form->{active} * 1, + '-labels' => { 1 => $locale->text("Active"), + 0 => $locale->text("Inactive") }) + . qq| + +|; } - + $form->header; print qq| @@ -315,13 +384,14 @@ sub form_project_header { - - + + - + + $active
|.$locale->text('Number').qq|| . $locale->text('Number') . qq|$projectnumber
|.$locale->text('Description').qq|| . $locale->text('Description') . qq| $description
@@ -334,7 +404,6 @@ sub form_project_header { $lxdebug->leave_sub(); } - sub form_project_footer { $lxdebug->enter_sub(); @@ -342,21 +411,28 @@ sub form_project_footer { -{path}> {login}> {password}> -
+
|; if ($form->{id} && $form->{orphaned}) { print qq| -|; +|; } - if ($form->{menubar}) { - require "$form->{path}/menu.pl"; - &menubar; + if ($form->{id}) { + # button for saving history + print qq| + {id} + . qq|); name=history id=history value=| + . $locale->text('history') + . qq|>|; + # /button for saving history } print qq| @@ -369,7 +445,6 @@ sub form_project_footer { $lxdebug->leave_sub(); } - sub save { $lxdebug->enter_sub(); @@ -384,28 +459,48 @@ sub save { $form->redirect($locale->text('Group saved!')); } + # choice pricegroup and save + if ($form->{type} eq 'pricegroup') { + $form->isblank("pricegroup", $locale->text('Pricegroup missing!')); + PE->save_pricegroup(\%myconfig, \%$form); + $form->redirect($locale->text('Pricegroup saved!')); + } + # saving the history + if(!exists $form->{addition} && $form->{id} ne "") { + $form->{snumbers} = qq|projectnumber_| . $form->{projectnumber}; + $form->{addition} = "SAVED"; + $form->save_history($form->dbconnect(\%myconfig)); + } + # /saving the history + $lxdebug->leave_sub(); } - sub delete { $lxdebug->enter_sub(); PE->delete_tuple(\%myconfig, \%$form); - - if ($form->{type} eq 'project') { + + if ($form->{type} eq 'project') { $form->redirect($locale->text('Project deleted!')); } if ($form->{type} eq 'partsgroup') { $form->redirect($locale->text('Group deleted!')); } - + if ($form->{type} eq 'pricegroup') { + $form->redirect($locale->text('Pricegroup deleted!')); + } + # saving the history + if(!exists $form->{addition}) { + $form->{snumbers} = qq|projectnumber_| . $form->{projectnumber}; + $form->{addition} = "DELETED"; + $form->save_history($form->dbconnect(\%myconfig)); + } + # /saving the history $lxdebug->leave_sub(); } - -sub continue { &{ $form->{nextsub} } }; - +sub continue { call_sub($form->{"nextsub"}); } sub partsgroup_report { $lxdebug->enter_sub(); @@ -413,8 +508,9 @@ sub partsgroup_report { map { $form->{$_} = $form->unescape($form->{$_}) } (partsgroup); PE->partsgroups(\%myconfig, \%$form); - $callback = "$form->{script}?action=partsgroup_report&type=$form->{type}&path=$form->{path}&login=$form->{login}&password=$form->{password}&status=$form->{status}"; - + $callback = + "$form->{script}?action=partsgroup_report&type=$form->{type}&login=$form->{login}&password=$form->{password}&status=$form->{status}"; + if ($form->{status} eq 'all') { $option = $locale->text('All'); } @@ -423,18 +519,18 @@ sub partsgroup_report { } if ($form->{partsgroup}) { $callback .= "&partsgroup=$form->{partsgroup}"; - $option .= "\n
".$locale->text('Group')." : $form->{partsgroup}"; + $option .= "\n
" . $locale->text('Group') . " : $form->{partsgroup}"; } - @column_index = $form->sort_columns(qw(partsgroup)); - $column_header{partsgroup} = qq||.$locale->text('Group').qq||; + $column_header{partsgroup} = + qq|| . $locale->text('Group') . qq||; $form->{title} = $locale->text('Groups'); $form->header; - + print qq| @@ -453,7 +549,7 @@ sub partsgroup_report { |; map { print "$column_header{$_}\n" } @column_index; - + print qq| |; @@ -463,23 +559,25 @@ sub partsgroup_report { # escape callback for href $callback = $form->escape($callback); - + foreach $ref (@{ $form->{item_list} }) { - - $i++; $i %= 2; - + + $i++; + $i %= 2; + print qq| |; - - $column_data{partsgroup} = qq|
{script}?action=edit&type=$form->{type}&status=$form->{status}&id=$ref->{id}&path=$form->{path}&login=$form->{login}&password=$form->{password}&callback=$callback>$ref->{partsgroup}|; + + $column_data{partsgroup} = + qq|{script}?action=edit&type=$form->{type}&status=$form->{status}&id=$ref->{id}&login=$form->{login}&password=$form->{password}&callback=$callback>$ref->{partsgroup}|; map { print "$column_data{$_}\n" } @column_index; - + print " "; } - + print qq| @@ -496,18 +594,12 @@ sub partsgroup_report { {type}> -{path}> {login}> {password}> -|; - - if ($form->{menubar}) { - require "$form->{path}/menu.pl"; - &menubar; - } + - print qq| @@ -517,18 +609,16 @@ sub partsgroup_report { $lxdebug->leave_sub(); } - sub form_partsgroup_header { $lxdebug->enter_sub(); $form->{title} = $locale->text("$form->{title} Group"); - -# $locale->text('Add Group') -# $locale->text('Edit Group') + + # $locale->text('Add Group') + # $locale->text('Edit Group') $form->{partsgroup} =~ s/\"/"/g; - $form->header; print qq| @@ -548,7 +638,7 @@ sub form_partsgroup_header { - + @@ -564,7 +654,6 @@ sub form_partsgroup_header { $lxdebug->leave_sub(); } - sub form_partsgroup_footer { $lxdebug->enter_sub(); @@ -572,25 +661,142 @@ sub form_partsgroup_footer { -{path}> {login}> {password}> -
+
|; if ($form->{id} && $form->{orphaned}) { print qq| -|; +|; } - if ($form->{menubar}) { - require "$form->{path}/menu.pl"; - &menubar; +# button for saving history +print qq| + {id} + . qq|); name=history id=history value=| + . $locale->text('history') + . qq|>|; +# /button for saving history + print qq| + + + + +|; + + $lxdebug->leave_sub(); +} + +################################# +# get pricesgroups and build up html-code +# +sub pricegroup_report { + $lxdebug->enter_sub(); + + map { $form->{$_} = $form->unescape($form->{$_}) } (pricegroup); + PE->pricegroups(\%myconfig, \%$form); + + $callback = + "$form->{script}?action=pricegroup_report&type=$form->{type}&login=$form->{login}&password=$form->{password}&status=$form->{status}"; + + if ($form->{status} eq 'all') { + $option = $locale->text('All'); } + if ($form->{status} eq 'orphaned') { + $option .= $locale->text('Orphaned'); + } + if ($form->{pricegroup}) { + $callback .= "&pricegroup=$form->{pricegroup}"; + $option .= + "\n
" . $locale->text('Pricegroup') . " : $form->{pricegroup}"; + } + + @column_index = $form->sort_columns(qw(pricegroup)); + + $column_header{pricegroup} = + qq||; + + $form->{title} = $locale->text('Pricegroup'); + + $form->header; print qq| - + + +
|.$locale->text('Group').qq|| . $locale->text('Group') . qq|
| + . $locale->text('Pricegroup') + . qq|
+ + + + + + + + + + + + + +
$form->{title}
$option
+ + +|; + + map { print "$column_header{$_}\n" } @column_index; + + print qq| + +|; + + # escape callback + $form->{callback} = $callback; + + # escape callback for href + $callback = $form->escape($callback); + + foreach $ref (@{ $form->{item_list} }) { + + $i++; + $i %= 2; + + print qq| + +|; + $column_data{pricegroup} = + qq||; + + map { print "$column_data{$_}\n" } @column_index; + + print " + +"; + } + + print qq| +
{script}?action=edit&type=$form->{type}&status=$form->{status}&id=$ref->{id}&login=$form->{login}&password=$form->{password}&callback=$callback>$ref->{pricegroup}
+

+ +
+
{script}> + + + +{type}> + +{login}> +{password}> + + + +
@@ -599,4 +805,89 @@ sub form_partsgroup_footer { $lxdebug->leave_sub(); } +####################### +#build up pricegroup_header +# +sub form_pricegroup_header { + $lxdebug->enter_sub(); + + # $locale->text('Add Pricegroup') + # $locale->text('Edit Pricegroup') + + $form->{title} = $locale->text("$form->{title} Pricegroup"); + + $form->{pricegroup} =~ s/\"/"/g; + $form->header; + + print qq| + + +
{script}> + +{id}> +{type}> + + + + + + + + + + + + +
$form->{title}
+ + + + + +
| . $locale->text('Preisgruppe') . qq|
+

+|; + + $lxdebug->leave_sub(); +} +###################### +#build up pricegroup_footer +# +sub form_pricegroup_footer { + $lxdebug->enter_sub(); + + print qq| + + + +{login}> +{password}> + +
+|; + + if ($form->{id} && $form->{orphaned}) { + print qq| +|; + } + +# button for saving history +print qq| + {id} + . qq|); name=history id=history value=| + . $locale->text('history') + . qq|>|; +# /button for saving history + print qq| +
+ + + +|; + + $lxdebug->leave_sub(); +}