[color] BBCode nur für Moderatoren

In diesem moderierten Forum werden Code-Schnipsel, die zu klein sind, um richtige Mods zu sein, abgelegt.
Snippets können über unser Kontaktformular eingereicht werden (bitte als vollständiger, Copy&Paste fähiger Beitrag).
Bei Fragen oder Problemen benutze bitte das Forum [3.0.x] Mod Support.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

[color] BBCode nur für Moderatoren

Beitrag von nickvergessen »

Mit diesem Snippet kann man verhindern, dass normale Benutzer den Farb-BBCode benutzen.
Dafür sind nur 3 kleine Code-Änderungen nötig:

Öffne posting.php

Finde:

Code: Alles auswählen

		$message_parser->parse($post_data['enable_bbcode'], ($config['allow_post_links']) ? $post_data['enable_urls'] : false, $post_data['enable_smilies'], $img_status, $flash_status, $quote_status, $config['allow_post_links']);
Davor einfügen:

Code: Alles auswählen

		if (!$auth->acl_get('m_', 'a_'))
		{
			$message_parser->set_disable_color_bbcode(true);
		}
Man kann hier auch ein anderes Recht als Grundlage nehmen, z.B. 'f_flash'

Code: Alles auswählen

if (!$auth->acl_get('f_flash'))
hieße zum Beispiel, dass Benutzer die Flash benutzen dürfen, auch Farben benutzen können.

Öffne includes/message_parser.php

Finde:

Code: Alles auswählen

	/**
	* Parse color tag
	*/
Davor einfügen:

Code: Alles auswählen

	var $color_bbcode_disabled = false;

	/*
	* Change disable color bbcode
	*/
	function set_disable_color_bbcode($value = true)
	{
		$this->color_bbcode_disabled = (bool) $value;
	}
Finde:

Code: Alles auswählen

		return '[color=' . $stx . ':' . $this->bbcode_uid . ']' . $in . '[/color:' . $this->bbcode_uid . ']';
	}
Davor einfügen:

Code: Alles auswählen

		if ($this->color_bbcode_disabled)
		{
			return $in;
		}
kein Support per PN
Antworten

Zurück zu „[3.0.x] Snippets“