Seite 3 von 3

Verfasst: 02.03.2004 11:56
von Acid
Dann poste mal, wie du die page_header.php angepasst hast.

Verfasst: 02.03.2004 19:50
von Pseiko
page_header.php

Code: Alles auswählen

$online_userlist = '';

if (defined('SHOW_ONLINE'))
{
include_once($phpbb_root_path.'includes/functions_color_groups.'.$phpEx);
	
// Start replacement - Topic in Who is online MOD
$user_forum_sql = ( !empty($topic_id) ) ? "AND s.session_topic = " . intval($topic_id) :(( !empty($forum_id) ) ? "AND s.session_page = ".intval($forum_id) : '');
// End replacement - Topic in Who is online MOD
	$sql = "SELECT u.username, u.user_id, u.user_allow_viewonline, u.user_level, s.session_logged_in, s.session_ip
		FROM ".USERS_TABLE." u, ".SESSIONS_TABLE." s
		WHERE u.user_id = s.session_user_id
			AND s.session_time >= ".( time() - 300 ) . "
			$user_forum_sql
		ORDER BY u.username ASC, s.session_ip ASC";
	if( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Could not obtain user/online information', '', __LINE__, __FILE__, $sql);
	}

	$userlist_ary = array();
	$userlist_visible = array();

	$prev_user_id = 0;
	$prev_user_ip = '';

	while( $row = $db->sql_fetchrow($result) )
	{
		// User is logged in and therefor not a guest
		if ( $row['session_logged_in'] )
		{
			// Skip multiple sessions for one user
			if ( $row['user_id'] != $prev_user_id )
			{
//--------------------------------------------------------------------------------
// Prillian - Begin Code Addition
//
				$online_array[] = $row['user_id'];
//
// Prillian - End Code Addition
//--------------------------------------------------------------------------------
				$user_online_link = color_group_colorize_name($row['user_id']);
				if ( $row['user_allow_viewonline'] )
				{
					$logged_visible_online++;
				}
				else
				{
					$logged_hidden_online++;
				}
			}

			$prev_user_id = $row['user_id'];
		}
		else
		{
			// Skip multiple sessions for one user
			if ( $row['session_ip'] != $prev_session_ip )
			{
				$guests_online++;
			}
		}

		$prev_session_ip = $row['session_ip'];
	}
	$db->sql_freeresult($result);

	if ( empty($online_userlist) )
	{
		$online_userlist = $lang['None'];
	}
	// Start replacement - Topic in Who is online MOD
$online_userlist = $lang['Registered_users'].' ' . $online_userlist;
// End replacement - Topic in Who is online MOD

	$total_online_users = $logged_visible_online + $logged_hidden_online + $guests_online;

	if ( $total_online_users > $board_config['record_online_users'])
	{
		$board_config['record_online_users'] = $total_online_users;
		$board_config['record_online_date'] = time();

		$sql = "UPDATE " . CONFIG_TABLE . "
			SET config_value = '$total_online_users'
			WHERE config_name = 'record_online_users'";
		if ( !$db->sql_query($sql) )
		{
			message_die(GENERAL_ERROR, 'Could not update online user record (nr of users)', '', __LINE__, __FILE__, $sql);
		}

		$sql = "UPDATE " . CONFIG_TABLE . "
			SET config_value = '" . $board_config['record_online_date'] . "'
			WHERE config_name = 'record_online_date'";
		if ( !$db->sql_query($sql) )
		{
			message_die(GENERAL_ERROR, 'Could not update online user record (date)', '', __LINE__, __FILE__, $sql);
		}
	}

Verfasst: 02.03.2004 23:02
von Acid
Poste mal noch die nächsten 5 Zeilen der page_header.php ..

Verfasst: 07.03.2004 11:00
von Pseiko
Habe mal den Code oben geändert. (Mehr Zeilen hingeschrieben).

Verfasst: 10.03.2004 12:17
von Acid

Code: Alles auswählen

				if ( $row['user_allow_viewonline'] )
				{
					$logged_visible_online++;
				}
				else
				{
					$logged_hidden_online++;
				}
..füge mal unterhalb dieses Codeblockes noch folgendes ein..

Code: Alles auswählen

				if ( $row['user_allow_viewonline'] || $userdata['user_level'] == ADMIN )
				{
					$online_userlist .= ( $online_userlist != '' ) ? ', ' . $user_online_link : $user_online_link;
				}

Verfasst: 11.03.2004 11:43
von Pseiko
Jo hat hingehauen.

Wie bekomme ich das für den Last Visit Mod hin?
Ich hatte oben schon mal den Code hingeschrieben.

Verfasst: 11.03.2004 15:51
von Acid
Gib mal bei der Suche "visit+color" ein.

Verfasst: 11.03.2004 17:02
von Pseiko
Ja, habe es gefunden.

Noch andere Frage: Kann man bei versteckten (Hide) Farbgruppen, auch machen, dass die Mitglieder dieser Farbgruppe, neben dem ADMINISTRATOR - MODERATOR Teil ihre eigen Farbgruppe sehen?

[ Administrator ] [ Moderator ] [versteckte Farbgruppe] <-- nur für Mitglieder sichtbar

Verfasst: 11.03.2004 21:07
von netzguru
Hallo
das hat bei auch den Anzeigefehler beseitigt.
mfg
Bernd
Acid hat geschrieben:

Code: Alles auswählen

				if ( $row['user_allow_viewonline'] )
				{
					$logged_visible_online++;
				}
				else
				{
					$logged_hidden_online++;
				}
..füge mal unterhalb dieses Codeblockes noch folgendes ein..

Code: Alles auswählen

				if ( $row['user_allow_viewonline'] || $userdata['user_level'] == ADMIN )
				{
					$online_userlist .= ( $online_userlist != '' ) ? ', ' . $user_online_link : $user_online_link;
				}