Example #1
0
 public function generateContent()
 {
     global $site;
     global $parametersMod;
     $site->requireTemplate('administrator/search/template.php');
     if ($this->getId() == null) {
         return Template::noSearchString($parametersMod->getValue('administrator', 'search', 'translations', 'search'), $parametersMod->getValue('administrator', 'search', 'translations', 'no_search_word'));
     }
     $searchableZones = explode("\n", $parametersMod->getValue('administrator', 'search', 'options', 'searchable_zones'));
     $combinedZones = explode("\n", $parametersMod->getValue('administrator', 'search', 'options', 'combined_zones'));
     $foundElements = array();
     $foundElementsCombined = array();
     $searchWords = explode(" ", $site->getVars['q']);
     foreach ($searchableZones as $key => $value) {
         if ($value != '') {
             $tmpElements = $site->getZone($value)->getAllElements();
             $tmpFoundElements = $this->search($site->getZone($value), $tmpElements, $searchWords);
             $combined = false;
             foreach ($combinedZones as $combKey => $combinedValue) {
                 if ($combinedValue == $value) {
                     $combined = true;
                 }
             }
             if ($combined) {
                 $foundElementsCombined = array_merge($foundElementsCombined, $tmpFoundElements);
             } else {
                 if (sizeof($tmpFoundElements) > 0) {
                     $foundElements[$value] = $tmpFoundElements;
                 }
             }
         }
     }
     $answer = '';
     usort($foundElementsCombined, 'Modules\\administrator\\search\\Element::compareRank');
     if (sizeof($foundElements) > 0 || sizeof($foundElementsCombined) > 0) {
         return Template::searchResult($parametersMod->getValue('administrator', 'search', 'translations', 'search'), $foundElementsCombined, $foundElements);
     } else {
         return Template::noResults($parametersMod->getValue('administrator', 'search', 'translations', 'search'), $parametersMod->getValue('administrator', 'search', 'translations', 'no_results'));
     }
 }