my ($new_item, $callback_sub);
- my $re = "^new_.*_" . $form->{selection};
+ my $re = "^new_.*_$form->{selection}\$";
foreach (grep /$re/, keys %{ $form }) {
my $new_key = $_;
}
}
- map { $form->{$_} = $options{$_} if ($options{$_}) } qw(no_services no_assemblies click_button);
+ map { $form->{$_} = $options{$_} if ($options{$_}) } qw(no_services no_assemblies assemblies click_button);
$parts = Common->retrieve_parts(\%myconfig, $form, $order_by, $order_dir);
} else {
my $referer = $ENV{HTTP_REFERER};
- $referer =~ s/^(.*)action\=.*\&(.*)$/$1action\=mark_as_paid\&mark_as_paid\=1\&id\=$form->{id}\&$2/;
+ if ($referer =~ /action/) {
+ $referer =~ /^(.*)\?action\=[^\&]*(\&.*)$/;
+ $script = $1;
+ $callback = $2;
+ } else {
+ $script = $referer;
+ $callback = "";
+ }
+ $referer = $script . "?action=mark_as_paid&mark_as_paid=1&id=$form->{id}" . $callback;
$form->header();
print qq|<body>|;
print qq|<p><b>|.$locale->text('Mark as paid?').qq|</b></p>|;