wbblite: Benutzernamen farbig |
haumi
Boardbetreiber
[meine Galerie]
Dabei seit: 06.06.2009
Beiträge: 3.442
Herkunft: NRW
Postid: 10336
|
|
wbblite: Benutzernamen farbig |
Beitrag Nr.: 1 |
Ich bin schon öfter gefragt worden, ob man die Benutzernamen farbig gestalten kann.
Hier ist mal eine Lösung.
Es wird der Original-Gruppenname für die css-Abfrage benutzt, was heißt:
Wenn eine neue Benutzergruppe angelegt wird, sollte man, um diese gestalten zu können, auch eine neue Klasse in der Datei format.css mit dem (exakten) Gruppenname als Klassenname.
Was ist zu tun?
Öffne index.php und suche:
code: |
1:
|
if(isset($useronlinebit) && $useronlinebit != '') $useronlinebit .= ', '; |
|
füge darunter ein:
code: |
1:
2:
3:
4:
|
//Useronlinefarbe_Anfang
$erg=$db->query_first("SELECT g.title FROM bb".$n."_groups g LEFT JOIN bb".$n."_users u ON (u.groupid= g.groupid) WHERE u.username = '$row[username]'");
$row['username'] = '<span class="'.($erg['title']).'">'.($row[username]);
//Useronlinefarbe_Ende |
|
wenn der „wer war da“ installiert ist dann suche weiter:
code: |
1:
|
while($wwhd=$db->fetch_array($result)) { |
|
füge darunter ein:
code: |
1:
2:
3:
4:
|
//Useronlinefarbe_Anfang
$erg=$db->query_first("SELECT g.title FROM bb".$n."_groups g LEFT JOIN bb".$n."_users u ON (u.groupid= g.groupid) WHERE u.username = '$wwhd[username]'");
$anzeige = '<span class="'.($erg['title']).'">'.($wwhd[username]);
//Useronlinefarbe_Ende |
|
suche weiter:
code: |
1:
2:
|
if($wwhd['invisible'] == '0') $user = "<a href="profile.php?userid=$wwhd[userid]">$wwhd[username]</a></b> ($zeit)";
elseif($wbbuserdata['canuseacp'] == '1') $user ="<a href="profile.php?userid=$wwhd[userid]">$wwhd[username]</a></b> ($zeit, Geist)"; |
|
ersetze mit:
code: |
1:
2:
|
if($wwhd['invisible'] == '0') $user = "<a href="profile.php?userid=$wwhd[userid]">$anzeige</a></b> ($zeit)";
elseif($wbbuserdata['canuseacp'] == '1') $user ="<a href="profile.php?userid=$wwhd[userid]">$anzeige</a></b> ($zeit, Geist)"; |
|
öffne thread.php und suche:
code: |
1:
|
eval ("\$posts['username'] = "".$tpl->get("thread_username")."";"); |
|
füge darüber ein:
code: |
1:
2:
3:
4:
|
//Useronlinefarbe_Anfang
$erg=$db->query_first("SELECT g.title FROM bb".$n."_groups g LEFT JOIN bb".$n."_users u ON (u.groupid= g.groupid) WHERE u.username = '$posts[username]'");
$posts['username'] = '<span class="'.($erg['title']).'">'.($posts[username]);
//Useronlinefarbe_Ende |
|
öffne memberlist.php und suche:
code: |
1:
|
eval ("\$membersbit .= " ".$tpl->get("memberslist_membersbit")."";"); |
|
füge darüber ein:
code: |
1:
2:
3:
4:
|
//Useronlinefarbe_Anfang
$erg=$db->query_first("SELECT g.title FROM bb".$n."_groups g LEFT JOIN bb".$n."_users u ON (u.groupid= g.groupid) WHERE u.username = '$members[username]'");
$members['username'] = '<span class="'.($erg['title']).'">'.($members[username]);
//Useronlinefarbe_Ende |
|
öffne team.php und suche.
code: |
1:
|
if($user['canuseacp']) { |
|
code: |
1:
|
eval("\$moderatorbits .= "".$tpl->get("team_modbit")."";"); |
|
code: |
1:
|
eval("\$moderatorbits .= "".$tpl->get("team_modbit")."";"); |
|
füge jeweils darüber ein:
code: |
1:
2:
3:
4:
|
//Useronlinefarbe_Anfang
$erg=$db->query_first("SELECT g.title FROM bb".$n."_groups g LEFT JOIN bb".$n."_users u ON (u.groupid= g.groupid) WHERE u.username = '$user[username]'");
$user['username'] = '<span class="'.($erg['title']).'">'.($user[username]);
//Useronlinefarbe_Ende |
|
öffne profile.php und suche:
code: |
1:
|
if(!$user_info['userid']) eval("error("".$tpl->get("error_falselink")."");"); |
|
füge darüber ein:
code: |
1:
2:
3:
4:
|
//Useronlinefarbe_Anfang
$erg=$db->query_first("SELECT g.title FROM bb".$n."_groups g LEFT JOIN bb".$n."_users u ON (u.groupid= g.groupid) WHERE u.username = '$user_info[username]'");
$user_info1['username'] = '<span class="'.($erg['title']).'">'.($user_info[username]);
//Useronlinefarbe_Ende |
|
öffne profile-tpl und suche_
code: |
1:
|
<td><smallfont><b><a href="index.php?sid=$session[hash]">$master_board_name</a> » Profil von $user_info[username]</b></font></td> |
|
ersetze durch:
code: |
1:
|
<td><smallfont><b><a href="index.php?sid=$session[hash]">$master_board_name</a> » Profil von $user_info1[username]</b></font></td> |
|
suche weiter:
code: |
1:
|
<td width="100%"><normalfont color="{fontcolorsecond}"><b>Profil von $user_info[username]</b></font></td> |
|
ersetze mit:
code: |
1:
|
<td width="100%"><normalfont color="{fontcolorsecond}"><b>Profil von $user_info1[username]</b></font></td> |
|
erstellen im Root-Verzeichnis eine Datei „format.css“ mit folgendem Inhalt:
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
|
.Administratoren {
color: #FF0000;
font-size:10pt;
font-weight:bold;
font-style:italic
}
.Super_Moderatoren {
color: #008B45;
font-size:10pt;
font-weight:bold;
font-style:italic
}
.Moderatoren {
color: #458B00;
font-size:10pt;
font-weight:bold;
font-style:italic
}
.User {
color: #379593;
font-size:10pt;
font-weight:bold;
font-style:italic
}
.Partner {
color: #FE00FE;
font-size:10pt;
font-weight:bold;
} |
|
Sollten weitere Benutzergruppen angelegt werden,
so muss für jede Benutzergruppe ein css-Block (css-Klasse)erstellt werden, wenn diese Benutzergruppe ebenfalls schriftmäßig angepasst werden soll.
Beispiel:
.Administratoren { Klassenname entspricht dem Gruppennamen!!!!
color: #FF0000; Einstellung der Schriftfarbe
font-size:10pt; Einstellung der Schriftgröße
font-weight:bold; Einstellung der Schriftdicke
font-style:italic; Einstellung der Schriftneigung
font-family: "monotype corsiva"; Einstellung der Schriftart (im Beispiel nicht vorhanden!)
}
öffne das Template headinclude.tpl und füge am Ende ein:
code: |
1:
|
<link href="format.css" rel=stylesheet type="text/css" titel="stylesheet1"> |
|
Wird eine Userlegende auf der Indexseite gewünscht, so
öffne die Datei index.php und suche:
code: |
1:
|
$totaluseronline = $membercount+$guestcount; |
|
füge darunter ein:
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
|
//Useronlinefarbe_Anfang
$anzg = "SELECT title FROM bb".$n."_groups where title !='Gäste'";
$anzeige = mysql_query($anzg);
while ($ds = mysql_fetch_object($anzeige)) {
$ergo = $ds->title;
$gruppenfarbe .= '<span class="'.$ergo.'">'.$ergo.'</span> - ';
}
eval ("\$index_gruppenbit .= "".$tpl->get("index_gruppenbits")."";");
//Useronlinefarbe_Ende |
|
erstelle ein template "index_gruppenbits.tpl" mit folgendem Inhalt:
code: |
1:
2:
3:
4:
5:
|
<tr bgcolor="{tablecolorb}" id="tableb">
<td align="left" colspan="6" class="tablea"><smallfont>
<b>Userlegende:</b>
$gruppenfarbe
</td> </tr> |
|
öffen das Template "index.tpl" und suche:
code: |
1:
|
$index_useronline |
|
füge darunter ein:
code: |
1:
|
$index_gruppenbit |
|
für eine farbige Anzeige des Ranges im Thread macht man folgendes:
Man öffnet die thread.php und sucht:
code: |
1:
|
if($posts['title']) $posts['ranktitle']=$posts['title']; |
|
darunter fügt man folgendes ein:
code: |
1:
2:
3:
4:
5:
|
//Rangfarbe_Anfang
$erg=$db->query_first("SELECT g.title FROM bb".$n."_groups g LEFT JOIN bb".$n."_users u ON (u.groupid= g.groupid) WHERE u.username = '$posts[username]'");
$posts['ranktitle']='<span class="'.($erg['title']).'">'.($posts[ranktitle])."</span>";
//Rangfarbe_Ende |
|
das wars schon!
Auch hier gilt wie immer:
alle zu ändernden templates und php-Dateien vorher sichern,
damit man bei einem Fehler den alten Zustand wieder herstellen kann!!
Eine Garantie wird auch nicht übernommen.
Wenn etwas unklar sein sollte bitte hier fragen bevor man etwas falsch macht.
Es wird auch Hilfe gegeben wenn etwas nicht so ganz geklappt hat.
Urheber ist haumi - aber jeder kann es frei verwenden und nach belieben abändern.
__________________
Gelassen das hinnehmen, was nicht zu ändern ist,
engagiert angehen was man gestalten kann.
|
|
28.12.2011 16:56 |
|
|
|
Hallo Haumi,
würde das so auch bei dem WBB 3.1 funktionieren?
Habe mir eine VIPgruppe erstellt bzw. 5 Stück,da jede Gruppe eine andere Zeitspanne hat.
Wenn ich den Farbcode jetzt direkt über diese Gruppe einstelle,was ja möglich ist,dann habe ich unten in der Legende aber 5x diese Gruppe zu stehen.
Das würde ich gerne umgehen,deshalb meine Frage.
Dann würde ich nämlich nur bei einer Gruppe direkt den Farbcode eingeben und die anderen 4 gern über CSS.
LG
|
|
27.02.2014 18:32 |
|
|
|
Danke schön,
das wäre echt lieb von dir.
LG
|
|
27.02.2014 22:59 |
|
|
|
Hi Haumi ,
ich habe wbb 2.3.6 und kein lite
den oberenbereich
if(isset($useronlinebit) && $useronlinebit != '') $useronlinebit .= ', ';
habe ich nicht im index.php
Was mache ich nun ?
|
|
08.08.2014 09:22 |
|
|
|
Ist das hier noch aktuell??
Bin nämlich gerade am rumgrübeln, vielleicht hab ich es hier auch falsch verstanden,
denn das kann man doch alles im ACP
unter >Gruppen bearbeiten< ganz einfach anlegen,
in dem man in der gewünschten Gruppe bei >username-markierung> einfach folgendes einfügt:
code: |
1:
|
<span style='color: #990000;'><strong>%s</strong></span> |
|
LG Barbara
__________________
Lache nie über jemanden der einen Schritt zurücktritt,
er könnte Anlauf nehmen
|
|
21.09.2015 13:03 |
|
|
|
Hallo haumi,
Kannst du mir dieses einbauen ?
Gruß anje
__________________ Wer Fehler sieht und liest darf diese für sich behalten
|
|
16.12.2021 14:15 |
|
|
|