bbCode Button nur für Admins

Alles zu Styles, Templates, Icons und Smilies für phpBB 2.0, sowie allgemeine Designfragen zur Integration von phpBB in bestehende Websites.
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
Benutzeravatar
Elvis
Mitglied
Beiträge: 3373
Registriert: 26.05.2003 22:39

bbCode Button nur für Admins

Beitrag von Elvis »

Hallo,
wie kann cih deinzelne bbCode Buttons nur für den Admin zulassen ???

wenn ein User zb den bbCode [IMG] klicken will soll der nicht zu sehen sein und wenn der User dieses eingibt [IMG] soll es keine Funktion haben wobei der Admin das ganz normal nutzen kann.
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Das Verstecken kannst du mit einem Switch im Template machen der einen entsprechenden Gegenpart im Quellcode der posting.php besitzt:

Code: Alles auswählen

<!-- BEGIN switch_is_admin -->
Code für Button
<!-- END switch_is_admin -->

Code: Alles auswählen

if($userdata['user_level'] == ADMIN)
{
$template->assign_block_vars('switch_is_admin',array());
}
Das andere wird schon komplizierter, denn dazu musst du entweder bei dem geposteten Text bei der Anzeige zwischen Admin und User unterscheiden oder aber den Code schon beim speichern in der DB umwandeln. Zweitere Methode hätte den Vorteil dass ein Admin Bilder nachträglich zulassen könnte indem dieser den Beitrag nachbearbeitet, während die Erste den Vorteil hat, auch auf bereits bestehende Posts zu wirken.

Ich habe bei mir Methode 2 realisiert, wobei außerdem eine spezielle Gruppe zugelassen ist:

Code: Alles auswählen

//---- EDITED FROM HERE ----
		global $db,$userdata;
		$sql = 'SELECT user_id FROM '. USER_GROUP_TABLE . ' WHERE (group_id=1) AND user_id='.$userdata['user_id'];
		if (!$result = $db->sql_query($sql))
		{
			message_die(GENERAL_ERROR, 'Could not obtain group data', '', __LINE__, __FILE__, $sql);
		}
		if(!$db->sql_numrows($result) && $userdata['user_level'] != ADMIN)
		{
			//Remove forbidden tags from posted message
			$message = preg_replace("#\[Img\](.*?)\[/Img\]#is","[url=\\1]Dieser Tag ist nicht zulässig, das Bild wird als URL dargestellt[/url]",$message);
			
		}
		//---- END EDIT ----
Die Änderung muss in der functions_post.php gemacht werden und zwar in der funktion prepare_message() direkt nach dem hier:

Code: Alles auswählen

if($bbcode_on && $bbcode_uid != '')
	{
Wie immer gilt:Zuerst ein Backup machen!
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Benutzeravatar
Elvis
Mitglied
Beiträge: 3373
Registriert: 26.05.2003 22:39

Beitrag von Elvis »

Das mit dem Switch wusste ich nur das andere nicht.

Danke.
Antworten

Zurück zu „phpBB 2.0: Styles, Templates und Grafiken“