Merge branch 'test' of ../kivitendo-erp_20220811
[kivitendo-erp.git] / SL / Controller / TopQuickSearch.pm
index f44ff6f..4d0aa94 100644 (file)
@@ -21,11 +21,14 @@ my @available_modules = (
   'SL::Controller::TopQuickSearch::Contact',
   'SL::Controller::TopQuickSearch::SalesQuotation',
   'SL::Controller::TopQuickSearch::SalesOrder',
+  'SL::Controller::TopQuickSearch::SalesDeliveryOrder',
   'SL::Controller::TopQuickSearch::RequestForQuotation',
   'SL::Controller::TopQuickSearch::PurchaseOrder',
+  'SL::Controller::TopQuickSearch::PurchaseDeliveryOrder',
   'SL::Controller::TopQuickSearch::GLTransaction',
   'SL::Controller::TopQuickSearch::Customer',
   'SL::Controller::TopQuickSearch::Vendor',
+  'SL::Controller::TopQuickSearch::PhoneNumber',
 );
 my %modules_by_name;
 
@@ -70,19 +73,15 @@ sub enabled_modules {
     namespace         => 'TopQuickSearch',
   );
 
-  my %enabled_names;
+  my @quick_search_modules;
   if (my $prefs_val = $user_prefs->get('quick_search_modules')) {
-    my @quick_search_modules = split ',', $prefs_val;
-
-    %enabled_names = map {
-      $_ => 1
-    } @quick_search_modules ;
+    @quick_search_modules = split ',', $prefs_val;
   } else {
-    %enabled_names = map {
-      $_ => 1
-    } @{ $::instance_conf->get_quick_search_modules };
+    @quick_search_modules = @{ $::instance_conf->get_quick_search_modules };
   }
 
+  my %enabled_names = map { $_ => 1 } @quick_search_modules;
+
   grep {
     $enabled_names{$_->name}
   } $_[0]->available_modules
@@ -90,7 +89,7 @@ sub enabled_modules {
 
 sub active_modules {
   grep {
-    $::auth->assert($_->auth, 1)
+    !$_->auth || $::auth->assert($_->auth, 1)
   } $_[0]->enabled_modules
 }
 
@@ -103,7 +102,7 @@ sub init_module {
 
   die 'Unknown module ' . $::form->{module} unless my $class = $modules_by_name{$::form->{module}};
 
-  $::auth->assert($class->auth);
+  $::auth->assert($class->auth) if $class->auth;
 
   return $class->new;
 }