grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026configurator = $configurator; } /** * Factory method for nice fluent syntax. * * @return SearchConfigurator */ public static function make() { return new self(); } /** * Configure the Search Framework configuration only based on the search engine. * * This supports the fake engine names used to refer to the legacy search. * * @param string $engine * * @return SearchConfigurator */ public function setEngine($engine) { if (empty($engine)) { throw new InvalidArgumentException('$engine cannot be empty'); } if (!is_string($engine)) { throw new InvalidArgumentException('$engine must be a string'); } $searchController = 'UnifiedSearch'; $enableAod = false; switch ($engine) { case 'BasicSearchEngine': // Only basic search break; case 'BasicAndAodEngine': // Basic search and AOD $enableAod = true; break; default: // SearchWrapper with a specific engine $searchController = 'Search'; } $this->configurator->config['search']['controller'] = $searchController; $this->configurator->config['search']['defaultEngine'] = $engine; $this->configurator->config['aod']['enable_aod'] = $enableAod; return $this; } /** * Saves the current configuration. * * @return SearchConfigurator */ public function save() { $this->configurator->saveConfig(); return $this; } }