/** * Gibt die für die Suche verfügbaren Module zurück * * @return array */ public function getModules() { $searchModules = []; foreach ($this->availableModulesRegistrar->getAvailableModuleNames() as $module) { if ($this->acl->hasPermission('frontend/' . $module) === true) { $info = $this->modules->getModuleInfo($module); $name = $info['name']; $searchModules[$name] = ['dir' => $module, 'checked' => $this->formsHelper->selectEntry('mods', $module, $module, 'checked'), 'name' => $name]; } } ksort($searchModules); return $searchModules; }
/** * @param array $modules * @param string $searchTerm * @param string $area * @param string $sort * @return array */ protected function processSearchResults(array $modules, $searchTerm, $area, $sort) { $searchResults = []; foreach ($this->availableModulesRegistrar->getAvailableModules() as $moduleName => $searchAvailability) { if (in_array($moduleName, $modules) && $this->acl->hasPermission('frontend/' . $moduleName)) { $results = $searchAvailability->fetchSearchResults($searchTerm, $area, $sort); if (!empty($results)) { $searchResults[$moduleName] = $results; } } } ksort($searchResults); return $searchResults; }