/** * Removes the elements / modules handled by the current installer. * Use the reference param to add a human readable logging. * * @param string &$strReturn * * @return bool */ public function remove(&$strReturn) { //delete the page-element if (class_module_system_module::getModuleByName("pages") !== null && class_module_pages_element::getElement("search") != null) { $objElement = class_module_pages_element::getElement("search"); if ($objElement != null) { $strReturn .= "Deleting page-element 'search'...\n"; $objElement->deleteObjectFromDatabase(); } else { $strReturn .= "Error finding page-element 'search', aborting.\n"; return false; } } /** @var class_module_search_search $objOneObject */ foreach (class_module_search_search::getObjectList() as $objOneObject) { $strReturn .= "Deleting object '" . $objOneObject->getStrDisplayName() . "' ...\n"; if (!$objOneObject->deleteObjectFromDatabase()) { $strReturn .= "Error deleting object, aborting.\n"; return false; } } //delete the module-node $strReturn .= "Deleting the module-registration...\n"; $objModule = class_module_system_module::getModuleByName($this->objMetadata->getStrTitle(), true); if (!$objModule->deleteObjectFromDatabase()) { $strReturn .= "Error deleting module, aborting.\n"; return false; } //delete the tables foreach (array("search_search", "search_log", "element_search", "search_ix_document", "search_ix_content") as $strOneTable) { $strReturn .= "Dropping table " . $strOneTable . "...\n"; if (!$this->objDB->_pQuery("DROP TABLE " . $this->objDB->encloseTableName(_dbprefix_ . $strOneTable) . "", array())) { $strReturn .= "Error deleting table, aborting.\n"; return false; } } return true; }
/** * Renders the general list of records * * @return string * @permissions view * @autoTestable */ protected function actionList() { $objArraySectionIterator = new class_array_section_iterator(class_module_search_search::getObjectCount()); $objArraySectionIterator->setPageNumber((int) ($this->getParam("pv") != "" ? $this->getParam("pv") : 1)); $objArraySectionIterator->setArraySection(class_module_search_search::getObjectList(false, $objArraySectionIterator->calculateStartPos(), $objArraySectionIterator->calculateEndPos())); return $this->renderList($objArraySectionIterator); }
public function getAdminForm() { $objForm = parent::getAdminForm(); $arrRawQueries = class_module_search_search::getObjectList(); $arrQueries = array(); foreach ($arrRawQueries as $objOneQuery) { $arrQueries[$objOneQuery->getSystemid()] = $objOneQuery->getStrDisplayName(); } $objForm->getField("query")->setArrKeyValues($arrQueries); return $objForm; }