public function addToSearchIndex(&$data) { $class = get_class($data['model']); $class = explode('\\', $class); $class = end($class); $this->searchStore->updateSearchIndex($class, $data['content_id'], $data['content']); return true; }
public function index() { $this->searchStore = Store::get('SearchIndex'); $query = $this->getParam('q', ''); $this->setTitle($query, 'Search ' . $this->config->get('site.name')); $this->addBreadcrumb('Search', '/search?q=' . $query); $results = $this->searchStore->search($query); $results = array_map([$this, 'render'], $results); $this->view->query = $query; $this->view->results = $results; }
public function index() { $query = $this->getParam('q', ''); $results = $this->searchStore->search($query); $results = array_map([$this, 'render'], $results); $results = array_filter($results); $view = new Template('Search/results'); $view->query = $query; $view->results = $results; $view->page = ['title' => 'Search results for "' . $query . '" on ' . $this->config->get('site.name')]; $output = $view->render(); return $output; }
public function index() { $query = $this->getParam('q', ''); $results = $this->searchStore->search($query); $results = array_map([$this, 'render'], $results); $view = Template::load('Search/results'); $view->query = $query; $view->results = $results; $dataStore = ['breadcrumb' => [['uri' => '/', 'title' => 'Home', 'active' => false], ['uri' => '/search', 'title' => 'Search', 'active' => false], ['uri' => '/search?q=' . $query, 'title' => $query, 'active' => true]]]; $blockManager = new BlockManager(); $blockManager->setDataStore($dataStore); $blockManager->setRequest($this->request); $blockManager->setResponse($this->response); $blockManager->attachToTemplate($view); $output = $view->render(); $data = ['page' => null, 'version' => null, 'output' => &$output, 'datastore' => $blockManager->getDataStore()]; Event::trigger('PageLoaded', $data); return $output; }