projects
/
kivitendo-erp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
print_form: Extension war vor -r3314 standard auf "html", wurde dann durch anderen...
[kivitendo-erp.git]
/
bin
/
mozilla
/
arap.pl
diff --git
a/bin/mozilla/arap.pl
b/bin/mozilla/arap.pl
index
e7e2378
..
1ed40a7
100644
(file)
--- a/
bin/mozilla/arap.pl
+++ b/
bin/mozilla/arap.pl
@@
-30,32
+30,41
@@
# common routines for gl, ar, ap, is, ir, oe
#
# common routines for gl, ar, ap, is, ir, oe
#
+use SL::Projects;
+
# any custom scripts for this one
# any custom scripts for this one
-if (-f "
$form->{path}
/custom_arap.pl") {
- eval { require "
$form->{path}
/custom_arap.pl"; };
+if (-f "
bin/mozilla
/custom_arap.pl") {
+ eval { require "
bin/mozilla
/custom_arap.pl"; };
}
}
-if (-f "
$form->{path}
/$form->{login}_arap.pl") {
- eval { require "
$form->{path}
/$form->{login}_arap.pl"; };
+if (-f "
bin/mozilla
/$form->{login}_arap.pl") {
+ eval { require "
bin/mozilla
/$form->{login}_arap.pl"; };
}
1;
}
1;
+require "bin/mozilla/common.pl";
+
# end of main
sub check_name {
$lxdebug->enter_sub();
# end of main
sub check_name {
$lxdebug->enter_sub();
+ $auth->assert('general_ledger | vendor_invoice_edit | sales_order_edit | invoice_edit |' .
+ 'request_quotation_edit | sales_quotation_edit | purchase_order_edit | cash |' .
+ 'purchase_delivery_order_edit | sales_delivery_order_edit');
+
my ($name) = @_;
my ($name) = @_;
+ $name = $name eq "customer" ? "customer" : "vendor";
+
my ($new_name, $new_id) = split /--/, $form->{$name};
my $i = 0;
my ($new_name, $new_id) = split /--/, $form->{$name};
my $i = 0;
-
# if we use a selection
if ($form->{"select$name"}) {
if ($form->{"old$name"} ne $form->{$name}) {
# this is needed for is, ir and oe
# if we use a selection
if ($form->{"select$name"}) {
if ($form->{"old$name"} ne $form->{$name}) {
# this is needed for is, ir and oe
-
+ $form->{update} = 0;
# for credit calculations
$form->{oldinvtotal} = 0;
$form->{oldtotalpaid} = 0;
# for credit calculations
$form->{oldinvtotal} = 0;
$form->{oldtotalpaid} = 0;
@@
-76,6
+85,7
@@
sub check_name {
if ($form->{"old$name"} ne qq|$form->{$name}--$form->{"${name}_id"}|) {
# this is needed for is, ir and oe
if ($form->{"old$name"} ne qq|$form->{$name}--$form->{"${name}_id"}|) {
# this is needed for is, ir and oe
+ $form->{update} = 0;
# for credit calculations
$form->{oldinvtotal} = 0;
# for credit calculations
$form->{oldinvtotal} = 0;
@@
-101,11
+111,14
@@
sub check_name {
} else {
# name is not on file
} else {
# name is not on file
+ # $locale->text('Customer not on file or locked!')
+ # $locale->text('Vendor not on file or locked!')
$msg = ucfirst $name . " not on file or locked!";
$form->error($locale->text($msg));
}
}
}
$msg = ucfirst $name . " not on file or locked!";
$form->error($locale->text($msg));
}
}
}
+ $form->language_payment(\%myconfig);
$lxdebug->leave_sub();
$lxdebug->leave_sub();
@@
-118,6
+131,9
@@
sub check_name {
sub select_name {
$lxdebug->enter_sub();
sub select_name {
$lxdebug->enter_sub();
+ $auth->assert('general_ledger | vendor_invoice_edit | sales_order_edit | invoice_edit |' .
+ 'request_quotation_edit | sales_quotation_edit | purchase_order_edit | cash');
+
my ($table) = @_;
@column_index = qw(ndx name address);
my ($table) = @_;
@column_index = qw(ndx name address);
@@
-201,6
+217,7
@@
sub select_name {
# save all other form variables
foreach $key (keys %${form}) {
# save all other form variables
foreach $key (keys %${form}) {
+ next if (($key eq 'login') || ($key eq 'password') || ('' ne ref $form->{$key}));
$form->{$key} =~ s/\"/"/g;
print qq|<input name=$key type=hidden value="$form->{$key}">\n|;
}
$form->{$key} =~ s/\"/"/g;
print qq|<input name=$key type=hidden value="$form->{$key}">\n|;
}
@@
-224,6
+241,9
@@
sub select_name {
sub name_selected {
$lxdebug->enter_sub();
sub name_selected {
$lxdebug->enter_sub();
+ $auth->assert('general_ledger | vendor_invoice_edit | sales_order_edit | invoice_edit |' .
+ 'request_quotation_edit | sales_quotation_edit | purchase_order_edit | cash');
+
# replace the variable with the one checked
# index for new item
# replace the variable with the one checked
# index for new item
@@
-236,7
+256,7
@@
sub name_selected {
# delete all the new_ variables
for $i (1 .. $form->{lastndx}) {
# delete all the new_ variables
for $i (1 .. $form->{lastndx}) {
- map { delete $form->{"new_${_}_$i"} }
(id,
name);
+ map { delete $form->{"new_${_}_$i"} }
qw(id
name);
}
map { delete $form->{$_} } qw(ndx lastndx nextsub);
}
map { delete $form->{$_} } qw(ndx lastndx nextsub);
@@
-249,56
+269,43
@@
sub name_selected {
$lxdebug->leave_sub();
}
$lxdebug->leave_sub();
}
-sub
add_transaction
{
+sub
check_project
{
$lxdebug->enter_sub();
$lxdebug->enter_sub();
- my ($module) = @_;
-
- delete $form->{script};
- $form->{action} = "add";
- $form->{type} = "invoice" if $module =~ /(is|ir)/;
-
- $form->{callback} = $form->escape($form->{callback}, 1);
- map { $argv .= "$_=$form->{$_}&" } keys %$form;
+ $auth->assert('general_ledger | vendor_invoice_edit | sales_order_edit | invoice_edit |' .
+ 'request_quotation_edit | sales_quotation_edit | purchase_order_edit | cash | report');
- $form->{callback} = "$module.pl?$argv";
-
- $form->redirect;
-
- $lxdebug->leave_sub();
-}
-
-sub check_project {
- $lxdebug->enter_sub();
+ my $nextsub = shift || 'update';
for $i (1 .. $form->{rowcount}) {
for $i (1 .. $form->{rowcount}) {
- $form->{"project_id_$i"} = "" unless $form->{"projectnumber_$i"};
- if ($form->{"projectnumber_$i"} ne $form->{"oldprojectnumber_$i"}) {
- if ($form->{"projectnumber_$i"}) {
+ my $suffix = $i ? "_$i" : "";
+ my $prefix = $i ? "" : "global";
+ $form->{"${prefix}project_id${suffix}"} = "" unless $form->{"${prefix}projectnumber$suffix"};
+ if ($form->{"${prefix}projectnumber${suffix}"} ne $form->{"old${prefix}projectnumber${suffix}"}) {
+ if ($form->{"${prefix}projectnumber${suffix}"}) {
# get new project
# get new project
- $form->{projectnumber} = $form->{"projectnumber_$i"};
- if (($rows = PE->projects(\%myconfig, $form)) > 1) {
+ $form->{projectnumber} = $form->{"${prefix}projectnumber${suffix}"};
+ my %params = map { $_ => $form->{$_} } qw(projectnumber description active);
+ if (($rows = Projects->search_projects(%params)) > 1) {
# check form->{project_list} how many there are
$form->{rownumber} = $i;
# check form->{project_list} how many there are
$form->{rownumber} = $i;
- &select_project;
+ &select_project
($i ? undef : 1, $nextsub)
;
exit;
}
if ($rows == 1) {
exit;
}
if ($rows == 1) {
- $form->{"project_id_$i"} = $form->{project_list}->[0]->{id};
- $form->{"projectnumber_$i"} =
- $form->{project_list}->[0]->{projectnumber};
- $form->{"oldprojectnumber_$i"} =
- $form->{project_list}->[0]->{projectnumber};
+ $form->{"${prefix}project_id${suffix}"} = $form->{project_list}->[0]->{id};
+ $form->{"${prefix}projectnumber${suffix}"} = $form->{project_list}->[0]->{projectnumber};
+ $form->{"old${prefix}projectnumber${suffix}"} = $form->{project_list}->[0]->{projectnumber};
} else {
# not on file
$form->error($locale->text('Project not on file!'));
}
} else {
} else {
# not on file
$form->error($locale->text('Project not on file!'));
}
} else {
- $form->{"old
projectnumber_$i
"} = "";
+ $form->{"old
${prefix}projectnumber${suffix}
"} = "";
}
}
}
}
}
}
@@
-309,6
+316,11
@@
sub check_project {
sub select_project {
$lxdebug->enter_sub();
sub select_project {
$lxdebug->enter_sub();
+ $auth->assert('general_ledger | vendor_invoice_edit | sales_order_edit | invoice_edit |' .
+ 'request_quotation_edit | sales_quotation_edit | purchase_order_edit | cash | report');
+
+ my ($is_global, $nextsub) = @_;
+
@column_index = qw(ndx projectnumber description);
$column_data{ndx} = qq|<th> </th>|;
@column_index = qw(ndx projectnumber description);
$column_data{ndx} = qq|<th> </th>|;
@@
-386,16
+398,19
@@
sub select_project {
|;
# delete action variable
|;
# delete action variable
- map { delete $form->{$_} } qw(action project_list header);
+ map { delete $form->{$_} } qw(action project_list header
update
);
# save all other form variables
foreach $key (keys %${form}) {
# save all other form variables
foreach $key (keys %${form}) {
+ next if (($key eq 'login') || ($key eq 'password') || ('' ne ref $form->{$key}));
$form->{$key} =~ s/\"/"/g;
print qq|<input name=$key type=hidden value="$form->{$key}">\n|;
}
$form->{$key} =~ s/\"/"/g;
print qq|<input name=$key type=hidden value="$form->{$key}">\n|;
}
- print qq|
-<input type=hidden name=nextsub value=project_selected>
+ print
+ $cgi->hidden('-name' => 'is_global', '-default' => [$is_global])
+ . $cgi->hidden('-name' => 'project_selected_nextsub', '-default' => [$nextsub])
+ . qq|<input type=hidden name=nextsub value=project_selected>
<br>
<input class=submit type=submit name=action value="|
<br>
<input class=submit type=submit name=action value="|
@@
-412,37
+427,36
@@
sub select_project {
sub project_selected {
$lxdebug->enter_sub();
sub project_selected {
$lxdebug->enter_sub();
+ $auth->assert('general_ledger | vendor_invoice_edit | sales_order_edit | invoice_edit |' .
+ 'request_quotation_edit | sales_quotation_edit | purchase_order_edit | cash | report');
+
# replace the variable with the one checked
# index for new item
$i = $form->{ndx};
# replace the variable with the one checked
# index for new item
$i = $form->{ndx};
- $form->{"projectnumber_$form->{rownumber}"} =
+ my $prefix = $form->{"is_global"} ? "global" : "";
+ my $suffix = $form->{"is_global"} ? "" : "_$form->{rownumber}";
+
+ $form->{"${prefix}projectnumber${suffix}"} =
$form->{"new_projectnumber_$i"};
$form->{"new_projectnumber_$i"};
- $form->{"old
projectnumber_$form->{rownumber
}"} =
+ $form->{"old
${prefix}projectnumber${suffix
}"} =
$form->{"new_projectnumber_$i"};
$form->{"new_projectnumber_$i"};
- $form->{"
project_id_$form->{rownumber
}"} = $form->{"new_id_$i"};
+ $form->{"
${prefix}project_id${suffix
}"} = $form->{"new_id_$i"};
# delete all the new_ variables
for $i (1 .. $form->{lastndx}) {
map { delete $form->{"new_${_}_$i"} } qw(id projectnumber description);
}
# delete all the new_ variables
for $i (1 .. $form->{lastndx}) {
map { delete $form->{"new_${_}_$i"} } qw(id projectnumber description);
}
- m
ap { delete $form->{$_} } qw(ndx lastndx nextsub)
;
+ m
y $nextsub = $form->{project_selected_nextsub} || 'update'
;
- if ($form->{update}) {
- &{ $form->{update} };
- } else {
- &update;
- }
+ map { delete $form->{$_} } qw(ndx lastndx nextsub is_global project_selected_nextsub);
+
+ call_sub($nextsub);
$lxdebug->leave_sub();
}
$lxdebug->leave_sub();
}
-sub continue { &{ $form->{nextsub} } }
-sub gl_transaction { &add }
-sub ar_transaction { &add_transaction(ar) }
-sub ap_transaction { &add_transaction(ap) }
-sub sales_invoice { &add_transaction(is) }
-sub vendor_invoice { &add_transaction(ir) }
+sub continue { call_sub($form->{"nextsub"}); }