Code: Alles auswählen
# 
#---[Open]--------------------------------------------------------------------------------- 
# 
index.php
# 
#---[Find]--------------------------------------------------------------------------------- 
# 
init_userprefs($userdata);
# 
#---[Add]--------------------------------------------------------------------------------- 
# 
/*----------WER WAR HEUTE DA HACK----------*/
###############################  SETTINGS ###############################
$enable_wwd_counter = True; #Enables or disables counting of hidden users and guests
							#Values: True or False
############################### /SETTINGS ###############################
$time = time();
$heute = date('Ymd', $time);
$ip = $_SERVER['REMOTE_ADDR'];
$mitternacht = mktime(0,0,0,date('m', $time),date('d', $time),date('Y', $time));
$user_gmd = ( $userdata['session_logged_in'] ) ? $userdata['user_timezone'] : $board_config['board_timezone'];
###############################  INSTALLATION ###############################
if ( !isset( $board_config['wwd_record_users']) )
{
	$sql = 'INSERT INTO ' . CONFIG_TABLE . " (config_name, config_value) VALUES ('wwd_record_users', '0')";
	if ( !$db->sql_query($sql) )
	{
		message_die(GENERAL_ERROR, 'Could not create row `wwd_record_users` in phpBB CONFIG_TABLE', '', __LINE__, __FILE__, $sql);
   	}
	$board_config['wwd_record_users'] = 0;
}
if ( $enable_wwd_counter ) {
	if ( !isset($board_config['wwd_record_time']) ){
		$sql = 'INSERT INTO ' . CONFIG_TABLE . " (config_name, config_value) VALUES ('wwd_record_time', '0')";
  		if ( !$db->sql_query($sql) )
  		{
			message_die(GENERAL_ERROR, 'Could not create row `wwd_record_time` in phpBB CONFIG_TABLE', '', __LINE__, __FILE__, $sql);
   		}
	}
	if ( !isset($board_config['wwd_counter_date']) ){
		$sql = 'INSERT INTO ' . CONFIG_TABLE . " (config_name, config_value) VALUES ('wwd_counter_date', '$heute')";
  		if ( !$db->sql_query($sql) )
  		{
			message_die(GENERAL_ERROR, 'Could not create row `wwd_counter_date` in phpBB CONFIG_TABLE', '', __LINE__, __FILE__, $sql);
   		}
		$sql = 'CREATE TABLE `' . $table_prefix . 'wwd_counter_ips` (`ip` VARCHAR( 15 ) NOT NULL , PRIMARY KEY ( `ip` ))';
  		if ( !$db->sql_query($sql) )
  		{
			message_die(GENERAL_ERROR, 'Could not create table `'. $table_prefix . 'wwd_counter_ips`', '', __LINE__, __FILE__, $sql);
   		}
	}
}
############################### /INSTALLATION ###############################
if ( $enable_wwd_counter ) {
	if ( $board_config['wwd_counter_date'] != $heute ){
		$sql = "UPDATE " . CONFIG_TABLE . "
				SET config_value = '$heute'
				WHERE config_name = 'wwd_counter_date'";
  		if ( !$db->sql_query($sql) )
  		{
			message_die(GENERAL_ERROR, 'Could not update CONFIG_TABLE wwd_counter_date', '', __LINE__, __FILE__, $sql);
	   	}
		$sql = "DELETE FROM `" . $table_prefix . "wwd_counter_ips`";
  		if ( !$db->sql_query($sql) )
  		{
			message_die(GENERAL_ERROR, 'Could not delete ips from PREFIX_wwd_counter_ips table', '', __LINE__, __FILE__, $sql);
   		}
	}
	
	$sql = "DELETE FROM `" . $table_prefix . "wwd_counter_ips`
			WHERE `ip` = '$ip'";
  	if ( !$db->sql_query($sql) )
  	{
		message_die(GENERAL_ERROR, 'Could not delete your ip from PREFIX_wwd_counter_ips table', '', __LINE__, __FILE__, $sql);
   	}
	
	if ( $userdata['session_logged_in'] ) {
	} else {
		$sql = "INSERT INTO `" . $table_prefix . "wwd_counter_ips`
				(ip) VALUES ('$ip')";
  		if ( !$db->sql_query($sql) )
  		{
			message_die(GENERAL_ERROR, 'Could not delete your ip from PREFIX_wwd_counter_ips table', '', __LINE__, __FILE__, $sql);
   		}
	}
}
if ( $userdata['user_level'] == ADMIN )
{
	$sql_add = ", user_allow_viewonline";
}
else
{
	$sql_add2 = "AND user_allow_viewonline = '1'";
}
$sql = "SELECT user_id, username, user_session_time, user_level $sql_add
		FROM " . USERS_TABLE . " 
        WHERE user_session_time > $mitternacht $sql_add2
		ORDER BY user_session_time DESC";
