public function searchIndexTask() { // Display CMS errors foreach ($this->getErrors() as $error) { $this->view->setError($error); } // Instantiate search engine $hubSearch = new SearchEngine(); // Get all of the registered hubtypes $this->view->types = HubType::all()->rows(); // Count indexed documents foreach ($this->view->types as $type) { // Search across everything $queryString = '*:*'; // Perform an overall search $search = $hubSearch->search($queryString)->addFacet('count', 'hubtype:' . $type->type); // Get the result, but don't chain it back $result = $search->getResult(); // Get facet count $type->docCount = $search->getFacetCount('count'); // Fields description $type->structure = $type->structure(); } // Display the view $this->view->display(); }
public function saveSchemaTask() { $pairings = Request::getVar('input', array()); $pairings = serialize($pairings); // The Hubtype $type = Request::getVar('type', ''); $hubType = HubType::all()->where('type', '=', $type)->row(); $hubType->set('documentMatching', $pairings); if (!$hubType->save()) { // error } // Add hubType to search index table $queue = IndexQueue::oneOrNew(0); $queue->set('hubtype_id', $hubType->get('id')); if (!$queue->save()) { // error } App::redirect(Route::url('index.php?option=' . $this->_option . '&controller=solr&task=searchindex', false), 'Successfully added to index queue.', 'success'); }