1752171309 gFFBC%2BJB4H%3AphpDocumentor-projectDescriptor-files-eda21a3b7098b00b16e628fd9958b92b O:39:"phpDocumentor\Descriptor\FileDescriptor":23:{s:8:"*fqsen";N;s:7:"*name";s:22:"CombinedController.php";s:12:"*namespace";s:0:"";s:10:"*package";s:10:"Controller";s:10:"*summary";s:26:"Combined Search Controller";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:728:"PHP version 8 Copyright (C) Villanova University 2010. Copyright (C) The National Library of Finland 2024. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2, as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:17:"*fileDescriptor";N;s:7:"*line";i:0;s:7:"*tags";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:5:{s:8:"category";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:38:"phpDocumentor\Descriptor\TagDescriptor":3:{s:7:"*name";s:8:"category";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:6:"VuFind";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}}}}s:7:"package";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:38:"phpDocumentor\Descriptor\TagDescriptor":3:{s:7:"*name";s:7:"package";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:10:"Controller";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}}}}s:6:"author";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:2:{i:0;O:45:"phpDocumentor\Descriptor\Tag\AuthorDescriptor":3:{s:7:"*name";s:6:"author";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:39:"Demian Katz ";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}}i:1;O:45:"phpDocumentor\Descriptor\Tag\AuthorDescriptor":3:{s:7:"*name";s:6:"author";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:37:"Ere Maijala ";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}}}}s:7:"license";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:38:"phpDocumentor\Descriptor\TagDescriptor":3:{s:7:"*name";s:7:"license";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:69:"http://opensource.org/licenses/gpl-2.0.php GNU General Public License";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}}}}s:4:"link";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:43:"phpDocumentor\Descriptor\Tag\LinkDescriptor":4:{s:7:"*name";s:4:"link";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:9:"Main Site";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:7:"*link";s:18:"https://vufind.org";}}}}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:19:"*inheritedElement";N;s:7:"*hash";s:32:"5ccc36eaa98f9d7f43ce9385182b360f";s:7:"*path";s:51:"VuFind/src/VuFind/Controller/CombinedController.php";s:9:"*source";s:14415:" * @author Ere Maijala * @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License * @link https://vufind.org Main Site */ namespace VuFind\Controller; use Laminas\ServiceManager\ServiceLocatorInterface; use VuFind\Search\SearchRunner; use function count; use function in_array; use function intval; use function is_array; /** * Redirects the user to the appropriate default VuFind action. * * @category VuFind * @package Controller * @author Demian Katz * @author Ere Maijala * @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License * @link https://vufind.org Main Site */ class CombinedController extends AbstractSearch { use AjaxResponseTrait; /** * Constructor * * @param ServiceLocatorInterface $sm Service locator */ public function __construct(ServiceLocatorInterface $sm) { $this->searchClassId = 'Combined'; parent::__construct($sm); } /** * Home action * * @return mixed */ public function homeAction() { // We need to load blocks differently in this controller since it // doesn't follow the usual configuration pattern. $blocks = $this->serviceLocator->get(\VuFind\ContentBlock\BlockLoader::class) ->getFromConfig('combined'); return $this->createViewModel(compact('blocks')); } /** * Single result action (used for AJAX) * * @return mixed */ public function resultAction() { $this->disableSessionWrites(); // avoid session write timing bug // Turn off search memory -- not relevant in this context: $this->getSearchMemory()->disable(); // Validate configuration: $sectionId = $this->params()->fromQuery('id'); $optionsManager = $this->serviceLocator->get(\VuFind\Search\Options\PluginManager::class); $combinedOptions = $optionsManager->get('combined'); $tabConfig = $combinedOptions->getTabConfig(); if (!isset($tabConfig[$sectionId])) { throw new \Exception('Illegal ID'); } [$searchClassId] = explode(':', $sectionId); // Retrieve results: $currentOptions = $optionsManager->get($searchClassId); [$controller, $action] = explode('-', $currentOptions->getSearchAction()); $settings = $tabConfig[$sectionId]; $this->adjustQueryForSettings( $settings, $currentOptions->getHandlerForLabel($this->params()->fromQuery('type')) ); $settings['view'] = $this->forwardTo($controller, $action); // Should we suppress content due to emptiness? if ( ($settings['hide_if_empty'] ?? false) && $settings['view']->results->getResultTotal() <= 0 ) { $html = ''; } else { $viewParams = [ 'searchClassId' => $searchClassId, 'currentSearch' => $settings, 'domId' => 'combined_' . str_replace(':', '____', $sectionId), ]; // Initialize theme resources: ($this->getViewRenderer()->plugin('setupThemeResources'))(true); // Render content: $html = $this->getViewRenderer()->render( 'combined/results-list.phtml', $viewParams ); // Prepend CSS in case of custom files added by templates: $html = ($this->getViewRenderer()->plugin('headLink'))() . $html; } return $this->getAjaxResponse('text/html', $html); } /** * Results action * * @return mixed */ public function resultsAction() { // Set up current request context: $request = $this->getRequest()->getQuery()->toArray() + $this->getRequest()->getPost()->toArray(); $results = $this->serviceLocator->get(SearchRunner::class)->run( $request, 'Combined', $this->getSearchSetupCallback() ); // Remember the current URL, then disable memory so multi-search results // don't overwrite it: $this->rememberSearch($results); $this->getSearchMemory()->disable(); // Gather combined results: $combinedResults = []; $optionsManager = $this->serviceLocator->get(\VuFind\Search\Options\PluginManager::class); $combinedOptions = $optionsManager->get('combined'); // Save the initial type value, since it may get manipulated below: $initialType = $this->params()->fromQuery('type'); foreach ($combinedOptions->getTabConfig() as $current => $settings) { [$searchClassId] = explode(':', $current); $currentOptions = $optionsManager->get($searchClassId); $this->adjustQueryForSettings( $settings, $currentOptions->getHandlerForLabel($initialType) ); [$controller, $action] = explode('-', $currentOptions->getSearchAction()); $combinedResults[$current] = $settings; // Calculate a unique DOM id for this section of the search results; // $searchClassId may contain colons, which must be converted. $combinedResults[$current]['domId'] = 'combined_' . str_replace(':', '____', $current); $permissionDenied = isset($settings['permission']) && !$this->permission()->isAuthorized($settings['permission']); $isAjax = $settings['ajax'] ?? false; $combinedResults[$current]['view'] = ($permissionDenied || $isAjax) ? $this->createViewModel(['results' => $results]) : $this->forwardTo($controller, $action); // Special case: include appropriate "powered by" message: if (strtolower($searchClassId) == 'summon') { $this->layout()->poweredBy = 'Powered by Summon™ from Serials ' . 'Solutions, a division of ProQuest.'; } } // Restore the initial type value to the query to prevent weird behavior: $this->getRequest()->getQuery()->type = $initialType; // Run the search to obtain recommendations: $results->performAndProcessSearch(); $actualMaxColumns = count($combinedResults); $config = $this->serviceLocator->get(\VuFind\Config\PluginManager::class)->get('combined')->toArray(); $columnConfig = intval($config['Layout']['columns'] ?? $actualMaxColumns); $columns = min($columnConfig, $actualMaxColumns); $placement = $config['Layout']['stack_placement'] ?? 'distributed'; if (!in_array($placement, ['distributed', 'left', 'right', 'grid'])) { $placement = 'distributed'; } // Identify if any modules use include_recommendations_side or // include_recommendations_noresults_side. $columnSideRecommendations = []; $recommendationManager = $this->serviceLocator->get(\VuFind\Recommend\PluginManager::class); foreach ($config as $subconfig) { foreach (['include_recommendations_side', 'include_recommendations_noresults_side'] as $type) { if (is_array($subconfig[$type] ?? false)) { foreach ($subconfig[$type] as $recommendation) { $recommendationModuleName = strtok($recommendation, ':'); $recommendationModule = $recommendationManager->get($recommendationModuleName); $columnSideRecommendations[] = str_replace('\\', '_', $recommendationModule::class); } } } } // Build view model: return $this->createViewModel( [ 'columns' => $columns, 'combinedResults' => $combinedResults, 'config' => $config, 'params' => $results->getParams(), 'placement' => $placement, 'results' => $results, 'columnSideRecommendations' => $columnSideRecommendations, ] ); } /** * Action to process the combined search box. * * @return mixed */ public function searchboxAction() { [$type, $target] = explode(':', $this->params()->fromQuery('type'), 2); switch ($type) { case 'VuFind': [$searchClassId, $type] = explode('|', $target); $params = $this->getRequest()->getQuery()->toArray(); $params['type'] = $type; // Disable retained filters if we are switching classes! $activeClass = $this->params()->fromQuery('activeSearchClassId'); if ($activeClass != $searchClassId) { unset($params['filter']); } // We don't need to pass activeSearchClassId forward: unset($params['activeSearchClassId']); $route = $this->serviceLocator ->get(\VuFind\Search\Options\PluginManager::class) ->get($searchClassId)->getSearchAction(); $base = $this->url()->fromRoute($route); return $this->redirect() ->toUrl($base . '?' . http_build_query($params)); case 'External': $lookfor = $this->params()->fromQuery('lookfor'); $finalTarget = (!str_contains($target, '%%lookfor%%')) ? $target . urlencode($lookfor) : str_replace('%%lookfor%%', urlencode($lookfor), $target); return $this->redirect()->toUrl($finalTarget); default: // If parameters are completely missing, redirect to home instead // of throwing an error; this is possibly a misbehaving crawler that // followed the SearchBox URL without passing any parameters. if (empty($type) && empty($target)) { return $this->redirect()->toRoute('home'); } // If we have a weird value here, report it as an Exception: throw new \VuFind\Exception\BadRequest( 'Unexpected search type: "' . $type . '".' ); } } /** * Adjust the query context to reflect the current settings. * * @param array $settings Settings * @param string $searchType Override for search handler name * * @return void */ protected function adjustQueryForSettings($settings, $searchType = null) { // Apply limit setting, if any: $query = $this->getRequest()->getQuery(); $query->limit = $settings['limit'] ?? null; // Apply filters, if any: $query->filter = isset($settings['filter']) ? (array)$settings['filter'] : null; // Apply hidden filters, if any: $query->hiddenFilters = isset($settings['hiddenFilter']) ? (array)$settings['hiddenFilter'] : null; // Apply shards, if any: $query->shard = isset($settings['shard']) ? (array)$settings['shard'] : null; // Reset override to avoid bleed-over from one section to the next! $query->recommendOverride = false; // Always disable 'jumpto' setting, as it does not make sense to // load a record view in the context of combined search. $query->jumpto = false; // Override the search type: $query->type = $searchType; // Display or hide top based on include_recommendations setting. $recommendOverride = []; $noRecommend = []; $includeRecommendSetting = $settings['include_recommendations'] ?? false; if (is_array($includeRecommendSetting)) { $recommendOverride['top'] = $settings['include_recommendations']; } elseif (!$includeRecommendSetting) { $noRecommend[] = 'top'; } // Display or hide side based on include_recommendations_side setting. if (is_array($settings['include_recommendations_side'] ?? false)) { $recommendOverride['side'] = $settings['include_recommendations_side']; } else { $noRecommend[] = 'side'; } // Display or hide no results recommendations, based on // include_recommendations_noresults setting (to display them in the bento box) or // include_recommendations_noresults_side setting (to display them in the sidebar). $includeRecommendNoResultsSetting = $settings['include_recommendations_noresults'] ?? false; if (is_array($includeRecommendNoResultsSetting)) { $recommendOverride['noresults'] = $settings['include_recommendations_noresults']; } elseif (!$includeRecommendNoResultsSetting) { $noRecommend[] = 'noresults'; } if (is_array($settings['include_recommendations_noresults_side'] ?? false)) { $recommendOverride['noresults_side'] = $settings['include_recommendations_noresults_side']; } else { $noRecommend[] = 'noresults_side'; } $query->recommendOverride = $recommendOverride; $query->noRecommend = count($noRecommend) ? implode(',', $noRecommend) : false; } } ";s:19:"*namespaceAliases";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{s:18:"\VuFind\Controller";O:30:"phpDocumentor\Reflection\Fqsen":2:{s:37:"phpDocumentor\Reflection\Fqsenfqsen";s:18:"\VuFind\Controller";s:36:"phpDocumentor\Reflection\Fqsenname";s:10:"Controller";}}}s:11:"*includes";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:12:"*constants";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:12:"*functions";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:10:"*classes";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{s:37:"\VuFind\Controller\CombinedController";O:40:"phpDocumentor\Descriptor\ClassDescriptor":19:{s:8:"*fqsen";O:30:"phpDocumentor\Reflection\Fqsen":2:{s:37:"phpDocumentor\Reflection\Fqsenfqsen";s:37:"\VuFind\Controller\CombinedController";s:36:"phpDocumentor\Reflection\Fqsenname";s:18:"CombinedController";}s:7:"*name";s:18:"CombinedController";s:12:"*namespace";s:18:"\VuFind\Controller";s:10:"*package";s:10:"Controller";s:10:"*summary";s:60:"Redirects the user to the appropriate default VuFind action.";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:17:"*fileDescriptor";r:1;s:7:"*line";i:52;s:7:"*tags";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:5:{s:8:"category";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:38:"phpDocumentor\Descriptor\TagDescriptor":3:{s:7:"*name";s:8:"category";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:6:"VuFind";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}}}}s:7:"package";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:38:"phpDocumentor\Descriptor\TagDescriptor":3:{s:7:"*name";s:7:"package";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:10:"Controller";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}}}}s:6:"author";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:2:{i:0;O:45:"phpDocumentor\Descriptor\Tag\AuthorDescriptor":3:{s:7:"*name";s:6:"author";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:39:"Demian Katz ";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}}i:1;O:45:"phpDocumentor\Descriptor\Tag\AuthorDescriptor":3:{s:7:"*name";s:6:"author";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:37:"Ere Maijala ";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}}}}s:7:"license";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:38:"phpDocumentor\Descriptor\TagDescriptor":3:{s:7:"*name";s:7:"license";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:69:"http://opensource.org/licenses/gpl-2.0.php GNU General Public License";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}}}}s:4:"link";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:43:"phpDocumentor\Descriptor\Tag\LinkDescriptor":4:{s:7:"*name";s:4:"link";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:9:"Main Site";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:7:"*link";s:18:"https://vufind.org";}}}}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:19:"*inheritedElement";N;s:9:"*parent";O:30:"phpDocumentor\Reflection\Fqsen":2:{s:37:"phpDocumentor\Reflection\Fqsenfqsen";s:33:"\VuFind\Controller\AbstractSearch";s:36:"phpDocumentor\Reflection\Fqsenname";s:14:"AbstractSearch";}s:13:"*implements";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:11:"*abstract";b:0;s:8:"*final";b:0;s:12:"*constants";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:13:"*properties";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:10:"*methods";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:6:{s:11:"__construct";O:41:"phpDocumentor\Descriptor\MethodDescriptor":19:{s:8:"*fqsen";O:30:"phpDocumentor\Reflection\Fqsen":2:{s:37:"phpDocumentor\Reflection\Fqsenfqsen";s:52:"\VuFind\Controller\CombinedController::__construct()";s:36:"phpDocumentor\Reflection\Fqsenname";s:11:"__construct";}s:7:"*name";s:11:"__construct";s:12:"*namespace";s:18:"\VuFind\Controller";s:10:"*package";N;s:10:"*summary";s:11:"Constructor";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:17:"*fileDescriptor";N;s:7:"*line";i:61;s:7:"*tags";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{s:5:"param";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:44:"phpDocumentor\Descriptor\Tag\ParamDescriptor":5:{s:7:"*name";s:5:"param";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:15:"Service locator";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:8:"*types";O:38:"phpDocumentor\Reflection\Types\Object_":1:{s:45:"phpDocumentor\Reflection\Types\Object_fqsen";O:30:"phpDocumentor\Reflection\Fqsen":2:{s:37:"phpDocumentor\Reflection\Fqsenfqsen";s:47:"\Laminas\ServiceManager\ServiceLocatorInterface";s:36:"phpDocumentor\Reflection\Fqsenname";s:23:"ServiceLocatorInterface";}}s:15:"*variableName";s:2:"sm";}}}}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:19:"*inheritedElement";N;s:9:"*parent";r:100;s:11:"*abstract";b:0;s:8:"*final";b:0;s:9:"*static";b:0;s:13:"*visibility";s:6:"public";s:12:"*arguments";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{s:2:"sm";O:43:"phpDocumentor\Descriptor\ArgumentDescriptor":16:{s:8:"*fqsen";N;s:7:"*name";s:2:"sm";s:12:"*namespace";s:0:"";s:10:"*package";N;s:10:"*summary";s:0:"";s:14:"*description";r:219;s:17:"*fileDescriptor";N;s:7:"*line";i:61;s:7:"*tags";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:19:"*inheritedElement";N;s:9:"*method";r:198;s:7:"*type";r:226;s:10:"*default";N;s:14:"*byReference";b:0;s:13:"*isVariadic";b:0;}}}s:53:"phpDocumentor\Descriptor\MethodDescriptorreturnType";O:37:"phpDocumentor\Reflection\Types\Mixed_":0:{}s:63:"phpDocumentor\Descriptor\MethodDescriptorhasReturnByReference";b:0;}s:10:"homeAction";O:41:"phpDocumentor\Descriptor\MethodDescriptor":19:{s:8:"*fqsen";O:30:"phpDocumentor\Reflection\Fqsen":2:{s:37:"phpDocumentor\Reflection\Fqsenfqsen";s:51:"\VuFind\Controller\CombinedController::homeAction()";s:36:"phpDocumentor\Reflection\Fqsenname";s:10:"homeAction";}s:7:"*name";s:10:"homeAction";s:12:"*namespace";s:18:"\VuFind\Controller";s:10:"*package";N;s:10:"*summary";s:11:"Home action";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:17:"*fileDescriptor";N;s:7:"*line";i:72;s:7:"*tags";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{s:6:"return";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:45:"phpDocumentor\Descriptor\Tag\ReturnDescriptor":4:{s:7:"*name";s:6:"return";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:8:"*types";O:37:"phpDocumentor\Reflection\Types\Mixed_":0:{}}}}}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:19:"*inheritedElement";N;s:9:"*parent";r:100;s:11:"*abstract";b:0;s:8:"*final";b:0;s:9:"*static";b:0;s:13:"*visibility";s:6:"public";s:12:"*arguments";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:53:"phpDocumentor\Descriptor\MethodDescriptorreturnType";O:37:"phpDocumentor\Reflection\Types\Mixed_":0:{}s:63:"phpDocumentor\Descriptor\MethodDescriptorhasReturnByReference";b:0;}s:12:"resultAction";O:41:"phpDocumentor\Descriptor\MethodDescriptor":19:{s:8:"*fqsen";O:30:"phpDocumentor\Reflection\Fqsen":2:{s:37:"phpDocumentor\Reflection\Fqsenfqsen";s:53:"\VuFind\Controller\CombinedController::resultAction()";s:36:"phpDocumentor\Reflection\Fqsenname";s:12:"resultAction";}s:7:"*name";s:12:"resultAction";s:12:"*namespace";s:18:"\VuFind\Controller";s:10:"*package";N;s:10:"*summary";s:36:"Single result action (used for AJAX)";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:17:"*fileDescriptor";N;s:7:"*line";i:86;s:7:"*tags";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{s:6:"return";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:45:"phpDocumentor\Descriptor\Tag\ReturnDescriptor":4:{s:7:"*name";s:6:"return";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:8:"*types";O:37:"phpDocumentor\Reflection\Types\Mixed_":0:{}}}}}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:19:"*inheritedElement";N;s:9:"*parent";r:100;s:11:"*abstract";b:0;s:8:"*final";b:0;s:9:"*static";b:0;s:13:"*visibility";s:6:"public";s:12:"*arguments";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:53:"phpDocumentor\Descriptor\MethodDescriptorreturnType";O:37:"phpDocumentor\Reflection\Types\Mixed_":0:{}s:63:"phpDocumentor\Descriptor\MethodDescriptorhasReturnByReference";b:0;}s:13:"resultsAction";O:41:"phpDocumentor\Descriptor\MethodDescriptor":19:{s:8:"*fqsen";O:30:"phpDocumentor\Reflection\Fqsen":2:{s:37:"phpDocumentor\Reflection\Fqsenfqsen";s:54:"\VuFind\Controller\CombinedController::resultsAction()";s:36:"phpDocumentor\Reflection\Fqsenname";s:13:"resultsAction";}s:7:"*name";s:13:"resultsAction";s:12:"*namespace";s:18:"\VuFind\Controller";s:10:"*package";N;s:10:"*summary";s:14:"Results action";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:17:"*fileDescriptor";N;s:7:"*line";i:145;s:7:"*tags";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{s:6:"return";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:45:"phpDocumentor\Descriptor\Tag\ReturnDescriptor":4:{s:7:"*name";s:6:"return";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:8:"*types";O:37:"phpDocumentor\Reflection\Types\Mixed_":0:{}}}}}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:19:"*inheritedElement";N;s:9:"*parent";r:100;s:11:"*abstract";b:0;s:8:"*final";b:0;s:9:"*static";b:0;s:13:"*visibility";s:6:"public";s:12:"*arguments";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:53:"phpDocumentor\Descriptor\MethodDescriptorreturnType";O:37:"phpDocumentor\Reflection\Types\Mixed_":0:{}s:63:"phpDocumentor\Descriptor\MethodDescriptorhasReturnByReference";b:0;}s:15:"searchboxAction";O:41:"phpDocumentor\Descriptor\MethodDescriptor":19:{s:8:"*fqsen";O:30:"phpDocumentor\Reflection\Fqsen":2:{s:37:"phpDocumentor\Reflection\Fqsenfqsen";s:56:"\VuFind\Controller\CombinedController::searchboxAction()";s:36:"phpDocumentor\Reflection\Fqsenname";s:15:"searchboxAction";}s:7:"*name";s:15:"searchboxAction";s:12:"*namespace";s:18:"\VuFind\Controller";s:10:"*package";N;s:10:"*summary";s:42:"Action to process the combined search box.";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:17:"*fileDescriptor";N;s:7:"*line";i:247;s:7:"*tags";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{s:6:"return";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:45:"phpDocumentor\Descriptor\Tag\ReturnDescriptor":4:{s:7:"*name";s:6:"return";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:8:"*types";O:37:"phpDocumentor\Reflection\Types\Mixed_":0:{}}}}}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:19:"*inheritedElement";N;s:9:"*parent";r:100;s:11:"*abstract";b:0;s:8:"*final";b:0;s:9:"*static";b:0;s:13:"*visibility";s:6:"public";s:12:"*arguments";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:53:"phpDocumentor\Descriptor\MethodDescriptorreturnType";O:37:"phpDocumentor\Reflection\Types\Mixed_":0:{}s:63:"phpDocumentor\Descriptor\MethodDescriptorhasReturnByReference";b:0;}s:22:"adjustQueryForSettings";O:41:"phpDocumentor\Descriptor\MethodDescriptor":19:{s:8:"*fqsen";O:30:"phpDocumentor\Reflection\Fqsen":2:{s:37:"phpDocumentor\Reflection\Fqsenfqsen";s:63:"\VuFind\Controller\CombinedController::adjustQueryForSettings()";s:36:"phpDocumentor\Reflection\Fqsenname";s:22:"adjustQueryForSettings";}s:7:"*name";s:22:"adjustQueryForSettings";s:12:"*namespace";s:18:"\VuFind\Controller";s:10:"*package";N;s:10:"*summary";s:57:"Adjust the query context to reflect the current settings.";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:17:"*fileDescriptor";N;s:7:"*line";i:298;s:7:"*tags";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:2:{s:5:"param";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:2:{i:0;O:44:"phpDocumentor\Descriptor\Tag\ParamDescriptor":5:{s:7:"*name";s:5:"param";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:8:"Settings";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:8:"*types";O:37:"phpDocumentor\Reflection\Types\Array_":3:{s:12:"*valueType";O:37:"phpDocumentor\Reflection\Types\Mixed_":0:{}s:10:"*keyType";N;s:17:"*defaultKeyType";O:39:"phpDocumentor\Reflection\Types\Compound":2:{s:52:"phpDocumentor\Reflection\Types\AggregatedTypetypes";a:2:{i:0;O:38:"phpDocumentor\Reflection\Types\String_":0:{}i:1;O:38:"phpDocumentor\Reflection\Types\Integer":0:{}}s:52:"phpDocumentor\Reflection\Types\AggregatedTypetoken";s:1:"|";}}s:15:"*variableName";s:8:"settings";}i:1;O:44:"phpDocumentor\Descriptor\Tag\ParamDescriptor":5:{s:7:"*name";s:5:"param";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:32:"Override for search handler name";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:8:"*types";O:38:"phpDocumentor\Reflection\Types\String_":0:{}s:15:"*variableName";s:10:"searchType";}}}s:6:"return";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{i:0;O:45:"phpDocumentor\Descriptor\Tag\ReturnDescriptor":4:{s:7:"*name";s:6:"return";s:14:"*description";O:55:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptor":2:{s:68:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptordescription";O:45:"phpDocumentor\Reflection\DocBlock\Description":2:{s:59:"phpDocumentor\Reflection\DocBlock\DescriptionbodyTemplate";s:0:"";s:51:"phpDocumentor\Reflection\DocBlock\Descriptiontags";a:0:{}}s:67:"phpDocumentor\Descriptor\DocBlock\DescriptionDescriptorinlineTags";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:8:"*types";O:36:"phpDocumentor\Reflection\Types\Void_":0:{}}}}}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:19:"*inheritedElement";N;s:9:"*parent";r:100;s:11:"*abstract";b:0;s:8:"*final";b:0;s:9:"*static";b:0;s:13:"*visibility";s:9:"protected";s:12:"*arguments";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:2:{s:8:"settings";O:43:"phpDocumentor\Descriptor\ArgumentDescriptor":16:{s:8:"*fqsen";N;s:7:"*name";s:8:"settings";s:12:"*namespace";s:0:"";s:10:"*package";N;s:10:"*summary";s:0:"";s:14:"*description";r:447;s:17:"*fileDescriptor";N;s:7:"*line";i:298;s:7:"*tags";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:19:"*inheritedElement";N;s:9:"*method";r:426;s:7:"*type";r:454;s:10:"*default";N;s:14:"*byReference";b:0;s:13:"*isVariadic";b:0;}s:10:"searchType";O:43:"phpDocumentor\Descriptor\ArgumentDescriptor":16:{s:8:"*fqsen";N;s:7:"*name";s:10:"searchType";s:12:"*namespace";s:0:"";s:10:"*package";N;s:10:"*summary";s:0:"";s:14:"*description";r:465;s:17:"*fileDescriptor";N;s:7:"*line";i:298;s:7:"*tags";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:9:"*errors";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:19:"*inheritedElement";N;s:9:"*method";r:426;s:7:"*type";r:472;s:10:"*default";s:4:"null";s:14:"*byReference";b:0;s:13:"*isVariadic";b:0;}}}s:53:"phpDocumentor\Descriptor\MethodDescriptorreturnType";O:37:"phpDocumentor\Reflection\Types\Mixed_":0:{}s:63:"phpDocumentor\Descriptor\MethodDescriptorhasReturnByReference";b:0;}}}s:13:"*usedTraits";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:1:{s:36:"\VuFind\Controller\AjaxResponseTrait";O:30:"phpDocumentor\Reflection\Fqsen":2:{s:37:"phpDocumentor\Reflection\Fqsenfqsen";s:36:"\VuFind\Controller\AjaxResponseTrait";s:36:"phpDocumentor\Reflection\Fqsenname";s:17:"AjaxResponseTrait";}}}}}}s:13:"*interfaces";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:9:"*traits";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:10:"*markers";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}s:46:"phpDocumentor\Descriptor\FileDescriptorenums";O:35:"phpDocumentor\Descriptor\Collection":1:{s:8:"*items";a:0:{}}}