projects
/
kivitendo-erp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
$form->error() kann optional eine Exception werfen, anstatt etwas auszugeben und...
[kivitendo-erp.git]
/
SL
/
Dispatcher.pm
diff --git
a/SL/Dispatcher.pm
b/SL/Dispatcher.pm
index
cc886d8
..
da7ffef
100644
(file)
--- a/
SL/Dispatcher.pm
+++ b/
SL/Dispatcher.pm
@@
-9,11
+9,13
@@
BEGIN {
}
use CGI qw( -no_xhtml);
}
use CGI qw( -no_xhtml);
+use DateTime;
use English qw(-no_match_vars);
use SL::Auth;
use SL::LXDebug;
use SL::Locale;
use SL::Common;
use English qw(-no_match_vars);
use SL::Auth;
use SL::LXDebug;
use SL::Locale;
use SL::Common;
+use SL::Helper::DateTime;
use Form;
use List::Util qw(first);
use File::Basename;
use Form;
use List::Util qw(first);
use File::Basename;
@@
-22,6
+24,15
@@
use File::Basename;
# number 'die' was called in.
use constant END_OF_REQUEST => "END-OF-REQUEST\n";
# number 'die' was called in.
use constant END_OF_REQUEST => "END-OF-REQUEST\n";
+sub new {
+ my ($class, $interface) = @_;
+
+ my $self = bless {}, $class;
+ $self->{interface} = lc($interface || 'cgi');
+
+ return $self;
+}
+
sub pre_request_checks {
if (!$::auth->session_tables_present) {
if ($::form->{script} eq 'admin.pl') {
sub pre_request_checks {
if (!$::auth->session_tables_present) {
if ($::form->{script} eq 'admin.pl') {
@@
-138,15
+149,17
@@
sub _run_controller {
}
sub handle_request {
}
sub handle_request {
+ my $self = shift;
+ $self->{request} = shift;
+
$::lxdebug->enter_sub;
$::lxdebug->begin_request;
$::lxdebug->enter_sub;
$::lxdebug->begin_request;
- my $interface = lc(shift || 'cgi');
my ($script, $path, $suffix, $script_name, $action, $routing_type);
$script_name = $ENV{SCRIPT_NAME};
my ($script, $path, $suffix, $script_name, $action, $routing_type);
$script_name = $ENV{SCRIPT_NAME};
-
unrequire_bin_mozilla($interface)
;
+
$self->unrequire_bin_mozilla
;
$::cgi = CGI->new('');
$::locale = Locale->new($::language);
$::cgi = CGI->new('');
$::locale = Locale->new($::language);
@@
-230,7
+243,8
@@
sub handle_request {
}
sub unrequire_bin_mozilla {
}
sub unrequire_bin_mozilla {
- return unless $_[0] =~ m/^(?:fastcgi|fcgid|fcgi)$/;
+ my $self = shift;
+ return unless $self->{interface} =~ m/^(?:fastcgi|fcgid|fcgi)$/;
for (keys %INC) {
next unless m#^bin/mozilla/#;
for (keys %INC) {
next unless m#^bin/mozilla/#;
@@
-295,6
+309,12
@@
sub _route_controller_request {
return ($controller, $action);
}
return ($controller, $action);
}
+sub get_standard_filehandles {
+ my $self = shift;
+
+ return $self->{interface} =~ m/f(?:ast)cgi/i ? $self->{request}->GetHandles() : (\*STDIN, \*STDOUT, \*STDERR);
+}
+
package main;
use strict;
package main;
use strict;