Seite 1 von 1

Überarbeitung: Last Visited Date on Memberlist 1.0.2

Verfasst: 25.03.2007 13:49
von Latinoportal
Ich habe den Mod mal für mich selbst überarbeitet und eine Version 1.0.2 daraus gemacht. Vielleicht ist ja jemand nach was ähnlichem auf der Suche ...

Gruß
M.

Code: Alles auswählen

##############################################################
## MOD Title: Last Visited Date on Memberlist
## MOD Author: iWisdom < admin@p3net.net > (n/a) http://p3net.net
## MOD Description: Show the last Visit Date for a user on the memberlist
## MOD Version: 1.0.2
## 
## Installation Level: Easy
## Installation Time: 7 minutes
## Files To Edit: memberlist.php
## templates/subSilver/memberlist_body.tpl
## language/lang_english/lang_main.php
## language/lang_german/lang_main.php
## includes/page_header.php
## Included Files: 
## License: http://opensource.org/licenses/gpl-license.php GNU General Public License v2
## Generator: Phpbb.ModTeam.Tools
##############################################################
## Author Notes: This MOD was at the request of a user. If anyone's interested, let me know, and I can expand it to add 

the date elsewhere.
##############################################################
## MOD History:
## 
## 2006-11-26 - Version 0.0.1
##      -Test Release
## 
## 2006-11-26 - Version 1.0.0
##      -Initial Release
## 
## 2006-11-27 - Version 1.0.1
## 	-If you have not logged in, "Never" is displayed instead of the UNIX epoch
##
## 2007-03-25 - Version 1.0.2
## 	-Fixed bug: wrong output if user never logged in
##	-Changed date format to board settings
##	-Added german language
##	-Fixed bug: colspan +1 for new table column in memberlist.php
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD 
##############################################################

#
#-----[ OPEN ]------------------------------------------
#
memberlist.php
#
#-----[ FIND ]------------------------------------------
#
$sql = "SELECT username, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, 

user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar,
	FROM " . USERS_TABLE . "
	WHERE user_id <> " . ANONYMOUS . "
	ORDER BY $order_by";
#
#-----[ IN-LINE FIND ]------------------------------------------
#
username,
#
#-----[ AFTER, ADD ]------------------------------------------
#
 user_lastvisit,
#
#-----[ FIND ]------------------------------------------
#
$user_id = $row['user_id'];
#
#-----[ AFTER, ADD ]------------------------------------------
#		
//Begin Last Visit Date on Memberlist
if($row['user_lastvisit'] != "0")
{
	$lastvisit = create_date($lang['DATE_FORMAT'], $row['user_lastvisit'], $board_config['board_timezone']);
}
//End Last Visit Date on Memberlist
else
{
	$lastvisit = $lang['novisit'];
}
#
#-----[ FIND ]------------------------------------------
#
'YIM' => $yim,
#
#-----[ AFTER, ADD ]------------------------------------------
#
'LAST_VISIT' => $lastvisit,
#
#-----[ OPEN ]------------------------------------------
#
templates/subSilver/memberlist_body.tpl
#
#-----[ FIND ]------------------------------------------
#
<th class="thTop" nowrap="nowrap">{L_JOINED}</th>
#
#-----[ AFTER, ADD ]------------------------------------------
#
<th class="thTop" nowrap="nowrap">{L_LASTVISIT}</th>
#
#-----[ FIND ]------------------------------------------
#
<td class="{memberrow.ROW_CLASS}" align="center" valign="middle"><span class="gensmall">{memberrow.JOINED}</span></td>
#
#-----[ AFTER, ADD ]------------------------------------------
#
<td class="{memberrow.ROW_CLASS}" align="center" valign="middle"><span class="gensmall">{memberrow.LAST_VISIT}

</span></td>
#
#-----[ FIND ]------------------------------------------
#
<!-- END memberrow -->
	<tr> 
	  <td class="catBottom" colspan="8" height="28">&nbsp;</td>
	</tr>
#
#-----[ CHANGE TO ]------------------------------------------
#
<!-- END memberrow -->
	<tr> 
	  <td class="catBottom" colspan="9" height="28">&nbsp;</td>
	</tr>
#
#-----[ OPEN ]------------------------------------------
#
language/lang_english/lang_main.php
#
#-----[ FIND ]------------------------------------------
#
//
// That's all, Folks!
#
#-----[ BEFORE, ADD ]------------------------------------------
#
//Last Visit Date on Memberlist
$lang['lastvisit'] = 'Last Visit';
$lang['novisit'] = 'Never';
#
#-----[ OPEN ]------------------------------------------
#
language/lang_german/lang_main.php
#
#-----[ FIND ]------------------------------------------
#
//
// That's all, Folks!
#
#-----[ BEFORE, ADD ]------------------------------------------
#
//Last Visit Date on Memberlist
$lang['lastvisit'] = 'Letzter Besuch';
$lang['novisit'] = 'Niemals';
#
#-----[ OPEN ]------------------------------------------
#
includes/page_header.php
#
#-----[ FIND ]------------------------------------------
#
'L_WHOSONLINE_MOD' => sprintf($lang['Mod_online_color'], '<span style="color:#' . $theme['fontcolor2'] . '">', 

'</span>'),
#
#-----[ AFTER, ADD ]------------------------------------------
#
	'L_LASTVISIT' => $lang['lastvisit'],
	'L_NOVISIT' => $lang['novisit'],
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM

