function traverse_tree_down(&$mymenu_content, $category_id = '0', $level = '0', $shopper_group_id) { static $ibg = 0; global $Itemid, $urlpath, $sortparam; $db = JFactory::getDbo(); $objhelper = new redhelper(); $Itemid = JRequest::getInt('Itemid'); $level++; $redproduct_menu = new modProMenuHelper(); if ($shopper_group_id) { $shoppergroup_cat = $redproduct_menu->get_shoppergroup_cat($shopper_group_id); } $query = "SELECT category_name as cname, category_id as cid, category_child_id as ccid FROM #__redshop_category as a " . "LEFT JOIN #__redshop_category_xref as b ON a.category_id=b.category_child_id " . "WHERE a.published=1 " . "AND b.category_parent_id=" . (int) $category_id; if ($shopper_group_id && count($shoppergroup_cat) > 0) { $query .= " and category_id in (" . $shoppergroup_cat[0] . ")"; } $query .= " ORDER BY " . $sortparam . ""; $db->setQuery($query); $categories = $db->loadObjectList(); if (!($categories == null)) { $i = 1; $numCategories = count($categories); foreach ($categories as $category) { $ibg++; $Treeid = $ibg; $cItemid = $objhelper->getCategoryItemid($category->cid); if ($cItemid != "") { $tmpItemid = $cItemid; } else { $tmpItemid = $Itemid; } $mymenu_content .= str_repeat("\t", $level - 1); if ($level > 1 && $i == 1) { $mymenu_content .= ","; } $mymenu_content .= "['" . $category->cname; //$mymenu_content.= "','href='".JRoute::_($urlpath.'index.php?option=com_redshop&view=category&layout=detail&cid='.$category->cid.'&Treeid='.$Treeid.$itemid)."\''\n "; $mymenu_content .= "','href=\\'" . JRoute::_('index.php?option=com_redshop&view=category&layout=detail&cid=' . $category->cid . '&Treeid=' . $Treeid . '&Itemid=' . $tmpItemid) . "\\''\n "; /* recurse through the subcategories */ $this->traverse_tree_down($mymenu_content, $category->ccid, $level, $shopper_group_id); $mymenu_content .= str_repeat("\t", $level - 1); /* let's see if the loop has reached its end */ if ($i == sizeof($categories) && $level == 1) { $mymenu_content .= "]\n"; } else { $mymenu_content .= "],\n"; } $i++; } } }
function traverse_tree_down(&$mymenu_content, $category_id = '0', $level = '0', $params = '', $shopper_group_id) { static $ibg = 0; global $urlpath, $redproduct_menu; $db = JFactory::getDbo(); $level++; $redproduct_menu = new modProMenuHelper(); if ($params->get('categorysorttype') == "catnameasc") { $sortparam = "category_name ASC"; } if ($params->get('categorysorttype') == "catnamedesc") { $sortparam = "category_name DESC"; } if ($params->get('categorysorttype') == "newest") { $sortparam = "category_id DESC"; } if ($params->get('categorysorttype') == "catorder") { $sortparam = "ordering ASC"; } if ($shopper_group_id) { $shoppergroup_cat = $redproduct_menu->get_shoppergroup_cat($shopper_group_id); } $query = "SELECT category_name, category_id, category_child_id FROM #__redshop_category AS a " . "LEFT JOIN #__redshop_category_xref as b ON a.category_id=b.category_child_id " . "WHERE a.published='1' " . "AND b.category_parent_id= " . (int) $category_id; if ($shopper_group_id && count($shoppergroup_cat) > 0) { $query .= " and category_id IN(" . $shoppergroup_cat[0] . ")"; } $query .= " ORDER BY " . $sortparam . ""; // ."ORDER BY ".$sortparam.""; $db->setQuery($query); $traverse_results = $db->loadObjectList(); $objhelper = new redhelper(); $Itemid = JRequest::getInt('Itemid'); foreach ($traverse_results as $traverse_result) { $cItemid = $objhelper->getCategoryItemid($traverse_result->category_id); if ($cItemid != "") { $tmpItemid = $cItemid; } else { $tmpItemid = $Itemid; } if ($ibg != 0) { $mymenu_content .= ","; } $mymenu_content .= "\n[ '<img src=\"' + ctThemeXPBase + 'darrow.png\" alt=\"arr\" />','" . $traverse_result->category_name . "','" . JRoute::_('index.php?option=com_redshop&view=category&layout=detail&cid=' . $traverse_result->category_id . '&Itemid=' . $tmpItemid) . "',null,'" . $traverse_result->category_name . "'\n "; $ibg++; /* recurse through the subcategories */ $this->traverse_tree_down($mymenu_content, $traverse_result->category_child_id, $level, $params, $shopper_group_id); /* let's see if the loop has reached its end */ $mymenu_content .= "]"; } }
function loadMenu($shopper_group_id) { global $my, $database, $cur_template, $Itemid, $urlpath; $redproduct_menu = new modProMenuHelper(); if ($this->_params->get('categorysorttype') == "catnameasc") { $sortparam = "category_name ASC"; } if ($this->_params->get('categorysorttype') == "catnamedesc") { $sortparam = "category_name DESC"; } if ($this->_params->get('categorysorttype') == "newest") { $sortparam = "category_id DESC"; } if ($this->_params->get('categorysorttype') == "catorder") { $sortparam = "ordering ASC"; } if ($shopper_group_id) { $shoppergroup_cat = $redproduct_menu->get_shoppergroup_cat($shopper_group_id); } $query = "SELECT category_id as id, category_parent_id as parent, category_name as name, '' as type,\r\n\t\t\t\t\t\t\tCONCAT('index.php?option=com_redshop&view=category&layout=detail&cid=', category_id ) AS link,\r\n\t\t\t\t\t\t\t'-1' as browserNav, ordering\r\n\t\t\t\t\t\t\t\tFROM #__redshop_category, #__redshop_category_xref\r\n\t\t\t\t\t\t\t\tWHERE #__redshop_category.published='1'\r\n\t\t\t\t\t\t\t\tAND #__redshop_category.category_id=#__redshop_category_xref.category_child_id "; if ($shopper_group_id && count($shoppergroup_cat) > 0) { $query .= " and category_id in (" . $shoppergroup_cat[0] . ")"; } $query .= " ORDER BY " . $sortparam . ""; $this->_db->setQuery($query); $rows = $this->_db->loadObjectList('id'); // establish the hierarchy of the menu $this->children = array(); // first pass - collect children foreach ($rows as $v) { $pt = $v->parent; $list = @$this->children[$pt] ? $this->children[$pt] : array(); array_push($list, $v); $this->children[$pt] = $list; } // second pass - collect 'open' menus $this->open = array(@$_REQUEST['cid']); }
global $root_label, $jscook_type, $jscookMenu_style, $jscookTree_style, $mm_action_url, $urlpath, $Itemid, $redproduct_menu, $categorysorttype; $uri = JURI::getInstance(); $urlpath = $uri->root(); $user = JFactory::getUser(); $db = JFactory::getDbo(); //get category id $category_id = JRequest::getInt('cid'); unset($GLOBALS['category_info']['category_tree']); //get Item id $Itemid = JRequest::getInt('Itemid', '1'); //get module path $mod_dir = dirname(__FILE__); define('CATEGORY_MODULE_PATH', $mod_dir); $js_src = $urlpath . '/modules/mod_redshop_categories'; require_once CATEGORY_MODULE_PATH . '/helper.php'; $redproduct_menu = new modProMenuHelper(); /* Get module parameters */ $show_noofproducts = $params->get('show_noofproducts', 'yes'); $menutype = $params->get('menutype', "links"); $class_sfx = $params->get('class_sfx', ''); $pretext = $params->get('pretext', ''); $posttext = $params->get('posttext', ''); $jscookMenu_style = $params->get('jscookMenu_style', 'ThemeOffice'); $jscookTree_style = $params->get('jscookTree_style', 'ThemeXP'); $jscook_type = $params->get('jscook_type', 'menu'); $menu_orientation = $params->get('menu_orientation', 'hbr'); $root_label = $params->get('root_label', 'Shop'); $categorysorttype = $params->get('categorysorttype', 'catname'); $use_shoppergroup = $params->get('use_shoppergroup', 'no'); if ($use_shoppergroup == "yes") { $shopper_group_id = SHOPPER_GROUP_DEFAULT_UNREGISTERED;
/** * @package RedSHOP.Frontend * @subpackage mod_redshop_categories * * @copyright Copyright (C) 2005 - 2013 redCOMPONENT.com. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ if (!defined('_JEXEC')) { die('Direct Access to ' . basename(__FILE__) . ' is not allowed.'); } global $root_label, $urlpath; $urllive = $urlpath; $db = JFactory::getDbo(); $objhelper = new redhelper(); $Itemid = JRequest::getInt('Itemid', '1'); $redproduct_menu = new modProMenuHelper(); /************** CATEGORY TREE *******************************/ /* dTree API, default value * change to fit your needs **/ $useSelection = 'true'; $useLines = 'true'; $useIcons = 'true'; $useStatusText = 'false'; $useCookies = 'false'; $closeSameLevel = 'false'; // if all folders should be open, we will ignore the closeSameLevel $openAll = 'false'; if ($openAll == "true") { $closeSameLevel = "false"; } $menu_htmlcode = "";