Online idag mod.

Frågor kring MODdar (modifikationer) för phpBB 2.0.x.

Moderatorer: Supportgrupp, Moderatorgrupp

SupraEnd
Medlem
Medlem
Inlägg: 28
Blev medlem: 2005-10-05 21:49
Svar: 0

Online idag mod.

Inlägg av SupraEnd »

Jag vet att det skall finnas men hittar den inte någonstans.

En mod som visar vilka som varit online idag, alltså man kan ta bort dom senaste som varit onloggade och den visar bara vilka som har varit online idag.

Hade en sådan mod på ett forum men det råkade försvinna när jag uppdaterade till 2.0.18.
Användarens profilbild
Kail
Administratör
Administratör
Inlägg: 2937
Blev medlem: 2003-06-03 14:53
Svar: 0

Inlägg av Kail »

Jakob Persson - Grundare av phpBB Sverige - IT-konsult - http://www.jakob-persson.com
The Complete phpBB Template Design Guide (phpBB 2.x): http://archive.jakob-persson.com/articl ... index.html
Användarens profilbild
Holger
Support - Ledare
Support - Ledare
Inlägg: 6560
Blev medlem: 2004-06-09 09:32
Svar: 1

Inlägg av Holger »

Här beskrivs ett problem med den modden:
http://www.phpbb-se.com/forum/viewtopic.php?p=9668#9668
Holger Gremminger
Ingen support via PM!
SupraEnd
Medlem
Medlem
Inlägg: 28
Blev medlem: 2005-10-05 21:49
Svar: 0

Inlägg av SupraEnd »

Tack så himla mycket! Denna sida rockar så satans shysst :)
Wooohooo, vad skulle man göra utan er!!??
SupraEnd
Medlem
Medlem
Inlägg: 28
Blev medlem: 2005-10-05 21:49
Svar: 0

Inlägg av SupraEnd »

Undrar vart man ändrar i denna mod om man vill att räkningen skall börja vid en ny dag, typ runt 24:00 ?



Såhär ser koden ut för modden:

########################################################
##
## MOD Title: Users of the day
## MOD Version: 2.1
## Author: ZoZo <zozo@etoiles.net>
##
## Description:
## Displays, under the online users list, a list of the registered users
## who have visited during the last XX hours. Can also display the list
## of the users who didn't come. (see "Edit below")
##
## Installation Level: easy
## Installation Time: 2-3 minutes
##
## Files To Edit: 3
## - /templates/subSilver/index_body.tpl
## - /language/lang_english/lang_main.php
## - /includes/page_header.php
##
## Included Files: None
##
########################################################
## VERSION HISTORY:
##
## October 22th 2004: v2.1
## 1. Now admins are displayed first, then mods then users.
## 2. Corrected a problem in the text file with Easy Mod Installer.
##
## June 20th 2003: v2.0
## 1. The list's delay is customizable, but you must give a number in hours, 24 by default.
## 2. There's now a counter for each list.
## 3. The MOD doesn't display the list of the users who didn't visit by default.
##
## October 28th 2002: v1.1
## 1. The MOD uses the database variable "user_session_time" instead of "user_lastvisit", which is updated only when the user logs out.
##
## October 15th 2002: v1.0
## 1. Created main features.
##
########################################################
## TODO LIST:
##
## 1. Don't restrict the time unit to hours.
##
########################################################
## PLEASE REPORT ANY BUGS OR SUGGESTIONS ##
########################################################

#
#-----[ ACTION: open ]---------------------------------
#
/templates/subSilver/index_body.tpl
#
#-----[ ACTION: find ]---------------------------------
#
<td class="row1" align="center" valign="middle" rowspan="2"><img src="templates/subSilver/images/whosonline.gif" alt="{L_WHO_IS_ONLINE}" /></td>
#
#-----[ ACTION: replace by ]---------------------------
#
<td class="row1" align="center" valign="middle" rowspan="3"><img src="templates/subSilver/images/whosonline.gif" alt="{L_WHO_IS_ONLINE}" /></td>
#
#-----[ ACTION: find ]---------------------------------
#
<td class="row1" align="left"><span class="gensmall">{TOTAL_USERS_ONLINE} &nbsp; [ {L_WHOSONLINE_ADMIN} ] &nbsp; [ {L_WHOSONLINE_MOD} ]<br />{RECORD_USERS}<br />{LOGGED_IN_USER_LIST}</span></td>
#
#-----[ ACTION: add after ]----------------------------
#
</tr>
<tr>
<td class="row1" align="left"><span class="gensmall">{USERS_OF_THE_DAY_LIST}</span></td>
#
#-----[ ACTION: repeat for all templates ]-------------
#



#
#-----[ ACTION: open ]--------------------------------
#
/language/lang_english/lang_main.php
#
#-----[ ACTION: find ]--------------------------------
#
$lang['Registered_users'] = 'Registered Users:';
#
#-----[ ACTION: add before ]--------------------------
#
$lang['Day_users'] = '%d registered users visit during the last %d hours:';
$lang['Not_day_users'] = '%d registered users <span style="color:red">DIDN\'T</span> visit during the last %d hours:';
#
#-----[ ACTION: repeat for all languages ]------------
#



