Presenter-Module für Listen von Verkaufs-/Einkaufsobjekte
[kivitendo-erp.git] / SL / Dispatcher.pm
index d65e5d5..d01a0d0 100644 (file)
@@ -35,7 +35,7 @@ use SL::Form;
 use SL::Helper::DateTime;
 use SL::InstanceConfiguration;
 use SL::Template::Plugin::HTMLFixes;
-use SL::Controller::Layout::None;
+use SL::Layout::None;
 
 # Trailing new line is added so that Perl will not add the line
 # number 'die' was called in.
@@ -184,7 +184,7 @@ sub handle_request {
   $::instance_conf = SL::InstanceConfiguration->new;
   $::request       = {
     cgi => CGI->new({}),
-    layout => SL::Controller::Layout::None->new,
+    layout => SL::Layout::None->new,
   };
 
   my $session_result = $::auth->restore_session;
@@ -231,6 +231,7 @@ sub handle_request {
     } else {
       if (SL::Auth::SESSION_EXPIRED == $session_result) {
         print $::request->{cgi}->redirect('controller.pl?action=LoginScreen/user_login&error=session');
+        ::end_of_request();
       }
 
       my %auth_result = $self->{auth_handler}->handle(
@@ -240,6 +241,8 @@ sub handle_request {
         action       => $action,
       );
 
+      ::end_of_request() unless $auth_result{auth_ok};
+
       delete @{ $::form }{ grep { m/^\{AUTH\}/ } keys %{ $::form } } unless $auth_result{keep_auth_vars};
 
       if ($action) {