Seite 1 von 1

COLOR GROUPS und "Wer war da"-MOD

Verfasst: 05.07.2006 18:27
von Stefan0812
Hallo zusammen!

Bin mal wieder an einem Problem angelangt.
Folgende Situation:
ich habe den "COLOR GROUPS" und "Wer war da" - MOD installiert.

nun werden jedoch die Benutzernamen in der Liste wer heute schon online war, nicht in der entsprechenden Farbgruppe angezeigt.

Sicherlich geht es ganz einfach, aber ich komme nicht darauf.

Wäre super wenn mir jemand helfen könnte.

Sommerlich heiße Grüße

Verfasst: 05.07.2006 20:23
von errt
Das Problem hab ich auch (siehe mein Thread im Support-Forum). Weiß da einer was dazu?

Verfasst: 21.07.2006 09:09
von Skeita
Dieses Problem hatte ich bis eben auch, doch durch ein bisschen probieren habe ich eine Lösung zustande gebracht.

Aufgrund nur spärlicher PHP-Kenntnisse wird diese Lösung sicher nicht die optimalste sein, aber sie funktioniert:

Code: Alles auswählen

#
#-----[ OPEN ]------------------------------------------
#
index.php

# 
#-----[ FIND ]------------------------------------------ 
#
	$user_today .= '<a href="' . append_sid('profile.php?mode=viewprofile&u=' . $row['user_id']) . '"';

# 
#-----[ BEFORE, ADD ]-----------------------------------
#
	include_once($phpbb_root_path.'includes/functions_color_groups.'.$phpEx);

# 
#-----[ FIND ]------------------------------------------ 
#
		$user_today .=  ' style="color: #' . $theme['fontcolor3'].'"><b>' . $row['username'].'</b></a>';
		
#
#-----[ IN-LINE FIND ]----------------------------------
#
' style="color: #' . $theme['fontcolor3'].'"><b>' . $row['username'].'</b></a>';

#
#-----[ IN-LINE REPLACE WITH ]--------------------------
#
color_group_colorize_name($row['user_id']);

# 
#-----[ FIND ]------------------------------------------ 
#
		$user_today .=  ' style="color: #' . $theme['fontcolor2'].'"><b>' . $row['username'].'</b></a>';
		
#
#-----[ IN-LINE FIND ]----------------------------------
#
' style="color: #' . $theme['fontcolor2'].'"><b>' . $row['username'].'</b></a>';

#
#-----[ IN-LINE REPLACE WITH ]--------------------------
#
color_group_colorize_name($row['user_id']);

# 
#-----[ FIND ]------------------------------------------ 
#
		$user_today .= '>' . $row['username'] . '</a>';
		
#
#-----[ IN-LINE FIND ]----------------------------------
#
'>' . $row['username'] . '</a>';

#
#-----[ IN-LINE REPLACE WITH ]--------------------------
#
color_group_colorize_name($row['user_id']);

#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
Ich hoffe, dass sich in die Install-Anleitung keine Fehler geschlichen haben.
Liebe Grüße, Erik

Verfasst: 21.07.2006 18:43
von Stefan0812
funktioniert super!

ich danke dir.

Verfasst: 22.07.2006 17:57
von Skeita
Hallo Stefan,

ich habe jetzt gemerkt, dass es so, wie ich es gemacht habe doch etwas umständlich war! :roll:
Denn beim Color Groups MOD ist es ja egal, welches Level du hast...

Ich habe das Ganze ja, so wie ich es hier gepostet habe, als kleines AddOn "herausgebracht", doch dann überkam mich vorhin eine Art Geistesblitz und es nun verbessert: Farbgruppen im Wer war da - MOD 1.0.1

LG, First

Verfasst: 29.08.2006 12:20
von shot4nothing
ich greife das nochmals auf,
da bei mir in der index.php ,durch einen anderen mod,
die einträge anders aussehen.

habe auch einiges probiert, aber ich bin ein echter anfänger in diesem bereich, so das bei mir entweder nichts angezeigt wurde,oder das board nicht mehr lief :oops:

bei mir sieht es so aus:

Code: Alles auswählen

$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);
// 
vielen dank schonmal für eure mühe

Verfasst: 18.09.2006 10:08
von MaverickZ
hi zusammen!

ich hab das auch versucht, leider bekam ich eine doppelte ausgabe der Namen wer so online war.

Der Link weiter oben, das "addon" is auch leider tot...

aber ich hab ne einfachere Lösung für euch alle:

In den Zeilen

Code: Alles auswählen

$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>';
	}
wird ja nur abgefragt wer admin oder mod is, und was passiert wenn nichts davon der fall is.

meine Lösung:

wie ganz oben schon erwähnt genau davor

Code: Alles auswählen

include_once($phpbb_root_path.'includes/functions_color_groups.'.$phpEx); 
einfügen.

dann

Code: Alles auswählen

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>';
	}
einfach mit

Code: Alles auswählen

$user_today .=  color_group_colorize_name($row['user_id']);
ersetzen. Die Abfrage ist damit raus und es wird immer die Konfiguration der Color Groups benutzt.




@shot4nothing:
du hast den Last Visit Mod installiert, wusste bis eben auch nich dass das nen Unterschied macht. Ich hab dir mal was rausgesucht was dir helfen sollte:

http://download.phpbb.de/mods/c/color_g ... _visit.txt

Ach ja, falls ihr sehen wollt dass es wirklich funzt:
www.bereifte-moerder.de/board

MfG