Exemplo n.º 1
0
 public static function treerecurse(&$params, $id = 0, $level = 0, $begin = false)
 {
     static $output;
     if ($begin) {
         $output = '';
     }
     $mainframe = JFactory::getApplication();
     $root_id = (int) $params->get('root_id');
     $end_level = $params->get('end_level', NULL);
     $id = (int) $id;
     $catid = JRequest::getInt('id');
     $option = JRequest::getCmd('option');
     $view = JRequest::getCmd('view');
     $user = JFactory::getUser();
     $aid = (int) $user->get('aid');
     $db = JFactory::getDBO();
     switch ($params->get('categoriesListOrdering')) {
         case 'alpha':
             $orderby = 'name';
             break;
         case 'ralpha':
             $orderby = 'name DESC';
             break;
         case 'order':
             $orderby = 'ordering';
             break;
         case 'reversedefault':
             $orderby = 'id DESC';
             break;
         default:
             $orderby = 'id ASC';
             break;
     }
     if ($root_id != 0 && $level == 0) {
         $query = "SELECT * FROM #__k2_categories WHERE parent={$root_id} AND published=1 AND trash=0 ";
     } else {
         $query = "SELECT * FROM #__k2_categories WHERE parent={$id} AND published=1 AND trash=0 ";
     }
     if (K2_JVERSION != '15') {
         $query .= " AND access IN(" . implode(',', $user->getAuthorisedViewLevels()) . ") ";
         if ($mainframe->getLanguageFilter()) {
             $languageTag = JFactory::getLanguage()->getTag();
             $query .= " AND language IN (" . $db->Quote($languageTag) . ", " . $db->Quote('*') . ") ";
         }
     } else {
         $query .= " AND access <= {$aid}";
     }
     $query .= " ORDER BY {$orderby}";
     $db->setQuery($query);
     $rows = $db->loadObjectList();
     if ($db->getErrorNum()) {
         echo $db->stderr();
         return false;
     }
     if ($level < intval($end_level) || is_null($end_level)) {
         $output .= '<ul class="level' . $level . '">';
         foreach ($rows as $row) {
             $string_color1 = strstr($row->name, "|");
             $string_color2 = str_replace("|", "#", $string_color1);
             $string_cate = str_replace($string_color1, "", $row->name);
             if ($params->get('categoriesListItemsCounter')) {
                 $row->numOfItems = ' (' . modK2ToolsHelper::countCategoryItems($row->id) . ')';
             } else {
                 $row->numOfItems = '';
             }
             if ($option == 'com_k2' && $view == 'itemlist' && $catid == $row->id) {
                 $active = ' class="activeCategory"';
             } else {
                 $active = '';
             }
             if (modK2ToolsHelper::hasChildren($row->id)) {
                 $output .= '<li' . $active . '><a href="' . urldecode(JRoute::_(K2HelperRoute::getCategoryRoute($row->id . ':' . urlencode($row->alias)))) . '"><span class="catTitle">' . $string_cate . '</span><span class="catCounter">' . $row->numOfItems . '</span></a>';
                 modK2ToolsHelper::treerecurse($params, $row->id, $level + 1);
                 $output .= '</li>';
             } else {
                 $output .= '<li' . $active . '><a href="' . urldecode(JRoute::_(K2HelperRoute::getCategoryRoute($row->id . ':' . urlencode($row->alias)))) . '"><span class="catTitle">' . $string_cate . '</span><span class="catCounter">' . $row->numOfItems . '</span></a></li>';
             }
         }
         $output .= '</ul>';
     }
     return $output;
 }
