Bestimmter BBCode nur für bestimmte User nutzbar
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.
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.
Bestimmter BBCode nur für bestimmte User nutzbar
Ich kann mich dunkel erinnern (hab nur nix gefunden), das es für phpBB2 einen Hack gab, dass nur bestimmte User einen bestimmten BBCode nutzen können.
Ich habe einen BBCode definiert (BBCodeBox3), den zwar nur ein eingeschränkter Kreis kennt, aber durch Zitieren ist er ja für andere erlernbar. Hat jemand einen Tipp, wie ich bei "Fremdnutzern" eine einfache Ersetzung vornehmen kann? (Im konkreten Fall wäre eine Ersetzung durch quote OK)
Ich habe einen BBCode definiert (BBCodeBox3), den zwar nur ein eingeschränkter Kreis kennt, aber durch Zitieren ist er ja für andere erlernbar. Hat jemand einen Tipp, wie ich bei "Fremdnutzern" eine einfache Ersetzung vornehmen kann? (Im konkreten Fall wäre eine Ersetzung durch quote OK)
- Vereinfachtes Verbieten und Erlauben der BBCodes (Update 26.05.2008)
Das bringt leider jede Menge unschöne Meldungen (siehe unten) und wenn ich es richtig verstehe, klappt dann ja auch kein Zitieren, oder? Das war der Grund, warum ich statt striktem Verbot, gern ein Ersetzen möchte.4seven hat geschrieben:- Vereinfachtes Verbieten und Erlauben der BBCodes (Update 26.05.2008)
Aus
Code: Alles auswählen
[blub=ABC]def[/blub]
Code: Alles auswählen
[quote=ABC]def[/quote]
Hier noch die Meldungen, beim Versuch den Linktipp anzuwenden:
Code: Alles auswählen
[phpBB Debug] PHP Notice: in file /includes/message_parser.php on line 55: Invalid argument supplied for foreach()
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3526: Cannot modify header information - headers already sent by (output started at /includes/functions.php:2956)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3528: Cannot modify header information - headers already sent by (output started at /includes/functions.php:2956)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3529: Cannot modify header information - headers already sent by (output started at /includes/functions.php:2956)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3530: Cannot modify header information - headers already sent by (output started at /includes/functions.php:2956)
OK, die Fehlermeldungen kommen jetzt nicht mehr.
Aber wie befürchtet, schlägt das Verbot dann auch beim Zitieren zu.
Das soll es aber nicht, da das rauseditieren des verbotenen Codes nicht zumutbar ist.
Wie im vorherigen Beitrag beschrieben, ein einfaches Ersetzen würde reichen. Moderatoren sollen den Code verwenden können, wenn der Code in Beiträgen von normalen Usern vorkommt, soll er ersetzt werden.
Aber wie befürchtet, schlägt das Verbot dann auch beim Zitieren zu.
Das soll es aber nicht, da das rauseditieren des verbotenen Codes nicht zumutbar ist.
Wie im vorherigen Beitrag beschrieben, ein einfaches Ersetzen würde reichen. Moderatoren sollen den Code verwenden können, wenn der Code in Beiträgen von normalen Usern vorkommt, soll er ersetzt werden.
thema fehlermeldungen > Einbaufehler (evtl. auch falschen editor genommen)
ok, da lief wohl was falsch bei dir oder du hast den sinn dieses plugins nicht verstanden. es verhindert, das bestimmte gruppen bestimmte bbcodes benutzen können. das wars. es ist ja wohl nur logisch, das, wenn ich bestimmte bbcodes nicht benutzen darf, ich es auch beim zitieren nicht darf, sonst wäre es ja easy zu umgehen.

ok, da lief wohl was falsch bei dir oder du hast den sinn dieses plugins nicht verstanden. es verhindert, das bestimmte gruppen bestimmte bbcodes benutzen können. das wars. es ist ja wohl nur logisch, das, wenn ich bestimmte bbcodes nicht benutzen darf, ich es auch beim zitieren nicht darf, sonst wäre es ja easy zu umgehen.
Die Betonung liegt auf einfach *g. Das wäre ein "kleiner" Mod, da speziell. Wer sich da ran machen möchte, immer zubrummel hat geschrieben:Wie im vorherigen Beitrag beschrieben, ein einfaches Ersetzen würde reichen. Moderatoren sollen den Code verwenden können, wenn der Code in Beiträgen von normalen Usern vorkommt, soll er ersetzt werden.

