[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.
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 » 06.07.2011 19:15

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“