Exemplo n.º 2
0
     require JModuleHelper::getLayoutPath('mod_k2_tools', 'authors');
     break;
 case '2':
     $calendar = modK2ToolsHelper::calendar($params);
     require JModuleHelper::getLayoutPath('mod_k2_tools', 'calendar');
     break;
 case '3':
     //if (JRequest::getVar('option') == 'com_k2' && (JRequest::getCmd('task') == 'category' || JRequest::getInt('id'))) {
     $breadcrumbs = modK2ToolsHelper::breadcrumbs($params);
     $path = $breadcrumbs[0];
     $title = $breadcrumbs[1];
     require JModuleHelper::getLayoutPath('mod_k2_tools', 'breadcrumbs');
     //}
     break;
 case '4':
     $output = modK2ToolsHelper::treerecurse($params, 0, 0, true);
     require JModuleHelper::getLayoutPath('mod_k2_tools', 'categories');
     break;
 case '5':
     echo modK2ToolsHelper::treeselectbox($params);
     break;
 case '6':
     if ($imagebutton) {
         $img = modK2ToolsHelper::getSearchImage($button_text);
     }
     require JModuleHelper::getLayoutPath('mod_k2_tools', 'search');
     break;
 case '7':
     $tags = modK2ToolsHelper::tagCloud($params);
     if (count($tags)) {
         require JModuleHelper::getLayoutPath('mod_k2_tools', 'tags');
Exemplo n.º 3
0
 function treerecurse(&$params, $id = 0, $level = 0, $begin = false)
 {
     static $output;
     if ($begin) {
         $output = '';
     }
     $root_id = (int) $params->get('root_id');
     $end_level = $params->get('end_level', NULL);
     $id = (int) $id;
     $catid = JRequest::getInt('id');
     $option = JRequest::getCmd('option');
     $view = JRequest::getCmd('view');
     $user =& JFactory::getUser();
     $aid = (int) $user->get('aid');
     $db =& JFactory::getDBO();
     switch ($params->get('categoriesListOrdering')) {
         case 'alpha':
             $orderby = 'name';
             break;
         case 'ralpha':
             $orderby = 'name DESC';
             break;
         case 'order':
             $orderby = 'ordering';
             break;
         case 'reversedefault':
             $orderby = 'id DESC';
             break;
         default:
             $orderby = 'id ASC';
             break;
     }
     if ($root_id != 0 && $level == 0) {
         $query = "SELECT * FROM #__k2_categories WHERE parent={$root_id} AND published=1 AND trash=0 AND access<={$aid} ORDER BY {$orderby}";
     } else {
         $query = "SELECT * FROM #__k2_categories WHERE parent={$id} AND published=1 AND trash=0 AND access<={$aid} ORDER BY {$orderby}";
     }
     $db->setQuery($query);
     $rows = $db->loadObjectList();
     if ($db->getErrorNum()) {
         echo $db->stderr();
         return false;
     }
     if ($level < intval($end_level) || is_null($end_level)) {
         $output .= '<ul class="level' . $level . '">';
         foreach ($rows as $row) {
             if ($params->get('categoriesListItemsCounter')) {
                 $row->numOfItems = ' (' . modK2ToolsHelper::countCategoryItems($row->id) . ')';
             } else {
                 $row->numOfItems = '';
             }
             if ($option == 'com_k2' && $view == 'itemlist' && $catid == $row->id) {
                 $active = ' class="activeCategory"';
             } else {
                 $active = '';
             }
             if (modK2ToolsHelper::hasChildren($row->id)) {
                 $output .= '<li' . $active . '><a href="' . urldecode(JRoute::_(K2HelperRoute::getCategoryRoute($row->id . ':' . urlencode($row->alias)))) . '"><span>' . $row->name . $row->numOfItems . '</span></a>';
                 modK2ToolsHelper::treerecurse($params, $row->id, $level + 1);
                 $output .= '</li>';
             } else {
                 $output .= '<li' . $active . '><a href="' . urldecode(JRoute::_(K2HelperRoute::getCategoryRoute($row->id . ':' . urlencode($row->alias)))) . '"><span>' . $row->name . $row->numOfItems . '</span></a></li>';
             }
         }
         $output .= '</ul>';
     }
     return $output;
 }