예제 #1
0
 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++;
         }
     }
 }
예제 #2
0
 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 .= "]";
     }
 }
예제 #3
0
 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']);
 }
예제 #4
0
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;
예제 #5
0
/**
 * @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 = "";