?
Path : /home/admin/public_html/old/promice/components/com_weblinks/models/ |
Current File : /home/admin/public_html/old/promice/components/com_weblinks/models/categories.php |
<?php /** * @version $Id: categories.php 14401 2010-01-26 14:10:00Z louis $ * @package Joomla * @subpackage Content * @copyright Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved. * @license GNU/GPL, see LICENSE.php * Joomla! is free software. This version may have been modified pursuant to the * GNU General Public License, and as distributed it includes or is derivative * of works licensed under the GNU General Public License or other free or open * source software licenses. See COPYRIGHT.php for copyright notices and * details. */ // Check to ensure this file is included in Joomla! defined( '_JEXEC' ) or die( 'Restricted access' ); jimport('joomla.application.component.model'); /** * Weblinks Component Categories Model * * @package Joomla * @subpackage Weblinks * @since 1.5 */ class WeblinksModelCategories extends JModel { /** * Categories data array * * @var array */ var $_data = null; /** * Categories total * * @var integer */ var $_total = null; /** * Constructor * * @since 1.5 */ function __construct() { parent::__construct(); } /** * Method to get weblink item data for the category * * @access public * @return array */ function getData() { // Lets load the content if it doesn't already exist if (empty($this->_data)) { $query = $this->_buildQuery(); $this->_data = $this->_getList($query); } return $this->_data; } /** * Method to get the total number of weblink items for the category * * @access public * @return integer */ function getTotal() { // Lets load the content if it doesn't already exist if (empty($this->_total)) { $query = $this->_buildQuery(); $this->_total = $this->_getListCount($query); } return $this->_total; } function _buildQuery() { $user =& JFactory::getUser(); $aid = $user->get('aid', 0); //Query to retrieve all categories that belong under the web links section and that are published. $query = 'SELECT cc.*, COUNT(a.id) AS numlinks,' .' CASE WHEN CHAR_LENGTH(cc.alias) THEN CONCAT_WS(\':\', cc.id, cc.alias) ELSE cc.id END as slug' .' FROM #__categories AS cc' .' LEFT JOIN #__weblinks AS a ON a.catid = cc.id' .' WHERE a.published = 1' .' AND section = \'com_weblinks\'' .' AND cc.published = 1' .' AND cc.access <= '.(int) $aid .' GROUP BY cc.id' .' ORDER BY cc.ordering'; return $query; } } ?>