X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=sidebyside;f=bin%2Fmozilla%2Fam.pl;h=da221ae151c22774fcebbe7e355cc5418c08b885;hb=4091b37c72307f33791bb7dadb922152f70e6760;hp=fbb5cfd3e46ebeb67d6cde08a0b1347dc754825a;hpb=e549422fb649ca2299e684dc10ffe4a0f8c7efb1;p=kivitendo-erp.git
diff --git a/bin/mozilla/am.pl b/bin/mozilla/am.pl
index fbb5cfd3e..da221ae15 100644
--- a/bin/mozilla/am.pl
+++ b/bin/mozilla/am.pl
@@ -31,12 +31,14 @@
#
#======================================================================
+use SL::Auth;
use SL::AM;
use SL::CA;
use SL::Form;
use SL::User;
use SL::USTVA;
use SL::Iconv;
+use SL::TODO;
use CGI::Ajax;
use CGI;
@@ -53,17 +55,18 @@ sub delete { call_sub("delete_$form->{type}"); }
sub save { call_sub("save_$form->{type}"); }
sub edit { call_sub("edit_$form->{type}"); }
sub continue { call_sub($form->{"nextsub"}); }
+sub save_as_new { call_sub("save_as_new_$form->{type}"); }
sub add_account {
$lxdebug->enter_sub();
+ $auth->assert('config');
+
$form->{title} = "Add";
$form->{charttype} = "A";
AM->get_account(\%myconfig, \%$form);
- $form->{callback} =
- "$form->{script}?action=list_account&login=$form->{login}&password=$form->{password}"
- unless $form->{callback};
+ $form->{callback} = "am.pl?action=list_account" unless $form->{callback};
&account_header;
&form_footer;
@@ -74,6 +77,8 @@ sub add_account {
sub edit_account {
$lxdebug->enter_sub();
+ $auth->assert('config');
+
$form->{title} = "Edit";
AM->get_account(\%myconfig, \%$form);
@@ -90,6 +95,8 @@ sub edit_account {
sub account_header {
$lxdebug->enter_sub();
+ $auth->assert('config');
+
if ( $form->{action} eq 'edit_account') {
$form->{account_exists} = '1';
}
@@ -348,12 +355,11 @@ sub account_header {
sub form_footer {
$lxdebug->enter_sub();
- print qq|
+ $auth->assert('config');
-
+ print qq|
-{login}>
-{password}>
+
|;
if ((!$form->{id}) || ($form->{id} && $form->{orphaned}) || (($form->{type} eq "account") && (!$form->{new_chart_valid}))) {
@@ -368,6 +374,12 @@ sub form_footer {
. $locale->text('Delete') . qq|">|;
}
+ if ($form->{id} && $form->{type} eq "account") {
+ print qq|
+ |;
+ }
+
print qq|
@@ -381,6 +393,27 @@ sub form_footer {
sub save_account {
$lxdebug->enter_sub();
+ $auth->assert('config');
+
+ $form->isblank("accno", $locale->text('Account Number missing!'));
+ $form->isblank("description", $locale->text('Account Description missing!'));
+
+ if ($form->{charttype} eq 'A'){
+ $form->isblank("category", $locale->text('Account Type missing!'));
+ }
+
+ $form->redirect($locale->text('Account saved!'))
+ if (AM->save_account(\%myconfig, \%$form));
+ $form->error($locale->text('Cannot save account!'));
+
+ $lxdebug->leave_sub();
+}
+
+sub save_as_new_account {
+ $lxdebug->enter_sub();
+
+ $auth->assert('config');
+
$form->isblank("accno", $locale->text('Account Number missing!'));
$form->isblank("description", $locale->text('Account Description missing!'));
@@ -388,6 +421,17 @@ sub save_account {
$form->isblank("category", $locale->text('Account Type missing!'));
}
+ for my $taxkey (0 .. 9) {
+ if ($form->{"taxkey_id_$taxkey"}) {
+ $form->{"taxkey_id_$taxkey"} = "NEW";
+ }
+ }
+
+ $form->{id} = 0;
+ if ($form->{"original_accno"} &&
+ ($form->{"accno"} eq $form->{"original_accno"})) {
+ $form->error($locale->text('Account Number already used!'));
+ }
$form->redirect($locale->text('Account saved!'))
if (AM->save_account(\%myconfig, \%$form));
$form->error($locale->text('Cannot save account!'));
@@ -398,6 +442,8 @@ sub save_account {
sub list_account {
$lxdebug->enter_sub();
+ $auth->assert('config');
+
$form->{callback} = build_std_url('action=list_account');
my $link_edit_account = build_std_url('action=edit_account', 'callback');
@@ -449,6 +495,8 @@ sub list_account_details {
# Ajax Funktion aus list_account_details
$lxdebug->enter_sub();
+ $auth->assert('config');
+
my $chart_id = $form->{args};
CA->all_accounts(\%myconfig, \%$form, $chart_id);
@@ -514,6 +562,8 @@ sub list_account_details {
sub delete_account {
$lxdebug->enter_sub();
+ $auth->assert('config');
+
$form->{title} = $locale->text('Delete Account');
foreach $id (
@@ -534,12 +584,12 @@ sub delete_account {
sub add_department {
$lxdebug->enter_sub();
+ $auth->assert('config');
+
$form->{title} = "Add";
$form->{role} = "P";
- $form->{callback} =
- "$form->{script}?action=add_department&login=$form->{login}&password=$form->{password}"
- unless $form->{callback};
+ $form->{callback} = "am.pl?action=add_department" unless $form->{callback};
&department_header;
&form_footer;
@@ -550,6 +600,8 @@ sub add_department {
sub edit_department {
$lxdebug->enter_sub();
+ $auth->assert('config');
+
$form->{title} = "Edit";
AM->get_department(\%myconfig, \%$form);
@@ -563,10 +615,11 @@ sub edit_department {
sub list_department {
$lxdebug->enter_sub();
+ $auth->assert('config');
+
AM->departments(\%myconfig, \%$form);
- $form->{callback} =
- "$form->{script}?action=list_department&login=$form->{login}&password=$form->{password}";
+ $form->{callback} = "am.pl?action=list_department";
$callback = $form->escape($form->{callback});
@@ -622,7 +675,7 @@ sub list_department {
$profitcenter = ($ref->{role} eq "P") ? "X" : "";
$column_data{description} =
- qq|