protected function _getList($params, $module) { $list = array(); $retur = array(); if ($params->get('catfilter')) { $cid = $params->get('category_id', NULL); } else { $itemListModel = K2Model::getInstance('Itemlist', 'K2Model'); $cid = $itemListModel->getCategoryTree($category = 0); } if (!empty($cid)) { $is_ajax = !empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest'; if (!$is_ajax) { self::$total = self::getTotal($cid, $params); } $categories = self::getCategories($params); foreach ($categories as $cat) { $category = $cat; $category->count = 0; $list[$category->id] = $category; } $retur['categories'] = $list; $items = self::getItems($cid, $params); if (!empty($items)) { foreach ($items as $key => $item) { $category = $list[$item->catid]; if (isset($category->count)) { $category->count++; } else { $category->count = 1; } } $retur['items'] = $items; } if ($params->get('tab_all_display', 1)) { $all = new stdClass(); $all->id = '*'; $all->count = count($items); $all->title = JText::_('All'); array_unshift($retur['categories'], $all); } // default select $catidpreload = $params->get('category_preload'); $selected = false; foreach ($retur['categories'] as $cat) { if ($cat->id == $catidpreload && $cat->count > 0) { $cat->sel = 'sel'; $selected = true; } } // first tab is active if (!$selected) { foreach ($retur['categories'] as $cat) { if ($cat->count > 0) { $cat->sel = 'sel'; break; } } } return $retur; } else { return; } }