[ Index ]

PHP Cross Reference of Joomla 1.5.26 DE

title

Body

[close]

/modules/mod_whosonline/ -> helper.php (source)

   1  <?php
   2  /**
   3  * @version        $Id: helper.php 14401 2010-01-26 14:10:00Z louis $
   4  * @package        Joomla
   5  * @copyright    Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved.
   6  * @license        GNU/GPL, see LICENSE.php
   7  * Joomla! is free software. This version may have been modified pursuant
   8  * to the GNU General Public License, and as distributed it includes or
   9  * is derivative of works licensed under the GNU General Public License or
  10  * other free or open source software licenses.
  11  * See COPYRIGHT.php for copyright notices and details.
  12  */
  13  
  14  // no direct access
  15  defined('_JEXEC') or die('Restricted access');
  16  
  17  class modWhosonlineHelper {
  18  
  19      // show online count
  20  	function getOnlineCount() {
  21          $db          =& JFactory::getDBO();
  22          $sessions = null;
  23          // calculate number of guests and members
  24          $result      = array();
  25          $user_array  = 0;
  26          $guest_array = 0;
  27  
  28          $query = 'SELECT guest, usertype, client_id' .
  29                      ' FROM #__session' .
  30                      ' WHERE client_id = 0';
  31          $db->setQuery($query);
  32          $sessions = $db->loadObjectList();
  33  
  34          if ($db->getErrorNum()) {
  35              JError::raiseWarning( 500, $db->stderr() );
  36          }
  37  
  38          if (count($sessions)) {
  39              foreach ($sessions as $session) {
  40                  // if guest increase guest count by 1
  41                  if ($session->guest == 1 && !$session->usertype) {
  42                      $guest_array ++;
  43                  }
  44                  // if member increase member count by 1
  45                  if ($session->guest == 0) {
  46                      $user_array ++;
  47                  }
  48              }
  49          }
  50  
  51          $result['user']  = $user_array;
  52          $result['guest'] = $guest_array;
  53  
  54          return $result;
  55      }
  56  
  57      // show online member names
  58  	function getOnlineMemberNames() {
  59          $db        =& JFactory::getDBO();
  60          $result    = null;
  61  
  62          $query = 'SELECT DISTINCT a.username' .
  63                   ' FROM #__session AS a' .
  64                   ' WHERE client_id = 0' .
  65                   ' AND a.guest = 0';
  66          $db->setQuery($query);
  67          $result = $db->loadObjectList();
  68  
  69          if ($db->getErrorNum()) {
  70              JError::raiseWarning( 500, $db->stderr() );
  71          }
  72  
  73          return $result;
  74      }
  75  }


Generated: Wed Mar 28 15:54:07 2012 Cross-referenced by PHPXref 0.7.1