Revision 8ccdbe3d
Von Sven Schöling vor mehr als 15 Jahren hinzugefügt
bin/mozilla/licenses.pl | ||
---|---|---|
|
||
require "bin/mozilla/common.pl";
|
||
|
||
use strict;
|
||
|
||
sub quot {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
$_[0] =~ s/\"/\"/g;
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
return $_[0];
|
||
}
|
||
|
||
sub form_header {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$main::auth->assert('license_edit');
|
||
|
||
$auth->assert('license_edit');
|
||
my $form = $main::form;
|
||
|
||
$form->{jsscript} = 1;
|
||
$form->header();
|
||
... | ... | |
qq|<body>
|
||
|
||
<form method=post action=$form->{script}>|);
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub form_footer {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$main::auth->assert('license_edit');
|
||
|
||
$auth->assert('license_edit');
|
||
my $form = $main::form;
|
||
|
||
my @items = qw(old_callback previousform);
|
||
push(@items, @{ $form->{"hidden"} });
|
||
... | ... | |
</body>
|
||
</html>
|
||
|);
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub set_std_hidden {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
my $form = $main::form;
|
||
|
||
$form->{"hidden"} = ["comment", "validuntil", "quantity", @_];
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub print_part_selection {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$auth->assert('license_edit');
|
||
$main::auth->assert('license_edit');
|
||
|
||
my $form = $main::form;
|
||
my $locale = $main::locale;
|
||
|
||
form_header();
|
||
set_std_hidden("business");
|
||
... | ... | |
</tr>
|
||
|);
|
||
|
||
$j = 1;
|
||
for ($i = 1; $i <= scalar(@{ $form->{"parts"} }); $i++) {
|
||
%p = %{ $form->{"parts"}->[$i - 1] };
|
||
my $j = 1;
|
||
for (my $i = 1; $i <= scalar(@{ $form->{"parts"} }); $i++) {
|
||
my %p = %{ $form->{"parts"}->[$i - 1] };
|
||
my $checked;
|
||
if ($i == 1) {
|
||
$checked = "checked";
|
||
} else {
|
||
... | ... | |
<input type=submit name=action value=| . $locale->text('Continue') . qq|>|);
|
||
|
||
form_footer();
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub print_customer_selection {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$main::auth->assert('license_edit');
|
||
|
||
$auth->assert('license_edit');
|
||
my $form = $main::form;
|
||
my $locale = $main::locale;
|
||
|
||
form_header();
|
||
set_std_hidden("parts_id", "partnumber", "description");
|
||
... | ... | |
|
||
print(qq|<tr><td colspan=6><hr size=3 noshade></td></tr>|);
|
||
|
||
$j = 1;
|
||
for ($i = 1; $i <= scalar(@{ $form->{"all_customers"} }); $i++) {
|
||
%c = %{ $form->{"all_customers"}->[$i - 1] };
|
||
my $j = 1;
|
||
for (my $i = 1; $i <= scalar(@{ $form->{"all_customers"} }); $i++) {
|
||
my %c = %{ $form->{"all_customers"}->[$i - 1] };
|
||
my $checked;
|
||
if ($i == 1) {
|
||
$checked = "checked";
|
||
} else {
|
||
... | ... | |
<input type=submit name=action value=| . $locale->text('Continue') . qq|>|);
|
||
|
||
form_footer();
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub print_license_form {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$auth->assert('license_edit');
|
||
$main::auth->assert('license_edit');
|
||
|
||
my $form = $main::form;
|
||
my %myconfig = %main::myconfig;
|
||
my $locale = $main::locale;
|
||
|
||
print(
|
||
qq|
|
||
... | ... | |
if (!defined($form->{"customer_id"})) {
|
||
$form->{"customer_id"} = $_->{"id"};
|
||
}
|
||
$selected = ($_->{"id"} * 1) == $form->{"customer_id"} ? "selected" : "";
|
||
my $selected = ($_->{"id"} * 1) == $form->{"customer_id"} ? "selected" : "";
|
||
print(qq|<option $selected> $_->{"name"}--$_->{"id"}</option>|);
|
||
}
|
||
print(qq|</select></td>|);
|
||
... | ... | |
$form->write_trigger(\%myconfig, 1, "validuntil", "BL",
|
||
"trigger_validuntil"));
|
||
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub add {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$main::auth->assert('license_edit');
|
||
|
||
$auth->assert('license_edit');
|
||
my $form = $main::form;
|
||
my $locale = $main::locale;
|
||
|
||
if (!$lizenzen) {
|
||
if (!$main::lizenzen) {
|
||
$form->error(
|
||
$locale->text(
|
||
'The licensing module has been deactivated in lx-erp.conf.')
|
||
... | ... | |
$form->{"initial"} = 1;
|
||
|
||
do_add();
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub do_add {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$auth->assert('license_edit');
|
||
$main::auth->assert('license_edit');
|
||
|
||
my $form = $main::form;
|
||
my %myconfig = %main::myconfig;
|
||
|
||
$form->{"hidden"} = ["parts_id"];
|
||
form_header();
|
||
|
||
if ($form->{"ndx"}) {
|
||
$ndx = $form->{"ndx"};
|
||
my $ndx = $form->{"ndx"};
|
||
foreach (keys(%{$form})) {
|
||
next unless (/^new_.*_${ndx}$/);
|
||
s/^new_//;
|
||
... | ... | |
if ($form->{"customer_name"}) {
|
||
LICENSES->get_customers(\%myconfig, $form);
|
||
if (scalar(@{ $form->{"all_customers"} }) == 1) {
|
||
%c = %{ $form->{"all_customers"}->[0] };
|
||
my %c = %{ $form->{"all_customers"}->[0] };
|
||
$form->{"customer_id"} = $c{"id"};
|
||
$form->{"customer_name"} = $c{"name"};
|
||
} elsif (scalar(@{ $form->{"all_customers"} }) == 0) {
|
||
... | ... | |
print_license_form($form->{"parts_id"} && $form->{"customer_id"});
|
||
|
||
form_footer();
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub update {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$main::auth->assert('license_edit');
|
||
|
||
$auth->assert('license_edit');
|
||
my $form = $main::form;
|
||
|
||
do_add();
|
||
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub continue {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
my $form = $main::form;
|
||
|
||
call_sub($form->{"nextsub"});
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub save {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$auth->assert('license_edit');
|
||
$main::auth->assert('license_edit');
|
||
|
||
my $form = $main::form;
|
||
my %myconfig = %main::myconfig;
|
||
my $locale = $main::locale;
|
||
|
||
($form->{customername}, $form->{customer_id}) = split /--/,
|
||
$form->{customer};
|
||
... | ... | |
$form->error($locale->text('Please enter a license key.'));
|
||
}
|
||
|
||
$rc = LICENSES->save_license(\%myconfig, \%$form);
|
||
my $rc = LICENSES->save_license(\%myconfig, \%$form);
|
||
|
||
# load previous variables
|
||
if ($form->{previousform}) {
|
||
|
||
# save the new form variables before splitting previousform
|
||
my %newform;
|
||
map { $newform{$_} = $form->{$_} } keys %$form;
|
||
|
||
$previousform = $form->unescape($form->{previousform});
|
||
my $previousform = $form->unescape($form->{previousform});
|
||
|
||
# don't trample on previous variables
|
||
map { delete $form->{$_} } keys %newform;
|
||
|
||
# now take it apart and restore original values
|
||
foreach $item (split /&/, $previousform) {
|
||
($key, $value) = split /=/, $item, 2;
|
||
foreach my $item (split /&/, $previousform) {
|
||
my ($key, $value) = split /=/, $item, 2;
|
||
$value =~ s/%26/&/g;
|
||
$form->{$key} = $value;
|
||
}
|
||
... | ... | |
delete $form->{action};
|
||
|
||
# restore original callback
|
||
$callback = $form->unescape($form->{callback});
|
||
my $callback = $form->unescape($form->{callback});
|
||
$form->{callback} = $form->unescape($form->{old_callback});
|
||
delete $form->{old_callback};
|
||
|
||
# put callback together
|
||
foreach $key (keys %$form) {
|
||
foreach my $key (keys %$form) {
|
||
next if (($key eq 'login') || ($key eq 'password') || ('' ne ref $form->{$key}));
|
||
|
||
# do single escape for Apache 2.0
|
||
$value = $form->escape($form->{$key}, 1);
|
||
my $value = $form->escape($form->{$key}, 1);
|
||
$callback .= qq|&$key=$value|;
|
||
}
|
||
$form->{callback} = $callback;
|
||
... | ... | |
form_footer();
|
||
}
|
||
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub search {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$main::auth->assert('license_edit');
|
||
|
||
$auth->assert('license_edit');
|
||
my $form = $main::form;
|
||
my $locale = $main::locale;
|
||
|
||
if (!$lizenzen) {
|
||
if (!$main::lizenzen) {
|
||
$form->error(
|
||
$locale->text(
|
||
'The licensing module has been deactivated in lx-erp.conf.')
|
||
... | ... | |
|);
|
||
|
||
form_footer();
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub do_search {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$auth->assert('license_edit');
|
||
$main::auth->assert('license_edit');
|
||
|
||
my $form = $main::form;
|
||
my %myconfig = %main::myconfig;
|
||
my $locale = $main::locale;
|
||
|
||
LICENSES->search(\%myconfig, $form);
|
||
|
||
$callback = "";
|
||
my $callback = "";
|
||
map { $callback .= "\&${_}=" . $form->escape($form->{$_}, 1) }
|
||
qw(db partnumber description customer_name all expiring_in show_expired);
|
||
$details = $form->{"script"} . "?action=details" . $callback . "\&id=";
|
||
$invdetails = "is.pl?action=edit" . $callback . "\&id=";
|
||
my $details = $form->{"script"} . "?action=details" . $callback . "\&id=";
|
||
my $invdetails = "is.pl?action=edit" . $callback . "\&id=";
|
||
$callback = $form->{"script"} . "?action=do_search" . $callback;
|
||
|
||
$form->{"sortby"} = "validuntil" unless ($form->{"sortby"});
|
||
$form->{"sortasc"} *= 1;
|
||
my %columns;
|
||
foreach (("partnumber", "description", "name", "validuntil", "invnumber")) {
|
||
$columns{$_} = $callback . "\&sortby=${_}\&sortasc=";
|
||
if ($form->{"sortby"} eq $_) {
|
||
... | ... | |
</tr>
|
||
|);
|
||
|
||
$j = 1;
|
||
for ($i = 0; $i < scalar(@{ $form->{"licenses"} }); $i++) {
|
||
$ref = $form->{"licenses"}->[$i];
|
||
my $j = 1;
|
||
for (my $i = 0; $i < scalar(@{ $form->{"licenses"} }); $i++) {
|
||
my $ref = $form->{"licenses"}->[$i];
|
||
print(
|
||
qq|
|
||
<tr class=listrow$j>
|
||
... | ... | |
|);
|
||
|
||
form_footer();
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub details {
|
||
$lxdebug->enter_sub();
|
||
$main::lxdebug->enter_sub();
|
||
|
||
$main::auth->assert('license_edit');
|
||
|
||
$auth->assert('license_edit');
|
||
my $form = $main::form;
|
||
my %myconfig = %main::myconfig;
|
||
my $locale = $main::locale;
|
||
|
||
LICENSES->get_license(\%myconfig, $form);
|
||
map(
|
||
... | ... | |
|);
|
||
|
||
form_footer();
|
||
$lxdebug->leave_sub();
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
1;
|
Auch abrufbar als: Unified diff
licences strict