Seite 1 von 3

Last Visit Mod im ACP

Verfasst: 27.01.2004 21:23
von REincarnation
Hallo zusammen,

ich brauche mal wieder etwas Hilfe. Ich möchte gern den "Last Visit Mod" in den Adminbereich einbauen. Leider ergeben sich für mich 2 Probleme.

a) ich finde den Mod nicht mehr zum downloaden
b) wie baue ich den Mod so ein, dass er nur über das ACP zusehen ist?

Vielleicht könnt ihr mir auch diesmal helfen. Ich danke Euch bereits im Voraus und falls ich etwas offensichtliches übersehen habe - sry dafür.

Verfasst: 29.01.2004 11:51
von REincarnation
Ich nochmal. Problem a) hat sich erledigt. Ich habe den Mod gefunden und runtergeladen. Nun habe ich aber immer noch das Problem, dass ich nicht weiss, wie ich den im ACP einbauen soll. Ich dachte da an die Seite mit dem Admin Index. Oberhalb der momentan Onlineuser.

Hat jemand eine Idee? Ich wäre Euch super dankbar.

Verfasst: 29.01.2004 12:01
von AWSW
Bei dem MOD liegt wie bei jedem anderen eine Installationsanleitung vor, die Du befolgen musst...

Siehe auch: http://umzug.phpbb.de/viewtopic.php?t=33133

Verfasst: 29.01.2004 12:18
von REincarnation
Das habe ich schon verstanden. Ich möchte aber gern, dass der Lastvisit Mod nur im ACP zusehen ist, und nicht auf der index.php.

