Current File : /home/pacjaorg/public_html/km/components/com_djclassifieds/models/plans.php |
<?php
/**
* @package DJ-Classifieds
* @copyright Copyright (C) DJ-Extensions.com, All rights reserved.
* @license http://www.gnu.org/licenses GNU/GPL
* @author url: http://dj-extensions.com
* @author email contact@dj-extensions.com
*/
defined ('_JEXEC') or die('Restricted access');
class DjclassifiedsModelPlans extends DJClassifiedsModel
{
function getPlans($ids = null)
{
$db = JFactory::getDBO();
$user = JFactory::getUser();
$query = "SELECT p.*, g.g_active, ga.g_all "
."FROM #__djcf_plans p "
."LEFT JOIN (SELECT COUNT(id) as g_active, plan_id FROM #__djcf_plans_groups g WHERE group_id IN (".($user->groups ? implode(',', $user->groups) : '0').") GROUP BY plan_id ) g ON g.plan_id=p.id "
."LEFT JOIN (SELECT COUNT(id) as g_all, plan_id FROM #__djcf_plans_groups g GROUP BY plan_id) ga ON ga.plan_id=p.id "
."WHERE p.published=1 AND (g.g_active>0 OR ga.g_all IS NULL) "
.($ids ? "AND p.id IN (".implode(',', $ids).") " : "")
."ORDER BY p.ordering";
$db->setQuery($query);
$plans = $db->loadObjectList();
foreach($plans as $key => $plan){
if($plan->one_time){
$query = "SELECT p.id FROM #__djcf_plans_subscr ps INNER JOIN #__djcf_plans p ON p.id=ps.plan_id WHERE ps.user_id=".$user->id;
$db->setQuery($query);
$all_user_plans = $db->loadColumn();
if(in_array($plan->id, $all_user_plans)){
unset($plans[$key]);
continue;
}
}
$plans[$key]->show_labels = count(explode(',', $plan->hidden_labels)) < 16 ? true : false;
}
return $plans;
}
}