Problem bei meinem 1. Mod...

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Gast210225

Problem bei meinem 1. Mod...

Beitrag von Gast210225 »

Hallo,
ich bastel im Moment einen Mod, der Gruppen in verschiedenen Farben darstellt, nur nun komme ich nicht mehr weiter... Ich habe in der Tabelle "phpbb_groups" eine neue Spalte "group_color", inder die Farbe der Gruppe gespeichert wird (in RGB Codes). Um die User bei "Wer ist online" farblich darzustellen habe ich in der includes/page_header.php das

Code: Alles auswählen

$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'] . '"';
}
gelöscht und darunter das hier eingefügt

Code: Alles auswählen

$sql = "SELECT group_id FROM " . USER_GROUP_TABLE . "
	WHERE user_id = '" . $userdata['user_id'] . "'
	AND user_pending = 0
	AND group_id != 1
	AND group_id != 2
	AND group_id != 3";

if ( !($result = $db->sql_query($sql)) )
{
	message_die(CRITICAL_ERROR, 'Error');
}
				
while ( $row2 = $db->sql_fetchrow($result) )
{
	$sql = "SELECT group_color FROM " . GROUPS_TABLE . "
		WHERE  group_id = '" . $row2['group_id'] . "'";

	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(CRITICAL_ERROR, 'Error');
	}

	while ( $row3 = $db->sql_fetchrow($result) )
	{
		$row['username'] = '<strong>' . $row['username'] . '</strong>';
		$style_color = ' style="color:#' . $row3['group_color'] . '"';
	}
}
Der Username wird nun Fett dargestellt, aber irgendwie nicht bunt... Wisst ihr, was ich falsch mache?


Johannes
Benutzeravatar
rabbit
Ehemaliger Übersetzer
Beiträge: 4199
Registriert: 14.06.2003 22:09
Wohnort: Hildesheim
Kontaktdaten:

Beitrag von rabbit »

ich möchte deinen enthusiasmus nicht bremsen, aber dazu gibt es schon drei MODs, ein eher 'ressourcen killender' (color groups von niels), einer, der nicht mehr weiter entwickelt wird, da der autor alle seine seiten schließt(advanced username color von austin), und einen, der grade voll in der entwicklung steckt, sehr mächtig ist und nahezu keine ressourcen verbraucht, wenn's um zusätzliche queries geht (advanced group color management von phantomk).
Offizieller Übersetzer des Categories Hierarchy MOD 2.1.x
Deutscher UserGuide für den Categories Hierarchy MOD v2.1.4
Empfohlener Hoster: All-Inkl.com
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Was ich mich gerade frage warum machst du 2. ver Abfragen?
Das geht wesentlich besser:

Code: Alles auswählen

$sql = "SELECT group_id, group_color FROM " . USER_GROUP_TABLE . " 
   WHERE user_id = '" . $userdata['user_id'] . "' 
   AND user_pending = 0 
   AND group_id != 1 
   AND group_id != 2 
   AND group_id != 3"; 

if ( !($result = $db->sql_query($sql)) ) 
{ 
   message_die(CRITICAL_ERROR, 'Could not query Group Color'); 
} 
             
while ( $row2 = $db->sql_fetchrow($result) ) 
{ 
      $row['username'] = '<strong>' . $row['username'] . '</strong>'; 
      $style_color = ' style="color:#' . $row2['group_color'] . '"'; 
}
Warum 2 Abfragen wenn es auch eine tut?
Und ich habe das selbe bei meinem Board gemacht, zwar etwas anders (über die User-Tabelle, und ohne zusätzliche Query), aber nun gut über Gruppen dürfte das so auch funktionieren.
Gast210225

Beitrag von Gast210225 »

@rabbit: Alle Mods brauchen aber eine SQL Tablelle, und definieren "Farbgruppen" aber ich will nur den schon vorhandenen Gruppen eine Farbe zuordnen.

@fanrpg: Ich brauche 2 Abfragen, weil bei der 1. frage ich ab, in welchen Gruppen ein User ist (in der phpbb_user_group) und in der 2. frage ich ab, welche Farben diese Gruppen haben (in der phpbb_groups)...


Johannes
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Code: Alles auswählen

$sql = "SELECT ugt.group_id, gt.group_color, gt.group_id AS group_id2 FROM " . USER_GROUP_TABLE . " ugt, " . GROUPS_TABLE gt
   WHERE ugt.user_id = '" . $userdata['user_id'] . "' 
   AND ugt.user_pending = 0 
   AND ugt.group_id != 1 
   AND ugt.group_id != 2 
   AND ugt.group_id != 3
   AND ugt.group_id == gt.group_id"; 

if ( !($result = $db->sql_query($sql)) ) 
{ 
   message_die(CRITICAL_ERROR, 'Could not query Group Color'); 
} 
              
while ( $row2 = $db->sql_fetchrow($result) ) 
{ 
      $row['username'] = '<strong>' . $row['username'] . '</strong>'; 
      $style_color = ' style="color:#' . $row2['group_color'] . '"'; 
}
Kommt man trotzdem mit einer Abfrage hin...
Gast210225

Beitrag von Gast210225 »

Danke!
Es waren zwar noch 2 Fehler (einer von mir, einer von dir) drinnen, aber nun gehts!
Benutzeravatar
rabbit
Ehemaliger Übersetzer
Beiträge: 4199
Registriert: 14.06.2003 22:09
Wohnort: Hildesheim
Kontaktdaten:

Beitrag von rabbit »

JG hat geschrieben:@rabbit: Alle Mods brauchen aber eine SQL Tablelle, und definieren "Farbgruppen" aber ich will nur den schon vorhandenen Gruppen eine Farbe zuordnen.
nun, der AGCM fügt keine neue tabelle hinzu, sondern nutzt auch die gruppen tabelle bzw. die users tabelle. der MOD fügt gruppen eine separate farbe hinzu und für den fall, dass ein user in mehr als einer gruppe ist, kann dieser im profil auswählen, welche gruppenfarbe er für sich angezeigt haben will. :)

zu sehen hier (*click*) gemeinsam mit dem categories hierarchy MOD v2.1.4...
Offizieller Übersetzer des Categories Hierarchy MOD 2.1.x
Deutscher UserGuide für den Categories Hierarchy MOD v2.1.4
Empfohlener Hoster: All-Inkl.com
Gast210225

Beitrag von Gast210225 »

Hmm.. Wo gibts den Mod zum Downloaden?
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17473
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Beitrag von Dr.Death »

Antworten

Zurück zu „phpBB 2.0: Mods in Entwicklung“