$result = $db->sql_query($sql);
while( $row = $db->sql_fetchrow($result) )
	{
	$user_today .= ($count_user_today > 0) ? ', ' : ''; 
	if ( $row['user_allow_viewonline'] == 0 )
	{
		$user_today .= '<i>';
	}
	$user_today .= '<a href="' . append_sid('profile.php?mode=viewprofile&u=' . $row['user_id']) . '"';
	if ( $row['user_level'] == ADMIN )
	{
		$user_today .=  ' style="color: #' . $theme['fontcolor3'].'"><b>' . $row['username'].'</b></a>';
	}
	elseif ( $row['user_level'] == MOD )
	{
		$user_today .=  ' style="color: #' . $theme['fontcolor2'].'"><b>' . $row['username'].'</b></a>';
	}
	else
	{
		$user_today .= '>' . $row['username'] . '</a>';
	}
	$user_today .= ' (' . $lang['wwd_last'] . ' ' . create_date('H:i', $row['user_session_time'], $user_gmd) . ')';
	if ( $row['user_allow_viewonline'] == 0 )
	{
		$user_today .= '</i>';
	}
	$count_user_today++;
	}
if ( $count_user_today > $board_config['wwd_record_users'] )
	{
	$sql = 'UPDATE ' . CONFIG_TABLE . "	SET config_value = '$count_user_today' WHERE config_name = 'wwd_record_users'";
	if ( !$db->sql_query($sql) )
	{
      message_die(GENERAL_ERROR, 'Could not update row wwd_record_users in phpBB CONFIG_TABLE', '', __LINE__, __FILE__, $sql);
	}
	
	$sql = "UPDATE " . CONFIG_TABLE . " SET config_value = '$time' WHERE config_name = 'wwd_record_time'";
	if ( !$db->sql_query($sql) )
	{
      message_die(GENERAL_ERROR, 'Could not update row wwd_record_time in phpBB CONFIG_TABLE', '', __LINE__, __FILE__, $sql);
	}
	$record_users = $count_user_today;
	$record_time = $time;
} else {
	$record_users = $board_config['wwd_record_users'];
	$record_time = $board_config['wwd_record_time'];
}
$record_text = str_replace('%u', $record_users, $lang['wwd_record']);
$record_text = str_replace('%t', create_date($lang['DATE_FORMAT'], $record_time, $user_gmd), $record_text);
$total_users = $count_user_today;
if ( $enable_wwd_counter ) {
	$sql = 'SELECT `user_active` FROM '.USERS_TABLE." 
        WHERE user_session_time > $mitternacht";
	$result = $db->sql_query($sql);
	if ( !$result )
	{
      message_die(GENERAL_ERROR, 'Could not read number of users from USER_TABLE', '', __LINE__, __FILE__, $sql);
	}
	$hidden = $db->sql_numrows($result) - $count_user_today;
	$total_users += $hidden;
	
	$sql = 'SELECT `ip` FROM `' . $table_prefix . 'wwd_counter_ips`';
	$result = $db->sql_query($sql);
	if ( !$result )
	{
      message_die(GENERAL_ERROR, 'Could not read number of guests from PREFIX_wwd_counter_ips', '', __LINE__, __FILE__, $sql);
	}
	$gaeste = $db->sql_numrows($result);
	$total_users += $gaeste;
}
if ( $enable_wwd_counter ) {
	$user_today_text .= ( $total_users > 1 ) ? str_replace('%d', $total_users, $lang['wwd_c_user_today']) : $lang['wwd_c_one_user'];
	$user_today_text .= ( $count_user_today == 0 || $count_user_today == '' ) ? $lang['Reg_users_zero_total'] : '';
	$user_today_text .= ( $count_user_today == 1 ) ? str_replace('%d', $count_user_today, $lang['Reg_user_total']) : '';
	$user_today_text .= ( $count_user_today > 1 ) ? str_replace('%d', $count_user_today, $lang['Reg_users_total']) : '';
	$user_today_text .= ( $hidden == 0 || $hidden == '' ) ? $lang['Hidden_users_zero_total'] : '';
	$user_today_text .= ( $hidden == 1 ) ? str_replace('%d', $hidden, $lang['Hidden_user_total']) : '';
	$user_today_text .= ( $hidden > 1 ) ? str_replace('%d', $hidden, $lang['Hidden_users_total']) : '';
	$user_today_text .= ( $gaeste == 0 || $gaeste == '' ) ? $lang['Guest_users_zero_total'] : '';
	$user_today_text .= ( $gaeste == 1 ) ? str_replace('%d', $gaeste, $lang['Guest_user_total']) : '';
	$user_today_text .= ( $gaeste > 1 ) ? str_replace('%d', $gaeste, $lang['Guest_users_total']) : '';
} else {
	if ( $count_user_today > 1 ) {
		$user_today_text = str_replace('%u', $count_user_today, $lang['wwd_user_today']);
	} elseif ( $count_user_today == 1 ) {
		$user_today_text = $lang['wwd_one_user'];
	} else {
		$user_today_text = $lang['wwd_no_user'];
	}
}
$db->sql_freeresult($result);
/*----------WER WAR HEUTE DA HACK----------*/
# 
#---[Find]--------------------------------------------------------------------------------- 
# 
'TOTAL_POSTS' => sprintf($l_total_post_s, $total_posts),
'TOTAL_USERS' => sprintf($l_total_user_s, $total_users),
'NEWEST_USER' => sprintf($lang['Newest_user'], '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$newest_uid") . '">', $newest_user, '</a>'), 
# 
#---[Add]--------------------------------------------------------------------------------- 
#
'COUNT_USER_TODAY' => $user_today_text . $lang['wwd_copyright'],
'USER_TODAY' => $user_today,
'RECORD_USER_TODAY' => $record_text,
# 
#---[Save and close]--------------------------------------------------------------------------------- 
# 
index.php
# 
#---[Open]--------------------------------------------------------------------------------- 
# 
templates/subSilver/index_body.tpl
# Or your personal Template
# 
#---[Find]--------------------------------------------------------------------------------- 
# 
<td class="row1" align="center" valign="middle" rowspan="2"><img src="templates/subSilver/images/whosonline.gif" alt="{L_WHO_IS_ONLINE}" /></td>
# 
#---[Replace with]--------------------------------------------------------------------------------- 
# 
<td class="row1" align="center" valign="middle" rowspan="3"><img src="templates/subSilver/images/whosonline.gif" alt="{L_WHO_IS_ONLINE}" /></td>
# 
#---[Find]--------------------------------------------------------------------------------- 
# 
  <tr> 
	<td class="row1" align="left"><span class="gensmall">{TOTAL_USERS_ONLINE}   [ {L_WHOSONLINE_ADMIN} ]   [ {L_WHOSONLINE_MOD} ]<br />{RECORD_USERS}<br />{LOGGED_IN_USER_LIST}</span></td>
  </tr>
# 
#---[Add]--------------------------------------------------------------------------------- 
# 
  <tr>
  	<td class="row1" align="left"><span class="gensmall">{COUNT_USER_TODAY}</span><br />
		<div style="height: 150px; overflow: auto" align="justify" class="gensmall">{USER_TODAY}</div>
  		<br /><span class="gensmall">{RECORD_USER_TODAY}</span>
	</td>
  </tr>
################################################################################
                  Language Files (German/English)
################################################################################