/**
  * Initializes the search component.
  *
  *
  */
 public function initializeSearchComponent()
 {
     $allowedSites = Tx_Solr_Util::resolveSiteHashAllowedSites($GLOBALS['TSFE']->id, $this->searchConfiguration['query.']['allowedSites']);
     $this->query->setSiteHashFilter($allowedSites);
     $this->query->setUserAccessGroups(explode(',', $GLOBALS['TSFE']->gr_list));
 }
Beispiel #2
0
EidUtility::initTCA();
$GLOBALS['TSFE']->sys_page = GeneralUtility::makeInstance('TYPO3\\CMS\\Frontend\\Page\\PageRepository');
$GLOBALS['TSFE']->rootLine = $GLOBALS['TSFE']->sys_page->getRootLine($pageId, '');
$GLOBALS['TSFE']->initTemplate();
$GLOBALS['TSFE']->getConfigArray();
$GLOBALS['TSFE']->sys_language_uid = $languageId;
$solrConfiguration = Tx_Solr_Util::getSolrConfiguration();
#--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
# Building Suggest Query
$q = trim(GeneralUtility::_GP('termLowercase'));
$isOpenSearchRequest = FALSE;
if ('OpenSearch' == GeneralUtility::_GET('format')) {
    $isOpenSearchRequest = TRUE;
    $q = GeneralUtility::_GET('q');
}
$allowedSites = Tx_Solr_Util::resolveSiteHashAllowedSites($pageId, $solrConfiguration['search.']['query.']['allowedSites']);
$suggestQuery = GeneralUtility::makeInstance('Tx_Solr_SuggestQuery', $q);
$suggestQuery->setUserAccessGroups(explode(',', $GLOBALS['TSFE']->gr_list));
$suggestQuery->setSiteHashFilter($allowedSites);
$suggestQuery->setOmitHeader();
$additionalFilters = GeneralUtility::_GET('filters');
if (!empty($additionalFilters)) {
    $additionalFilters = json_decode($additionalFilters);
    foreach ($additionalFilters as $additionalFilter) {
        $suggestQuery->addFilter($additionalFilter);
    }
}
#--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
// Search
$solr = GeneralUtility::makeInstance('Tx_Solr_ConnectionManager')->getConnectionByPageId($pageId, $languageId);
$search = GeneralUtility::makeInstance('Tx_Solr_Search', $solr);