Verfasst: 25.03.2007 13:54
von Latinoportal
P.S. So sieht das ganze übrigens aus:
http://www.latinoportal.de/portal/memberlist.php


Wie kann ich erreichen, dass die gesamte Spalte "Letzter Besuch" nur für den Admin sichtbar ist? Dafür reichen meine Kenntnisse leider nicht aus ...

Danke.

M.

Verfasst: 25.03.2007 13:58
von redbull254
Hallo,Latinoportal


Ich habe den Mod mal für mich selbst überarbeitet
Vielleicht wäre eine Info dazu nicht schlecht, was denn bei diese Mod zum Original anders ist.

Das Original funktioniert bei mir tadellos.

Verfasst: 25.03.2007 14:02
von Latinoportal
redbull254 hat geschrieben:Hallo,Latinoportal

Vielleicht wäre eine Info dazu nicht schlecht, was denn bei diese Mod zum Original anders ist.

Das Original funktioniert bei mir tadellos.
Neu:

Code: Alles auswählen

#
#-----[ OPEN ]------------------------------------------
#
memberlist.php	
#-----[ FIND ]------------------------------------------
#
$user_id = $row['user_id'];
#
#-----[ AFTER, ADD ]------------------------------------------
#
//Begin Last Visit Date on Memberlist
if($row['user_lastvisit'] != "0")
{
	$lastvisit = create_date($lang['DATE_FORMAT'], $row['user_lastvisit'], $board_config['board_timezone']);
}
//End Last Visit Date on Memberlist
else
{
	$lastvisit = $lang['novisit'];
}
alt:

Code: Alles auswählen

#-----[ FIND ]------------------------------------------
#
$user_id = $row['user_id'];
#
#-----[ AFTER, ADD ]------------------------------------------
#
# If you don't like the date syntax in $lastvisit you can edit it according to the php date() function -- just make sure you know what you're doing!
		//Begin Last Visit Date on Memberlist
		if($row['user_lastvisit'] != "0")
		{
			$lastvisit=date("m/d/Y", $row['user_lastvisit']);
		}
		//End Last Visit Date on Memberlist
		else
		{
			$lastvisit=L_NOVISIT;
		}
+ ... Colspan +1 für die richtige Darstellung

und natürlich die Deutsche Version ... :D

Gruß
M.

Verfasst: 31.03.2007 13:38
von Latinoportal
Latinoportal hat geschrieben:P.S. So sieht das ganze übrigens aus:
http://www.latinoportal.de/portal/memberlist.php


Wie kann ich erreichen, dass die gesamte Spalte "Letzter Besuch" nur für den Admin sichtbar ist? Dafür reichen meine Kenntnisse leider nicht aus ...

Danke.

M.
Hallo! Kann mir jemand zeigen, wie man die Spalte nur für den Admin machen kann?

Danke!!!

Gruß
Matthias

Update Last Visited Date-Mod

Verfasst: 19.11.2008 22:33
von regie 510
Hallo zusammen,

hier folgt noch eine Überarbeitung des Last Visited Date-Mod, damit zum Datum auch die Uhrzeit angezeigt wird und das Ganze sich nicht nach dem letzten Login richtet, sondern nach den letzten Aktionen der User im Forum, was ich persönlich wesentlich sinnvoller finde. Somit bekommt man ein auf die Minute genaues "Wer war online".

Öffne: memberlist.php

Suche

Code: Alles auswählen

$sql = "SELECT username, user_lastvisit, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar,
   FROM " . USERS_TABLE . "
   WHERE user_id <> " . ANONYMOUS . "
   ORDER BY $order_by";
Ersetze durch

Code: Alles auswählen

$sql = "SELECT username, user_session_time, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar 
	FROM " . USERS_TABLE . "
	WHERE user_id <> " . ANONYMOUS . "
	ORDER BY $order_by";
Suche

Code: Alles auswählen

if($row['user_lastvisit'] != "0")
Ersetze durch

Code: Alles auswählen

if($row['user_session_time'] != 0 )
Suche

Code: Alles auswählen

$lastvisit = create_date($lang['DATE_FORMAT'], $row['user_lastvisit'], $board_config['board_timezone']);
Ersetze durch

Code: Alles auswählen

$lastvisit = create_date($board_config['default_dateformat'], $row['user_session_time'], $board_config['board_timezone']);
Und wer nun noch den Today Yesterday-Mod eingebaut hat, kann als Krönung die Anzeige "Heute", "Gestern" haben:

Öffne: memberlist.php

Suche

Code: Alles auswählen

$lastvisit = create_date($board_config['default_dateformat'], $row['user_session_time'], $board_config['board_timezone']);
Dahinter einfügen

Code: Alles auswählen

// MOD - TODAY AT - BEGIN
		//
		if ( $board_config['time_today'] < $row['user_session_time'])
		{ 
			$lastvisit = sprintf($lang['Today_at'], create_date($board_config['default_timeformat'], $row['user_session_time'], $board_config['board_timezone'])); 
		}
		else if ( $board_config['time_yesterday'] < $row['user_session_time'])
		{ 
			$lastvisit = sprintf($lang['Yesterday_at'], create_date($board_config['default_timeformat'], $row['user_session_time'], $board_config['board_timezone'])); 
		}
        // MOD - TODAY AT - END
So in etwa sieht es dann am Schluß aus, die Bezeichnungen im Tabellenkopf kann man im memberlist_body.tpl bzw. in der lang_main.php nach seinen Wünschen anpassen:

[ externes Bild ]