Hallo, Gast! (Registrieren)

Letzte Ankündigung: Sicherheitsupdate: MyBB 1.8.26 veröffentlicht (10.03.21)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Reihenfolge der Hooks?
#21
Naja, aber da get_thread eine TID welche ich nicht habe als Parameter will, muss ich wohl oder übel eine Abfrage machen :/ ... Habe zumindest in $GLOBALS, $mybb, und $settings beim durchsuchen nichts gefunden...
Zitieren
#22
... in welchem Hook bist du da gleich nochmal?
Zitieren
#23
Ich versuche gerade die Inline-Bearbeitung, also "xmlhttp" Smile. Danach mache ich den Hook des Editors ^^
Zitieren
#24
Ok, da ist es kein Wunder. Der xmlhttp Hook wird aufgerufen, bevor xmlhttp irgendwas macht. Das ist ja nicht (nur) zum editieren da. An der Stelle ist auch noch nicht geprüft worden, ob der User überhaupt die Berechtigung zum Editieren hat. Ist daher eher ungünstig.

Kannst du keinen der post datahandler Hooks verwenden?
Zitieren
#25
Achso ^^

Okay, werde ich machen, sobald ich weiß was es ist xD
-
Gerade mal hier nachgeschaut: http://docs.mybb.com/MyBB_Plugin_Hooks.html

Sollte ich also den Hook "datahandler_post_insert_post" verwenden? Oder ist dieser nur beim erstellen eines Threades?
Zitieren
#26
Ich hoffe ich habe diese Frage nicht bereits gestellt, aber beim schnellen Überfliegen dieses Themas habe ich nichts gefunden.

Ich habe - wieder mal - ein Problem mit dem Benutzen der Hooks. Mein Plugin benutzt eine Parser-Klasse von Christian Seiler, welche bestimmten BBCode durch HTMLCode ersetzt; Nun habe ich aber das Problem, dass ich keine anderen Tags im Tag selber benutzen kann, da MyBB diese vorher parst, und das/der Tag danach nicht wieder erkannt wird. Wenn ich jedoch den parse_message_start hook nehme, wird alles schön umkomvertiert - Und der HTML-Code "escapt". Ich könnte jetzt natürlich $parser global machen und $parser->options['allow_html'] auf true stellen, allerdings wirft es dann die ganzen Einstellungen vom Administrator um. Was ist hier die eleganteste Art es zu lösen?
Zitieren
#27
Gute Frage, ich habe dazu spontan keine Idee. Wink 2 Parser sind allerdings suboptimal...
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#28
Hm, aber selbst wenn ich zwei Parser benutzen würde, müsste die ganze Nachricht nochmal durch den normalen Parser, welcher das HTML escapt (parse_message_start & parse_message) oder die anderen vorhandenen Tags nicht mitparst (parse_message_end) :/..
Zitieren
#29
Du könntest den HTML-Code selber escapen und dann wieder unescapen zum Schluß.

Aber das ganze klingt sehr verquert. Wenn der andere Parser zuviel macht, implementiere diesen zusätzlichen BBCode selbst, wenn es nicht mit MyCode geht.
Zitieren
#30
Hab' es jetzt hinbekommen, indem ich den User die enthaltenen Tags escapen lasse, im pasrse_message Hook meinen eigenen Tag parse & die escapten [] mit normalen [] ersetze, und dann nochmal $parser->parse_mycode aufrufe. Nicht gerade elegant, aber was solls...

Edit:
@frostschutz
Stimmt, dann bräuchte der User selbst nichts machen :o ... Edit2: Aber dann würde sich doch die Sicherheitslücke auftun, dass der User beliebigen HTML-Code in den Beitrag schreiben kann?
Anfangsbeitrag ist zB so:
Code:
[meintag][/meintag]
<b>Hallo</b>
Nach dem parsen von meinem Tag:
Code:
&lti&gtMeinTagUmgewandelt&lt/i&gt
&ltb&gtHallo&lt/b&gt
Nach meinem zweiten umwandeln
Code:
<i>MeinTagUmgewandelt</i>
<b>Hallo</b>
Obwohl es so sein sollte:
Code:
<i>MeinTagUmgewandelt</i>
&ltb&gtHallo&lt/b&gt

Selber implementieren wird wohl etwas schwerer, da der BBCode alle möglichen Argumente hat, und der Parser von Christian Seiler bereits alles macht :/
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Was genau sind "Hooks"? itsmeJAY 1 696 05.02.2019, 10:18
Letzter Beitrag: bv64
  [geteilt] Reihenfolge der Hooks? Sense 6 1.814 15.12.2013, 14:46
Letzter Beitrag: Sense
  Hooks: Dokumentation, in welcher die mitgegebenen Argumente aufgelistet sind? Javatic 2 1.062 27.07.2013, 18:18
Letzter Beitrag: Javatic
  Hooks werden nicht immer ausgeführt! icarus 9 2.087 16.11.2011, 17:47
Letzter Beitrag: icarus