Verfasst: 04.02.2004 13:40
von REincarnation
Hat niemand eine Idee? Den "Last Visit Mod" einbauen klappt ganz gut - nur möchte ich den Mod nicht auf der index.php ausgeben sondern nur im Admin Panel. Ich habe mich auch schon daran versucht - bis das Offlinetestforum kaputt war. :(

Verfasst: 04.02.2004 14:11
von Acid
Schon versucht, den Code in der (admin) index.php im Bereich von..

Code: Alles auswählen

	$template->assign_vars(array(
		"L_WELCOME" => $lang['Welcome_phpBB'],
		"L_ADMIN_INTRO" => $lang['Admin_intro'],
		"L_FORUM_STATS" => $lang['Forum_stats'],
		"L_WHO_IS_ONLINE" => $lang['Who_is_Online'],
..einzubauen?

Verfasst: 04.02.2004 14:25
von REincarnation
Noch nicht. So richtig weiss ich auch nicht, was genau wo rein muss. Kannstu mir da Hilfestellung bieten?

Verfasst: 04.02.2004 14:34
von Acid

Code: Alles auswählen

# 
#-----[ ÖFFNEN ]------------------------------------------------ 
# 
index.php

# 
#-----[ FINDE ]------------------------------------------------ 
# 
	$template->assign_vars(array(
		"L_WELCOME" => $lang['Welcome_phpBB'],

# 
#-----[ DARÜBER EINFÜGEN ]----------------------------------------- 
# 

// Start add - Last visit MOD
$time_now=time();
$time1Hour=$time_now-3600;
$minutes = date('is', $time_now);
$hour_now = $time_now - (60*($minutes[0].$minutes[1])) - ($minutes[2].$minutes[3]); 
$dato=create_date('H', $time_now,$board_config['board_timezone']);
$timetoday = $hour_now - (3600*$dato); 
$sql = 'SELECT session_ip, MAX(session_time) as session_time FROM '.SESSIONS_TABLE.' WHERE session_user_id="'.ANONYMOUS.'" AND session_time >= '.$timetoday.' AND session_time< '.($timetoday+86399).' GROUP BY session_ip';
if (!$result = $db->sql_query($sql)) message_die(GENERAL_ERROR, "Couldn't retrieve guest user today data", "", __LINE__, __FILE__, $sql); 
while( $guest_list = $db->sql_fetchrow($result))
{ 
	if ($guest_list['session_time'] >$time1Hour) $users_lasthour++;
}
$guests_today = $db->sql_numrows($result);
$sql = 'SELECT user_id,username,user_allow_viewonline,user_level,user_lastlogon FROM ' . USERS_TABLE . ' WHERE user_id!="'.ANONYMOUS.'" AND user_session_time >= '.$timetoday.' AND user_session_time< '.($timetoday+86399).' ORDER BY username'; 
if (!$result = $db->sql_query($sql)) message_die(GENERAL_ERROR, "Couldn't retrieve user today data", "", __LINE__, __FILE__, $sql); 
while( $todayrow = $db->sql_fetchrow($result)) 
{ 
	$style_color = ""; 
	if ($todayrow['user_lastlogon']>=$time1Hour)
	{
		$users_lasthour++;
	}
	switch ($todayrow['user_level'])
	{
		case ADMIN :
		      $todayrow['username'] = '<b>' . $todayrow['username'] . '</b>'; 
      		$style_color = 'style="color:#' . $theme['fontcolor3'] . '"';
			break;
		case MOD :
		      $todayrow['username'] = '<b>' . $todayrow['username'] . '</b>'; 
      		$style_color = 'style="color:#' . $theme['fontcolor2'] . '"';
			break;
	}
 	$users_today_list.=( $todayrow['user_allow_viewonline'])?' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $todayrow['user_id']) . '"' . $style_color .'>' . $todayrow['username'] . '</a>,' : (($userdata[user_level]==ADMIN) ? ' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $todayrow['user_id']) . '"' . $style_color .'><i>' . $todayrow['username'] . '</i></a>,' : '');
	if (!$todayrow['user_allow_viewonline']) $logged_hidden_today++;
	else $logged_visible_today++;
}
if ($users_today_list) 
{
	$users_today_list[ strlen( $users_today_list)-1] = ' '; 
} else
{
	$users_today_list = $lang['None'];
}
$total_users_today = $db->sql_numrows($result)+$guests_today;

$users_today_list = $lang['Registered_users'].' ' . $users_today_list;
$l_today_user_s = ($total_users_today) ? ( ( $total_users_today == 1 )? $lang['User_today_total'] : $lang['Users_today_total'] ) : $lang['Users_today_zero_total'];
$l_today_r_user_s = ($logged_visible_today) ? ( ( $logged_visible_today == 1 ) ? $lang['Reg_user_total'] : $lang['Reg_users_total'] ) : $lang['Reg_users_zero_total'];
$l_today_h_user_s = ($logged_hidden_today) ? (($logged_hidden_today == 1) ? $lang['Hidden_user_total'] : $lang['Hidden_users_total'] ) : $lang['Hidden_users_zero_total'];
$l_today_g_user_s = ($guests_today) ? (($guests_today == 1) ? $lang['Guest_user_total'] : $lang['Guest_users_total']) : $lang['Guest_users_zero_total'];
$l_today_users = sprintf($l_today_user_s, $total_users_today);
$l_today_users .= sprintf($l_today_r_user_s, $logged_visible_today); 
$l_today_users .= sprintf($l_today_h_user_s, $logged_hidden_today); 
$l_today_users .= sprintf($l_today_g_user_s, $guests_today);
// End add - Last visit MOD

# 
#-----[ FINDE ]------------------------------------------------ 
# 
	$template->assign_vars(array(
		"L_WELCOME" => $lang['Welcome_phpBB'],

# 
#-----[ DARUNTER EINFÜGEN ]------------------------------------------ 
#

		// Start add - Last visit MOD
		'USERS_TODAY_LIST' => $users_today_list,
		'L_USERS_LASTHOUR' =>($users_lasthour)?sprintf($lang['Users_lasthour_explain'],$users_lasthour):$lang['Users_lasthour_none_explain'],
		'L_USERS_TODAY' =>$l_today_users,
		// End add - Last visit MOD
..den tpl-Teil dort in die (admin) index_body.tpl eintragen, wo´s passt.

Verfasst: 24.02.2004 11:26
von REincarnation
Ich hab das nun ein paar mal probiert. Leider ohne Erfolg. Irgendwie stelle ich mich zu glatt an. Ist aber auch nicht schlimm. Ich habe das nun weniger elegant mit einer Zusatzspalte in der Memberlist gelöst. Dort zeigt er mir dann den letzten Login an. Aber trotzdem danke.

Ich bin sicher das funktioniert. Nur bei mir und meinem Einbaukönnen halt nicht.

Verfasst: 31.03.2004 13:56
von REincarnation
Ich habe das nun nochmal im ACP versucht. Einbauen war auch kein Problem. Nur erscheint jetzt folgende Fehlermeldung im Admin Index:
Allgemeiner Fehler
Couldn't retrieve user today data

DEBUG MODE

SQL Error : 1054 Unknown column 'user_lastlogon' in 'field list'

SELECT user_id,username,user_allow_viewonline,user_level,user_lastlogon FROM phpbb_users WHERE user_id!="-1" AND user_session_time >= 1080684000 AND user_session_time< 1080770399 ORDER BY username

Line : 104
File : /home/www/htdocs/xxx.de/board/admin/index.php
Die index_body.tpl aus dem Admin Verzeichnis habe ich so geschrieben:

Code: Alles auswählen

<h1>Online in den letzten 24 Stunden</h1>

<table width="100%" cellpadding="4" cellspacing="1" border="0" class="forumline">
  <tr>
  	<td class="row1" align="left"><span class="gensmall">{USERS_OF_THE_DAY_LIST}</span></td>
  </tr>
</table>
Was hab ich falsch gemacht bzw. was muss ich ändern?