Ejemplo n.º 1
0
    public static function getTopRated()
    {
        try {
            $user = JFactory::getUser();
            $userid = $user->get('id');
            $groups = JAccess::getGroupsByUser($userid, true);
            $results = array();
            $db = JFactory::getDBO();
            $query = '  
			SELECT
				c.*,
				sum(rating) as totRating
			FROM
            	#__gg_rating AS r
			Inner Join #__gg_contenuti AS c ON c.id = r.id_contenuto
			Inner Join #__gg_contenuti_acl AS acl ON acl.id_contenuto = c.id

			WHERE  id_group in (' . implode(",", $groups) . ')	

			GROUP BY c.id
			ORDER BY totRating desc
			LIMIT 12
			';
            $db->setQuery($query);
            // FB::LOG($query, 'getMostView');
            if (false === ($results = $db->loadAssocList())) {
                throw new RuntimeException($db->getErrorMsg(), E_USER_ERROR);
            }
            foreach ($results as &$contenuto) {
                $contenuto['prerequisiti'] = gglmsHelper::_chek_prerequisiti($contenuto['id']);
                $contenuto['stato'] = gglmsHelper::_check_stato($contenuto['id']);
                $contenuto['giavisto'] = gglmsHelper::getGiaVisto($contenuto['id']);
                $contenuto['views'] = gglmsHelper::getViews($contenuto['id']);
            }
        } catch (Exception $e) {
        }
        return $results;
    }