X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fpe.pl;h=532dcfac5baf69ceae50091a3e9862ce86f45b71;hb=b02735f55360e5a4e02dca40458b48cf057ecd7b;hp=201e96b225e356bcf944418044b47f569dffdd1c;hpb=ee072e4f077213bf6f8792ca8f0a1afebbb6282f;p=kivitendo-erp.git diff --git a/bin/mozilla/pe.pl b/bin/mozilla/pe.pl index 201e96b22..532dcfac5 100644 --- a/bin/mozilla/pe.pl +++ b/bin/mozilla/pe.pl @@ -27,81 +27,99 @@ # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. #====================================================================== # -# project administration -# partsgroup administration +# partsgroup, pricegroup administration # #====================================================================== use SL::PE; +require "bin/mozilla/common.pl"; + +use strict; + 1; # end of main sub add { - $lxdebug->enter_sub(); + $main::lxdebug->enter_sub(); + + $main::auth->assert('config'); + + my $form = $main::form; $form->{title} = "Add"; # construct callback $form->{callback} = - "$form->{script}?action=add&type=$form->{type}&path=$form->{path}&login=$form->{login}&password=$form->{password}" + "$form->{script}?action=add&type=$form->{type}" unless $form->{callback}; - &{"form_$form->{type}_header"}; - &{"form_$form->{type}_footer"}; + call_sub("form_$form->{type}_header"); + call_sub("form_$form->{type}_footer"); - $lxdebug->leave_sub(); + $main::lxdebug->leave_sub(); } sub edit { - $lxdebug->enter_sub(); + $main::lxdebug->enter_sub(); + + $main::auth->assert('config'); + my $form = $main::form; + my %myconfig = %main::myconfig; + + # show history button + $form->{javascript} = qq||; + #/show hhistory button $form->{title} = "Edit"; - if ($form->{type} eq 'project') { - PE->get_project(\%myconfig, \%$form); - } 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(); + $main::lxdebug->leave_sub(); } sub search { - $lxdebug->enter_sub(); + $main::lxdebug->enter_sub(); - if ($form->{type} eq 'project') { - $report = "project_report"; - $sort = 'projectnumber'; - $form->{title} = $locale->text('Projects'); + $main::auth->assert('config'); - $number = qq| - - | . $locale->text('Number') . qq| - - - - | . $locale->text('Description') . qq| - - -|; + my $form = $main::form; + my $locale = $main::locale; - } + my ($report, $sort, $number); if ($form->{type} eq '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| + + |; } @@ -125,14 +143,11 @@ sub search { $number - - - - + + + +
 | - . $locale->text('All') . qq| -  | - . $locale->text('Orphaned') - . qq|
 | . $locale->text('All') . qq| +  | . $locale->text('Orphaned') . qq|
