X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fcommon.pl;h=b86ce78a19bc41c9cdde78907d841ce15b4f3278;hb=1228aa97dd33175f74c5dfbdf759a6b3d9458f93;hp=defa5f1b024c310eb8fb3d76bed00843ad0baa57;hpb=096f9e3e06dc378bcc2f97df58c74cec02b9f7ff;p=kivitendo-erp.git diff --git a/bin/mozilla/common.pl b/bin/mozilla/common.pl index defa5f1b0..b86ce78a1 100644 --- a/bin/mozilla/common.pl +++ b/bin/mozilla/common.pl @@ -9,6 +9,7 @@ # ###################################################################### +use Carp; use SL::Common; use SL::DBUtils; use SL::Form; @@ -526,6 +527,9 @@ sub call_sub { $form->error(sprintf($locale->text("Attempt to call an undefined sub named '%s'"), $name)); } + $::called_subs{$name}++; + confess "RECURSION DETECTION: call_sub($name) called " . $::called_subs{$name} . " time(s)" if $::called_subs{$name} > 10; + { no strict "refs"; &{ $name }(@_); @@ -686,19 +690,7 @@ sub cov_selection_internal { sub sales_invoice { $main::lxdebug->enter_sub(); - $main::auth->assert('invoice_edit'); - - my $form = $main::form; - my %myconfig = %main::myconfig; - my $locale = $main::locale; - - $form->{script} = 'is.pl'; - my $script = "is"; - $form->{type} = "invoice"; - $locale = new Locale "$myconfig{countrycode}", "$script"; - - require "bin/mozilla/$form->{script}"; - &add; + print $::form->redirect_header('is.pl?action=add&type=invoice'); $main::lxdebug->leave_sub(); } @@ -706,18 +698,7 @@ sub sales_invoice { sub ar_transaction { $main::lxdebug->enter_sub(); - $main::auth->assert('general_ledger'); - - my $form = $main::form; - my %myconfig = %main::myconfig; - my $locale = $main::locale; - - $form->{script} = 'ar.pl'; - my $script = "ar"; - $locale = new Locale "$myconfig{countrycode}", "$script"; - - require "bin/mozilla/$form->{script}"; - &add; + print $::form->redirect_header('ar.pl?action=add'); $main::lxdebug->leave_sub(); } @@ -725,19 +706,7 @@ sub ar_transaction { sub vendor_invoice { $main::lxdebug->enter_sub(); - $main::auth->assert('invoice_edit'); - - my $form = $main::form; - my %myconfig = %main::myconfig; - my $locale = $main::locale; - - $form->{script} = 'ir.pl'; - my $script = "ir"; - $form->{type} = "invoice"; - $locale = new Locale "$myconfig{countrycode}", "$script"; - - require "bin/mozilla/$form->{script}"; - &add; + print $::form->redirect_header('ir.pl?action=add&type=invoice'); $main::lxdebug->leave_sub(); } @@ -745,18 +714,7 @@ sub vendor_invoice { sub ap_transaction { $main::lxdebug->enter_sub(); - $main::auth->assert('general_ledger'); - - my $form = $main::form; - my %myconfig = %main::myconfig; - my $locale = $main::locale; - - $form->{script} = 'ap.pl'; - my $script = "ap"; - $locale = new Locale "$myconfig{countrycode}", "$script"; - - require "bin/mozilla/$form->{script}"; - &add; + print $::form->redirect_header('ap.pl?action=add'); $main::lxdebug->leave_sub(); } @@ -764,18 +722,7 @@ sub ap_transaction { sub gl_transaction { $main::lxdebug->enter_sub(); - $main::auth->assert('general_ledger'); - - my $form = $main::form; - my %myconfig = %main::myconfig; - my $locale = $main::locale; - - $form->{script} = 'gl.pl'; - my $script = "gl"; - $locale = new Locale "$myconfig{countrycode}", "$script"; - - require "bin/mozilla/$form->{script}"; - &add; + print $::form->redirect_header('gl.pl?action=add'); $main::lxdebug->leave_sub(); }