function parseCategories(&$matches, $count) { $categories = array(); for ($i = 0; $i < $count; $i++) { $cat = array(); $param_line = $matches[1][$i]; $cat['title'] = YOOsearchHelper::getParam($param_line, 'title', 'Unknown title'); $cat['text'] = YOOsearchHelper::stripText($matches[2][$i]); $cat['url'] = JRoute::_(YOOsearchHelper::getParam($param_line, 'url', '#'), false); $cat['image'] = YOOsearchHelper::getParam($param_line, 'image', ''); $cat['keywords'] = YOOsearchHelper::getParam($param_line, 'keywords', ''); if ($cat['image'] != '') { $cat['image'] = JURI::base() . 'images/' . $cat['image']; } $categories[] = $cat; } return $categories; }
if (strlen($search) > 2 && is_array($categories)) { foreach ($categories as $category) { if (strpos($category['keywords'], $search) !== false) { unset($category['keywords']); $cat_items[] = $category; } } } } // search results $res_items = array(); if (!$this->error && count($this->results) > 0) { foreach ($this->results as $result) { $item = array(); $item['title'] = $result->title; $item['text'] = substr(YOOsearchHelper::stripText($result->text), 0, $char_limit); $item['text'] = substr_replace($item['text'], '...', strrpos($item['text'], ' ')); $item['url'] = JRoute::_($result->href, false); $res_items[] = $item; } } // limit result $cat_items = array_slice($cat_items, 0, $cat_limit); $res_items = array_slice($res_items, 0, $res_limit); echo YOOsearchHelper::encodeJson(array('categories' => $cat_items, 'results' => $res_items, 'count' => count($this->results), 'error' => $this->error)); } else { ?> <div class="joomla <?php echo $this->escape($this->params->get('pageclass_sfx')); ?>