use SL::Locale::String qw(t8);
 use SL::PriceSource::ALL;
 use SL::Template;
+use SL::Controller::TopQuickSearch;
 
 __PACKAGE__->run_before('check_auth');
 
 use Rose::Object::MakeMethods::Generic (
-  'scalar --get_set_init' => [ qw(defaults all_warehouses all_weightunits all_languages all_currencies all_templates all_price_sources h_unit_name
+  'scalar --get_set_init' => [ qw(defaults all_warehouses all_weightunits all_languages all_currencies all_templates all_price_sources h_unit_name available_quick_search_modules
+                                  all_project_statuses all_project_types
                                   posting_options payment_options accounting_options inventory_options profit_options balance_startdate_method_options) ],
 );
 
 sub init_all_currencies  { SL::DB::Manager::Currency->get_all_sorted                                                     }
 sub init_all_weightunits { my $unit = SL::DB::Manager::Unit->find_by(name => 'kg'); $unit ? $unit->convertible_units : [] }
 sub init_all_templates   { +{ SL::Template->available_templates }                                                        }
-sub init_h_unit_name     { first { SL::DB::Manager::Unit->find_by(name => $_) } qw(Std h Stunde)                         };
+sub init_h_unit_name     { first { SL::DB::Manager::Unit->find_by(name => $_) } qw(Std h Stunde)                         }
+sub init_all_project_types    { SL::DB::Manager::ProjectType->get_all_sorted                                             }
+sub init_all_project_statuses { SL::DB::Manager::ProjectStatus->get_all_sorted                                           }
 
 sub init_posting_options {
   [ { title => t8("never"),           value => 0           },
   [ map { [ $_->name, $_->description ] } @classes ];
 }
 
+sub init_available_quick_search_modules {
+  [ SL::Controller::TopQuickSearch->new->available_modules ];
+}
+
 #
 # filters
 #