summaryrefslogtreecommitdiff
path: root/lsmb-request.pl
diff options
context:
space:
mode:
Diffstat (limited to 'lsmb-request.pl')
-rw-r--r--lsmb-request.pl22
1 files changed, 15 insertions, 7 deletions
diff --git a/lsmb-request.pl b/lsmb-request.pl
index dcaa5cf4..3a33d278 100644
--- a/lsmb-request.pl
+++ b/lsmb-request.pl
@@ -47,13 +47,21 @@ if (!$script){
$request->error($locale->text('No workflow script specified'));
}
-eval { require "scripts/$script" }
- || $request->error($locale->text('Unable to open script') . ": scripts/$script : $!");
+&call_script( $script, $request );
-$script =~ s/\.pl$//;
-$script = "LedgerSMB::Scripts::$script";
-$script->can($request->{action})
- || $request->error($locale->text("Action Not Defined: ") . $request->{action});
+sub call_script {
+
+ my $script = shift @_;
+ my $request = shift @_;
-$script->can( $request->{action} )->($request);
+ eval { require "scripts/$script" }
+ || $request->error($locale->text('Unable to open script') . ": scripts/$script : $!");
+
+ $script =~ s/\.pl$//;
+ $script = "LedgerSMB::Scripts::$script";
+ $script->can($request->{action})
+ || $request->error($locale->text("Action Not Defined: ") . $request->{action});
+
+ $script->can( $request->{action} )->($request);
+}
1;