Das Verbot schlägt jetzt beim Zitieren nicht mehr zu, sondern nur beim Eröffnen eines Threads und dem normalen Antworten. Lediglich der Klick auf den Zitierknopf erlaubt das Darstellen (Benutzen) des Codes. Es nützt also auch nichtsbrummel hat geschrieben:Aber wie befürchtet, schlägt das Verbot dann auch beim Zitieren zu.
Das soll es aber nicht, da das rauseditieren des verbotenen Codes nicht zumutbar ist.
von Hand einzutragen.
Demo
http://sekuro.se.funpic.de/phpbb3/viewt ... 1&f=6&t=83
Bei Interesse stell ichs ein.
Oh, jetzt hast Du es entfernt4seven hat geschrieben:.........

Da ich jetzt dieses Problem auf den damals hier diskutierten Code zurückführen konnte, wollte ich mal schauen, ob durch das Auto-Update auf Version 3.0.2 evtl. was verrutscht ist.
In der includes/message_parser.php wurde vor diese Zeilen
Code: Alles auswählen
// Parse smilies
if ($allow_smilies)
{
$this->smilies($config['max_' . $mode . '_smilies']);
}
Code: Alles auswählen
// Only real Quote allow forbidden BBCodes by 4seven/2008
$post_id = request_var('p', 0);
$topic_id = request_var('t', 0);
$forum_id = request_var('f', 0);
$draft_id = request_var('d', 0);
$lastclick = request_var('lastclick', 0);
$submit = (isset($_POST['post'])) ? true : false;
$preview = (isset($_POST['preview'])) ? true : false;
$save = (isset($_POST['save'])) ? true : false;
$load = (isset($_POST['load'])) ? true : false;
$delete = (isset($_POST['delete'])) ? true : false;
$cancel = (isset($_POST['cancel']) && !isset($_POST['save'])) ? true : false;
$refresh = (isset($_POST['add_file']) || isset($_POST['delete_file']) || isset($_POST['cancel_unglobalise']) || $save || $load) ? true : false;
$mode = ($delete && !$preview && !$refresh && $submit) ? 'delete' : request_var('mode', '');
$error = $post_data = array();
$current_time = time();
switch ($mode)
{
case 'quote':
if (!$post_id)
{
$user->setup('posting');
trigger_error('NO_POST');
}
$sql = 'SELECT f.*, t.*, p.*, u.username, u.username_clean, u.user_sig, u.user_sig_bbcode_uid, u.user_sig_bbcode_bitfield
FROM ' . POSTS_TABLE . ' p, ' . TOPICS_TABLE . ' t, ' . FORUMS_TABLE . ' f, ' . USERS_TABLE . " u
WHERE p.post_id = $post_id
AND t.topic_id = p.topic_id
AND u.user_id = p.poster_id
AND (f.forum_id = t.forum_id
OR f.forum_id = $forum_id)";
break;
}
// Only real Quote allow forbidden BBCodes by 4seven/2008
// Group-Request by Dr. Death
// Standardgruppen: 1 Gäste, 2 Registrierte,
// 4 Globale Moderatoren, 5 Administratoren.
// Tragt einfach die Gruppen IDs ein, entweder
// Einzelne: array(7) oder Mehrere: array(7,10,12)
$gruppen_id = array(2359,2360);
$benutzer_id = $user->data['user_id'];
$is_in_group = group_memberships($gruppen_id, $benutzer_id , true);
if ((!$is_in_group == true) && ($mode !== 'quote')){
//if (!$is_in_group == true){
// Group-Request by Dr. Death
// ---------------------------------------
// Forbid/Allow Custom BBCodes by 4seven/2008
// Erlaubt eingetragene BBCodes nur für bestimmte Gruppen.
// Die für die oben angegebene IDs freigegebenen BBCodes
// sind mit Komma zu trennen z.B. ('youtube, clipfish').
$disallow = array('mod=');
foreach ($disallow as $bool);
$this->bbcodes[$bool]['disabled'] = true;
}
// Forbid/Allow Custom BBCodes by 4seven/2008