[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.
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11558
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

[color] BBCode nur für Moderatoren

Beitragvon 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

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