Hallo zusammen!
Kann man den Snippet "BBcodes für bestimmte Benutzer sperren/freigeben" evtl auch so ändern, daß z.B. die Textfarbe rot nur für Mods und Admins verfügbar ist?
Danke für Eure Hilfe
Gruß Kami
Snippet: BBcodes für bestimmte Benutzer sperren/freigeben
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.
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.
Nun ja, eine Farbe nur für bestimmte Benutzer zu erlauben ist nicht wirklich so einfach:
Worauf ich damit hinaus will: Beim phpBB kannst du die Farbe nicht nur als Farbname (red) sondern auch als hexadezimalen RGB-Wert (#ff0000) angeben.
siehe dazu:
http://www.phpbb.de/faq.php?mode=bbcode#2
http://www.w3.org/TR/CSS21/syndata.html#color-units
http://de.wikipedia.org/wiki/RGB-Farbraum
Das Rot (Farbname red) was du beim Beitrag erstellen aus der Auswahlliste auswählen kannst, entspricht der hexadezimalen Darstellung #ff0000. Klar könntest du red und #ff0000 ausfiltern, doch - und jetzt komm ich zurück auf die anfängliche Liste - gibt es verschiedene Rottöne die man mittels hexadezimaler Angabe darstellen kann. Bspw. könnte man auch #fe1601 angeben. Selbst wenn du zwischen den beiden Farben einen Unterschied bemerken würdest (was ich bezweifel), können das auch deine Benutzer?
Wenn du also wirklich sichergehen willst, das nur bestimmte Benutzer rot verwenden können, müsstest du entweder die Angabe von RGB-Werten unterbinden oder aber ein bestimmtes Spektrum an hexadezimaler RGB-Werte verbieten. Ersteres ist einfach, letzteres würd ich persönlich nicht zustande bringen.
Was willst du also machen (um mal zum Schluß zu kommen): Das ganze sein lassen oder die Angabe von hexad. Werten unterbinden und nur Admins und Mods die Angabe von red als Farbname erlauben?
- gibt es unterschiedliche Rottöne
- kann die Farbwahrnehmung von Benutzer zu Benutzer eine unterschiedliche sein
- kann die Farbdarstellung auf dem Bildschirm von System zu System eine unterschiedliche sein
Worauf ich damit hinaus will: Beim phpBB kannst du die Farbe nicht nur als Farbname (red) sondern auch als hexadezimalen RGB-Wert (#ff0000) angeben.
siehe dazu:
http://www.phpbb.de/faq.php?mode=bbcode#2
http://www.w3.org/TR/CSS21/syndata.html#color-units
http://de.wikipedia.org/wiki/RGB-Farbraum
Das Rot (Farbname red) was du beim Beitrag erstellen aus der Auswahlliste auswählen kannst, entspricht der hexadezimalen Darstellung #ff0000. Klar könntest du red und #ff0000 ausfiltern, doch - und jetzt komm ich zurück auf die anfängliche Liste - gibt es verschiedene Rottöne die man mittels hexadezimaler Angabe darstellen kann. Bspw. könnte man auch #fe1601 angeben. Selbst wenn du zwischen den beiden Farben einen Unterschied bemerken würdest (was ich bezweifel), können das auch deine Benutzer?
Wenn du also wirklich sichergehen willst, das nur bestimmte Benutzer rot verwenden können, müsstest du entweder die Angabe von RGB-Werten unterbinden oder aber ein bestimmtes Spektrum an hexadezimaler RGB-Werte verbieten. Ersteres ist einfach, letzteres würd ich persönlich nicht zustande bringen.
Was willst du also machen (um mal zum Schluß zu kommen): Das ganze sein lassen oder die Angabe von hexad. Werten unterbinden und nur Admins und Mods die Angabe von red als Farbname erlauben?
Hallo punkface.
Das mit den Rottönen und so kenne ich, ich fluche seber stöändig, wenn ich eine bestimmte "Schattierung" für html suche.
Aber btt: So wie ich das verstanden habe, kann ich unterbinden, dass man beim Schreiben eines Beitrages durch [ color=#xxxxxx] die Farbe wählt, aber aus der Auswahlliste geht das dann noch? Insofern käme dann für mich die Alternative
Gruß Kami
Das mit den Rottönen und so kenne ich, ich fluche seber stöändig, wenn ich eine bestimmte "Schattierung" für html suche.
Aber btt: So wie ich das verstanden habe, kann ich unterbinden, dass man beim Schreiben eines Beitrages durch [ color=#xxxxxx] die Farbe wählt, aber aus der Auswahlliste geht das dann noch? Insofern käme dann für mich die Alternative
in Frage, nur das die Farbe "Rot" dann nur bei Admins und Mods auftauchen sollte... Ich hoffe nur, dass das nicht zu aufwendig ist.punkface hat geschrieben:oder die Angabe von hexad. Werten unterbinden und nur Admins und Mods die Angabe von red als Farbname erlauben?
Gruß Kami
Das ist wie gesagt ziehmlich einfach.
functions_post.php
suche
füge davor ein
bbcode.php
suche
ersetzte das mit
Das wirkt sich allerdings nicht auf schon geschriebene Beiträge aus.
functions_post.php
suche
Code: Alles auswählen
$message = bbencode_first_pass($message, $bbcode_uid);
Code: Alles auswählen
// Snippet: Rot nur für Admins und Moderatoren erlauben
// siehe: http://www.phpbb.de/viewtopic.php?t=153739
$GLOBALS['__uid'] = $bbcode_uid;
suche
Code: Alles auswählen
$text = preg_replace("#\[color=(\#[0-9A-F]{6}|[a-z\-]+)\](.*?)\[/color\]#si", "[color=\\1:$uid]\\2[/color:$uid]", $text);
Code: Alles auswählen
// Snippet: Rot nur für Admins und Moderatoren erlauben
// siehe: http://www.phpbb.de/viewtopic.php?t=153739
//$text = preg_replace("#\[color=(\#[0-9A-F]{6}|[a-z\-]+)\](.*?)\[/color\]#si", "[color=\\1:$uid]\\2[/color:$uid]", $text);
function color_filter($ary) {
if (strtolower($ary[1]) == 'red' and $GLOBALS['userdata']['user_level'] < ADMIN) {
return $ary[2];
}
return sprintf('[color=%2$s:%1$s]%3$s[/color:%1$s]', $GLOBALS['__uid'], $ary[1], $ary[2]);
}
$text = preg_replace_callback("#\[color=([a-z\-]{3,19})\](.*?)\[/color\]#si", 'color_filter', $text);
Das wirkt sich allerdings nicht auf schon geschriebene Beiträge aus.
Zuletzt geändert von punkface am 26.08.2007 14:41, insgesamt 1-mal geändert.