/**
  * Searches for a passed string
  *
  * @return string
  * @permissions view
  */
 protected function actionDoSearch()
 {
     $strReturn = "";
     $objSearch = new class_module_search_search();
     $objSearch->setStrPortalLangFilter($this->getStrPortalLanguage());
     if ($this->getParam("searchterm") != "") {
         $objSearch->setStrQuery(htmlToString(urldecode($this->getParam("searchterm")), true));
     }
     $arrResult = array();
     $objSearchCommons = new class_module_search_commons();
     if ($objSearch->getStrQuery() != "") {
         $arrResult = $objSearchCommons->doPortalSearch($objSearch);
     }
     $strReturn .= $this->createSearchXML($objSearch->getStrQuery(), $arrResult);
     return $strReturn;
 }
 /**
  * Counts the number of hits
  *
  * @param class_module_search_search $objSearch
  *
  * @return int
  */
 public function getIndexedSearchCount($objSearch)
 {
     $objParser = new class_module_search_query_parser();
     $objSearchQuery = $objParser->parseText($objSearch->getStrQuery());
     if ($objSearchQuery == null) {
         return 0;
     }
     $objSearchQuery->setMetadataFilter($this->getMetadataFilterFromSearch($objSearch));
     $strQuery = "";
     $arrParameters = array();
     $objSearchQuery->getCountQuery($strQuery, $arrParameters);
     $arrSearchResult = $this->objDB->getPRow($strQuery, $arrParameters);
     return $arrSearchResult["COUNT(*)"];
 }