Auftrags-Controller: Marge in zweiter Zeile
[kivitendo-erp.git] / SL / Auth.pm
index 0171899..e8d6c72 100644 (file)
@@ -37,11 +37,21 @@ sub new {
   my $self            = bless {}, $type;
 
   $self->_read_auth_config(%params);
-  $self->reset;
+  $self->init;
 
   return $self;
 }
 
+sub init {
+  my ($self, %params) = @_;
+
+  $self->{SESSION}            = { };
+  $self->{FULL_RIGHTS}        = { };
+  $self->{RIGHTS}             = { };
+  $self->{unique_counter}     = 0;
+  $self->{column_information} = SL::Auth::ColumnInformation->new(auth => $self);
+}
+
 sub reset {
   my ($self, %params) = @_;
 
@@ -50,6 +60,7 @@ sub reset {
   $self->{RIGHTS}             = { };
   $self->{unique_counter}     = 0;
   $self->{column_information} = SL::Auth::ColumnInformation->new(auth => $self);
+  $self->{column_information}->_fetch;
   $self->{authenticator}->reset;
 
   $self->client(undef);
@@ -925,7 +936,7 @@ sub all_rights_full {
   my ($self) = @_;
 
   @{ $self->{master_rights} ||= do {
-      $self->dbconnect->selectall_arrayref("SELECT name, description, category FROM auth.master_rights ORDER BY id");
+      $self->dbconnect->selectall_arrayref("SELECT name, description, category FROM auth.master_rights ORDER BY position");
     }
   }
 }