headTitle($this->translate('Advanced Search')); // Disable top search box -- this page has a special layout. $this->layout()->searchbox = false; // Set up breadcrumbs: $this->layout()->breadcrumbs = '
  • '; $lastSearchLink = $this->searchMemory()->getLastSearchLink($this->transEsc('Search')); $this->layout()->breadcrumbs .= !empty($lastSearchLink) ? $lastSearchLink : $this->transEsc('Search'); $this->layout()->breadcrumbs .= '
  • ' . $this->transEsc('Advanced') . '
  • '; // Set up saved search details: if (isset($this->saved) && is_object($this->saved)) { $searchDetails = $this->saved->getParams()->getQuery(); if ($searchDetails instanceof \VuFindSearch\Query\Query) { // Not an advanced query -- ignore it. $searchDetails = $groups = false; } else { $groups = $searchDetails->getQueries(); } $hasDefaultsApplied = $this->saved->getParams()->hasDefaultsApplied(); $searchFilters = $this->saved->getParams()->getFilterList(); $hiddenFilters = $this->saved->getParams()->getHiddenFilters(); } else { $hasDefaultsApplied = $searchDetails = $searchFilters = $groups = false; $hiddenFilters = $this->searchtabs()->getHiddenFilters($this->searchClassId, true); } // Step 1: Load the javascript $this->headScript()->appendFile( isset($this->advancedSearchJsOverride) ? $this->advancedSearchJsOverride : 'advanced_search.js' ); // Step 2: Build the page $this->headScript()->appendScript( $this->partial( isset($this->buildPageOverride) ? $this->buildPageOverride : 'search/advanced/build_page.phtml', ['options' => $this->options, 'searchDetails' => $searchDetails] ) ); // Collect previous search queries $setSearchGroups = []; $setGroupCount = 0; $setQueries = []; if (isset($searchDetails) && is_object($searchDetails)) { foreach ($searchDetails->getQueries() as $group=>$searchGroup) { $setSearchGroups[$group] = $searchGroup->isNegated() ? 'NOT' : $searchGroup->getOperator(); if ($setGroupCount < $group) { $setGroupCount = $group; } if (!isset($setQueries[$group])) { $setQueries[$group] = []; } foreach ($searchGroup->getQueries() as $search) { $setQueries[$group][] = $search; } } } ?> flashmessages()?>
    $filter): ?>
    searchMemory()->getLastSort($this->searchClassId); ?>

    transEsc('Advanced Search')?>

    formOverride)): ?> formOverride ?>
    name='filter' value='(format:"Electronic resource" OR medium:"Electronic resource")' /> transEsc('Filter_electronic_resource')?>
    extraAdvancedControls)): ?>
    extraAdvancedControls ?>

    transEsc("adv_search_filters")?>

    $data): ?>
    transEsc($field)?>

    transEsc("Help")?>