@@ -143,10 +158,6 @@ sub search { -{path}> -{login}> -{password}> -
@@ -156,51 +167,103 @@ sub search { |; - $lxdebug->leave_sub(); + $main::lxdebug->leave_sub(); } -sub project_report { - $lxdebug->enter_sub(); +sub save { + $main::lxdebug->enter_sub(); + + $main::auth->assert('config'); + + my $form = $main::form; + my %myconfig = %main::myconfig; + my $locale = $main::locale; + + if ($form->{type} eq 'partsgroup') { + $form->isblank("partsgroup", $locale->text('Group missing!')); + PE->save_partsgroup(\%myconfig, \%$form); + $form->redirect($locale->text('Group saved!')); + } - map { $form->{$_} = $form->unescape($form->{$_}) } - (projectnumber, description); - PE->projects(\%myconfig, \%$form); + # 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; + } + # /saving the history - $callback = - "$form->{script}?action=project_report&type=$form->{type}&path=$form->{path}&login=$form->{login}&password=$form->{password}&status=$form->{status}"; - $href = $callback; + $main::lxdebug->leave_sub(); +} +sub delete { + $main::lxdebug->enter_sub(); + + $main::auth->assert('config'); + + my $form = $main::form; + my %myconfig = %main::myconfig; + my $locale = $main::locale; + + PE->delete_tuple(\%myconfig, \%$form); + + 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; + } + # /saving the history + $main::lxdebug->leave_sub(); +} + +sub continue { call_sub($main::form->{"nextsub"}); } + +sub partsgroup_report { + $main::lxdebug->enter_sub(); + + $main::auth->assert('config'); + + my $form = $main::form; + my %myconfig = %main::myconfig; + my $locale = $main::locale; + + map { $form->{$_} = $form->unescape($form->{$_}) } qw(partsgroup); + PE->partsgroups(\%myconfig, \%$form); + + my $callback = + "$form->{script}?action=partsgroup_report&type=$form->{type}&status=$form->{status}"; + + my ($option); if ($form->{status} eq 'all') { $option = $locale->text('All'); } if ($form->{status} eq 'orphaned') { $option .= $locale->text('Orphaned'); } - if ($form->{projectnumber}) { - $href .= "&projectnumber=" . $form->escape($form->{projectnumber}); - $callback .= "&projectnumber=$form->{projectnumber}"; - $option .= - "\n
" . $locale->text('Project') . " : $form->{projectnumber}"; - } - if ($form->{description}) { - $href .= "&description=" . $form->escape($form->{description}); - $callback .= "&description=$form->{description}"; - $option .= - "\n
" . $locale->text('Description') . " : $form->{description}"; + if ($form->{partsgroup}) { + $callback .= "&partsgroup=$form->{partsgroup}"; + $option .= "\n
" . $locale->text('Group') . " : $form->{partsgroup}"; } - @column_index = $form->sort_columns(qw(projectnumber description)); - - $column_header{projectnumber} = - qq|| - . $locale->text('Number') - . qq||; - $column_header{description} = - qq|| - . $locale->text('Description') - . qq||; + my @column_index = $form->sort_columns(qw(partsgroup)); + my %column_header; + $column_header{partsgroup} = + qq|| . $locale->text('Group') . qq||; - $form->{title} = $locale->text('Projects'); + $form->{title} = $locale->text('Groups'); $form->header; @@ -218,7 +281,7 @@ sub project_report { - + |; map { print "$column_header{$_}\n" } @column_index; @@ -228,12 +291,13 @@ sub project_report { |; # escape callback - $form->{callback} = $callback .= "&sort=$form->{sort}"; + $form->{callback} = $callback; # escape callback for href $callback = $form->escape($callback); - foreach $ref (@{ $form->{project_list} }) { + my ($i, %column_data); + foreach my $ref (@{ $form->{item_list} }) { $i++; $i %= 2; @@ -242,10 +306,8 @@ sub project_report { |; - $column_data{projectnumber} = - qq||; - $column_data{description} = qq||; - + $column_data{partsgroup} = + qq||; map { print "$column_data{$_}\n" } @column_index; print " @@ -269,45 +331,32 @@ sub project_report { {type}> -{path}> -{login}> -{password}> - |; - - if ($form->{menubar}) { - require "$form->{path}/menu.pl"; - &menubar; - } + . $locale->text('Add') . qq|"> - print qq| |; - $lxdebug->leave_sub(); + $main::lxdebug->leave_sub(); } -sub form_project_header { - $lxdebug->enter_sub(); +sub form_partsgroup_header { + $main::lxdebug->enter_sub(); - $form->{title} = $locale->text("$form->{title} Project"); + $main::auth->assert('config'); - # $locale->text('Add Project') - # $locale->text('Edit Project') + my $form = $main::form; + my $locale = $main::locale; - $form->{description} =~ s/\"/"/g; + $form->{title} = $locale->text("$form->{title} Group"); - if (($rows = $form->numtextrows($form->{description}, 60)) > 1) { - $description = - qq||; - } else { - $description = - qq||; - } + # $locale->text('Add Group') + # $locale->text('Edit Group') + + $form->{partsgroup} =~ s/\"/"/g; $form->header; @@ -317,7 +366,7 @@ sub form_project_header { {script}> {id}> - +{type}>
{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}$ref->{description} {script}?action=edit&type=$form->{type}&status=$form->{status}&id=$ref->{id}&callback=$callback>$ref->{partsgroup}
@@ -326,15 +375,11 @@ sub form_project_header { @@ -344,20 +389,21 @@ sub form_project_header {
- - - - - - - - - +
| . $locale->text('Number') . qq|
| . $locale->text('Description') . qq|$description
+ + + +
| . $locale->text('Group') . qq|
|; - $lxdebug->leave_sub(); + $main::lxdebug->leave_sub(); } -sub form_project_footer { - $lxdebug->enter_sub(); +sub form_partsgroup_footer { + $main::lxdebug->enter_sub(); + + $main::auth->assert('config'); + + my $form = $main::form; + my $locale = $main::locale; print qq| -{path}> -{login}> -{password}> -
|; @@ -368,11 +414,14 @@ sub form_project_footer { . $locale->text('Delete') . 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| @@ -380,69 +429,48 @@ sub form_project_footer { |; - $lxdebug->leave_sub(); + $main::lxdebug->leave_sub(); } -sub save { - $lxdebug->enter_sub(); - - if ($form->{type} eq 'project') { - $form->isblank("projectnumber", $locale->text('Project Number missing!')); - PE->save_project(\%myconfig, \%$form); - $form->redirect($locale->text('Project saved!')); - } - if ($form->{type} eq 'partsgroup') { - $form->isblank("partsgroup", $locale->text('Group missing!')); - PE->save_partsgroup(\%myconfig, \%$form); - $form->redirect($locale->text('Group saved!')); - } - - $lxdebug->leave_sub(); -} - -sub delete { - $lxdebug->enter_sub(); - - PE->delete_tuple(\%myconfig, \%$form); - - if ($form->{type} eq 'project') { - $form->redirect($locale->text('Project deleted!')); - } - if ($form->{type} eq 'partsgroup') { - $form->redirect($locale->text('Group deleted!')); - } - - $lxdebug->leave_sub(); -} +################################# +# get pricesgroups and build up html-code +# +sub pricegroup_report { + $main::lxdebug->enter_sub(); -sub continue { &{ $form->{nextsub} } } + $main::auth->assert('config'); -sub partsgroup_report { - $lxdebug->enter_sub(); + my $form = $main::form; + my %myconfig = %main::myconfig; + my $locale = $main::locale; - map { $form->{$_} = $form->unescape($form->{$_}) } (partsgroup); - PE->partsgroups(\%myconfig, \%$form); + map { $form->{$_} = $form->unescape($form->{$_}) } qw(pricegroup); + PE->pricegroups(\%myconfig, \%$form); - $callback = - "$form->{script}?action=partsgroup_report&type=$form->{type}&path=$form->{path}&login=$form->{login}&password=$form->{password}&status=$form->{status}"; + my $callback = + "$form->{script}?action=pricegroup_report&type=$form->{type}&status=$form->{status}"; + my $option; if ($form->{status} eq 'all') { $option = $locale->text('All'); } if ($form->{status} eq 'orphaned') { $option .= $locale->text('Orphaned'); } - if ($form->{partsgroup}) { - $callback .= "&partsgroup=$form->{partsgroup}"; - $option .= "\n
" . $locale->text('Group') . " : $form->{partsgroup}"; + if ($form->{pricegroup}) { + $callback .= "&pricegroup=$form->{pricegroup}"; + $option .= + "\n
" . $locale->text('Pricegroup') . " : $form->{pricegroup}"; } - @column_index = $form->sort_columns(qw(partsgroup)); + my @column_index = $form->sort_columns(qw(pricegroup)); + my %column_header; + $column_header{pricegroup} = + qq|| + . $locale->text('Pricegroup') + . qq||; - $column_header{partsgroup} = - qq|| . $locale->text('Group') . qq||; - - $form->{title} = $locale->text('Groups'); + $form->{title} = $locale->text('Pricegroup'); $form->header; @@ -460,7 +488,7 @@ sub partsgroup_report { - + |; map { print "$column_header{$_}\n" } @column_index; @@ -475,7 +503,8 @@ sub partsgroup_report { # escape callback for href $callback = $form->escape($callback); - foreach $ref (@{ $form->{item_list} }) { + my ($i, %column_data); + foreach my $ref (@{ $form->{item_list} }) { $i++; $i %= 2; @@ -483,9 +512,9 @@ sub partsgroup_report { print qq| |; + $column_data{pricegroup} = + qq||; - $column_data{partsgroup} = - qq||; map { print "$column_data{$_}\n" } @column_index; print " @@ -509,37 +538,35 @@ sub partsgroup_report { {type}> -{path}> -{login}> -{password}> - |; - - if ($form->{menubar}) { - require "$form->{path}/menu.pl"; - &menubar; - } + . $locale->text('Add') . qq|"> - print qq| |; - $lxdebug->leave_sub(); + $main::lxdebug->leave_sub(); } -sub form_partsgroup_header { - $lxdebug->enter_sub(); +####################### +#build up pricegroup_header +# +sub form_pricegroup_header { + $main::lxdebug->enter_sub(); - $form->{title} = $locale->text("$form->{title} Group"); + $main::auth->assert('config'); - # $locale->text('Add Group') - # $locale->text('Edit Group') + my $form = $main::form; + my $locale = $main::locale; - $form->{partsgroup} =~ s/\"/"/g; + # $locale->text('Add Pricegroup') + # $locale->text('Edit Pricegroup') + + $form->{title} = $locale->text("$form->{title} Pricegroup"); + + $form->{pricegroup} =~ s/\"/"/g; $form->header; @@ -559,11 +586,10 @@ sub form_partsgroup_header { @@ -573,20 +599,23 @@ sub form_partsgroup_header {
{script}?action=edit&type=$form->{type}&status=$form->{status}&id=$ref->{id}&callback=$callback>$ref->{pricegroup}{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}
- - - - - + + + +
| . $locale->text('Group') . qq|
| . $locale->text('Preisgruppe') . qq|
|; - $lxdebug->leave_sub(); + $main::lxdebug->leave_sub(); } +###################### +#build up pricegroup_footer +# +sub form_pricegroup_footer { + $main::lxdebug->enter_sub(); -sub form_partsgroup_footer { - $lxdebug->enter_sub(); + $main::auth->assert('config'); + + my $form = $main::form; + my $locale = $main::locale; print qq| -{path}> -{login}> -{password}> -
|; @@ -597,11 +626,14 @@ sub form_partsgroup_footer { . $locale->text('Delete') . 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| @@ -609,5 +641,5 @@ sub form_partsgroup_footer { |; - $lxdebug->leave_sub(); + $main::lxdebug->leave_sub(); }