]> wagnertech.de Git - kivitendo-erp.git/blobdiff - SL/Dispatcher/AuthHandler.pm
PE: single-dbh disconnects
[kivitendo-erp.git] / SL / Dispatcher / AuthHandler.pm
index 22b2be44d17c0c0ae9f768f85f85746fa8724149..449d68492a69e3ca9ff436578c19e8b2a1d61df7 100644 (file)
@@ -14,14 +14,16 @@ sub handle {
   my ($self, %param) = @_;
 
   my $auth_level                       = $self->get_auth_level(%param);
+
   my $handler_name                     = "SL::Dispatcher::AuthHandler::" . ucfirst($auth_level);
   $self->{handlers}                  ||= {};
   $self->{handlers}->{$handler_name} ||= $handler_name->new;
-  $self->{handlers}->{$handler_name}->handle;
+  my $ok = $self->{handlers}->{$handler_name}->handle(%param);
 
   return (
     auth_level     => $auth_level,
     keep_auth_vars => $self->get_keep_auth_vars(%param),
+    auth_ok        => $ok,
   );
 }
 
@@ -38,7 +40,7 @@ sub get_auth_level {
 sub get_keep_auth_vars {
   my ($self, %param) = @_;
 
-  return $param{routing_type} eq 'controller' ? "SL::Controller::$param{controller}"->keep_auth_vars_in_form : 0;
+  return $param{routing_type} eq 'controller' ? "SL::Controller::$param{controller}"->keep_auth_vars_in_form(action => $param{action}) : 0;
 }
 
 1;