projects
/
kivitendo-erp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Konfigurationsort für viele Flags ist Abschnitt 'features', nicht 'system'
[kivitendo-erp.git]
/
SL
/
Dispatcher.pm
diff --git
a/SL/Dispatcher.pm
b/SL/Dispatcher.pm
index
3624cec
..
b485063
100644
(file)
--- a/
SL/Dispatcher.pm
+++ b/
SL/Dispatcher.pm
@@
-5,7
+5,6
@@
use strict;
BEGIN {
unshift @INC, "modules/override"; # Use our own versions of various modules (e.g. YAML).
push @INC, "modules/fallback"; # Only use our own versions of modules if there's no system version.
BEGIN {
unshift @INC, "modules/override"; # Use our own versions of various modules (e.g. YAML).
push @INC, "modules/fallback"; # Only use our own versions of modules if there's no system version.
- push @INC, "SL"; # FCGI won't find modules that are not properly named. Help it by inclduging SL
}
use CGI qw( -no_xhtml);
}
use CGI qw( -no_xhtml);
@@
-15,10
+14,11
@@
use Encode;
use English qw(-no_match_vars);
use SL::Auth;
use SL::LXDebug;
use English qw(-no_match_vars);
use SL::Auth;
use SL::LXDebug;
+use SL::LxOfficeConf;
use SL::Locale;
use SL::Common;
use SL::Locale;
use SL::Common;
+use SL::Form;
use SL::Helper::DateTime;
use SL::Helper::DateTime;
-use Form;
use List::Util qw(first);
use File::Basename;
use List::Util qw(first);
use File::Basename;
@@
-35,6
+35,11
@@
sub new {
return $self;
}
return $self;
}
+sub interface_type {
+ my ($self) = @_;
+ return $self->{interface} eq 'cgi' ? 'CGI' : 'FastCGI';
+}
+
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') {
@@
-66,17
+71,7
@@
sub show_error {
}
sub pre_startup_setup {
}
sub pre_startup_setup {
- eval {
- package main;
- require "config/lx-erp.conf";
- };
- eval {
- package main;
- require "config/lx-erp-local.conf";
- } if -f "config/lx-erp-local.conf";
-
- read_config 'config/lx_office.conf' => %::lx_office_conf;
- _decode_recursively(\%::lx_office_conf);
+ SL::LxOfficeConf->read;
_init_environment();
eval {
_init_environment();
eval {
@@
-88,9
+83,7
@@
sub pre_startup_setup {
# canonial globals. if it's not here, chances are it will get refactored someday.
{
no warnings 'once';
# canonial globals. if it's not here, chances are it will get refactored someday.
{
no warnings 'once';
- $::menufile = "menu.ini";
$::lxdebug = LXDebug->new;
$::lxdebug = LXDebug->new;
- $::auth = SL::Auth->new;
$::form = undef;
%::myconfig = ();
%::called_subs = (); # currently used for recursion detection
$::form = undef;
%::myconfig = ();
%::called_subs = (); # currently used for recursion detection
@@
-163,6
+156,7
@@
sub handle_request {
$self->unrequire_bin_mozilla;
$self->unrequire_bin_mozilla;
+ $::auth = SL::Auth->new;
$::cgi = CGI->new('');
$::locale = Locale->new($::lx_office_conf{system}->{language});
$::form = Form->new;
$::cgi = CGI->new('');
$::locale = Locale->new($::lx_office_conf{system}->{language});
$::form = Form->new;
@@
-204,11
+198,11
@@
sub handle_request {
$::locale = Locale->new($::myconfig{countrycode});
$::locale = Locale->new($::myconfig{countrycode});
- show_error('login/password_error', 'password') if SL::Auth::OK != $::auth->authenticate($::form->{login}, $::form->{password}
, 0
);
+ show_error('login/password_error', 'password') if SL::Auth::OK != $::auth->authenticate($::form->{login}, $::form->{password});
$::auth->set_session_value('login', $::form->{login}, 'password', $::form->{password});
$::auth->create_or_refresh_session;
$::auth->set_session_value('login', $::form->{login}, 'password', $::form->{password});
$::auth->create_or_refresh_session;
- $::auth->delete_session_value('FLASH')
->save_session()
;
+ $::auth->delete_session_value('FLASH');
delete $::form->{password};
if ($action) {
delete $::form->{password};
if ($action) {
@@
-238,7
+232,9
@@
sub handle_request {
$::locale = undef;
$::form = undef;
$::myconfig = ();
$::locale = undef;
$::form = undef;
$::myconfig = ();
- Form::disconnect_standard_dbh unless $self->_interface_is_fcgi;
+ Form::disconnect_standard_dbh;
+ $::auth->expire_session_keys->save_session;
+ $::auth->dbdisconnect;
$::lxdebug->end_request;
$::lxdebug->leave_sub;
$::lxdebug->end_request;
$::lxdebug->leave_sub;
@@
-322,18
+318,6
@@
sub get_standard_filehandles {
return $self->{interface} =~ m/f(?:ast)cgi/i ? $self->{request}->GetHandles() : (\*STDIN, \*STDOUT, \*STDERR);
}
return $self->{interface} =~ m/f(?:ast)cgi/i ? $self->{request}->GetHandles() : (\*STDIN, \*STDOUT, \*STDERR);
}
-sub _decode_recursively {
- my ($obj) = @_;
-
- while (my ($key, $value) = each %{ $obj }) {
- if (ref($value) eq 'HASH') {
- _decode_recursively($value);
- } else {
- $obj->{$key} = decode('UTF-8', $value);
- }
- }
-}
-
sub _init_environment {
my %key_map = ( lib => { name => 'PERL5LIB', append_path => 1 },
path => { name => 'PATH', append_path => 1 },
sub _init_environment {
my %key_map = ( lib => { name => 'PERL5LIB', append_path => 1 },
path => { name => 'PATH', append_path => 1 },