#
#-----[ ACTION: open ]--------------------------------
#
/includes/page_header.php
#
#-----[ ACTION: find ]--------------------------------
#
'LOGGED_IN_USER_LIST' => $online_userlist,
#
#-----[ ACTION: add after ]---------------------------
#
'USERS_OF_THE_DAY_LIST' => $day_userlist,
#
#-----[ ACTION: find ]--------------------------------
#
//
// Obtain number of new private messages
// if user is logged in
//
#
#-----[ ACTION: add before ]--------------------------
#
//
// Users of the day MOD
//

// ############ Edit below ############
// #
$display_not_day_userlist = 0; // change to 1 here if you also want the list of the users who didn't visit to be displayed
$users_list_delay = 24; // change here to the number of hours wanted for the list
// #
// ############ Edit above ############

$sql = "SELECT user_id, username, user_allow_viewonline, user_level, user_session_time
FROM ".USERS_TABLE."
WHERE user_id > 0
ORDER BY IF(user_level=1,3,user_level) DESC, username ASC";
if( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain user/day information', '', __LINE__, __FILE__, $sql);
}

$day_userlist = '';
$day_users = 0;
$not_day_userlist = '';
$not_day_users = 0;

while( $row = $db->sql_fetchrow($result) )
{
$style_color = '';
if ( $row['user_level'] == ADMIN )
{
$row['username'] = '<b>' . $row['username'] . '</b>';
$style_color = 'style="color:#' . $theme['fontcolor3'] . '"';
}
else if ( $row['user_level'] == MOD )
{
$row['username'] = '<b>' . $row['username'] . '</b>';
$style_color = 'style="color:#' . $theme['fontcolor2'] . '"';
}
if ( $row['user_allow_viewonline'] )
{
$user_day_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'>' . $row['username'] . '</a>';
}
else
{
$user_day_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'><i>' . $row['username'] . '</i></a>';
}
if ( $row['user_allow_viewonline'] || $userdata['user_level'] == ADMIN )
{
if ( $row['user_session_time'] >= ( time() - $users_list_delay * 3600 ) )
{
$day_userlist .= ( $day_userlist != '' ) ? ', ' . $user_day_link : $user_day_link;
$day_users++;
}
else
{
$not_day_userlist .= ( $not_day_userlist != '' ) ? ', ' . $user_day_link : $user_day_link;
$not_day_users++;
}
}
}

$day_userlist = ( ( isset($forum_id) ) ? '' : sprintf($lang['Day_users'], $day_users, $users_list_delay) ) . ' ' . $day_userlist;

$not_day_userlist = ( ( isset($forum_id) ) ? '' : sprintf($lang['Not_day_users'], $not_day_users, $users_list_delay) ) . ' ' . $not_day_userlist;

if ( $display_not_day_userlist )
{
$day_userlist .= '<br />' . $not_day_userlist;
}

//
// End of MOD
//



#
#-----[ ACTION: save/close all ]----------------------
#

#
#-----[ ACTION: upload the modified files ]-----------
#

#
#-----[ ACTION: enjoy ]-------------------------------
#

#
#-----[ PLEASE REPORT ANY BUGS OR SUGGESTIONS]--------
#
Användarens profilbild
Holger
Support - Ledare
Support - Ledare
Inlägg: 6560
Blev medlem: 2004-06-09 09:32
Svar: 1

Inlägg av Holger »

Jag förmodar att man får ändra lite i denna raden:

Kod: Markera allt

if ( $row['user_session_time'] >= ( time() - $users_list_delay * 3600 ) )
jag vet dock inte hur ...
Holger Gremminger
Ingen support via PM!
SupraEnd
Medlem
Medlem
Inlägg: 28
Blev medlem: 2005-10-05 21:49
Svar: 0

Inlägg av SupraEnd »

Holger skrev:Jag förmodar att man får ändra lite i denna raden:

Kod: Markera allt

if ( $row['user_session_time'] >= ( time() - $users_list_delay * 3600 ) )
jag vet dock inte hur ...
Ja, det känns som det skulle vara den raden...
Det är väl siffrorna man får ändra och testa sig fram, hmm.
Dock kanske man får ändra just den raden vid 24:00 och "save" den då för att den skall få effekt och börja räkna från 24:00 då man "sparar" filen på servern.
Senast redigerad av SupraEnd den 2005-11-15 09:50, redigerad totalt 1 gång.
Användarens profilbild
Holger
Support - Ledare
Support - Ledare
Inlägg: 6560
Blev medlem: 2004-06-09 09:32
Svar: 1

Inlägg av Holger »

Nej, du måste ha med servertiden eller den lokala datorns tid ... det är inte så enkelt ...
Holger Gremminger
Ingen support via PM!
SupraEnd
Medlem
Medlem
Inlägg: 28
Blev medlem: 2005-10-05 21:49
Svar: 0

Inlägg av SupraEnd »

Holger skrev:Nej, du måste ha med servertiden eller den lokala datorns tid ... det är inte så enkelt ...
Okej. Får spåna vidare på utlänska forum om andra frågat detta.
Skriv svar

Vilka är online

Användare som besöker denna kategori: 1 och 0 gäst