chris1278 hat geschrieben: 28.07.2021 17:05
Das Problem ist man mus dafür die posting editor ausblenden und durch eine Modifizierte für den Gast eingeschränkte Version ersetzen. Was ansich kein Problem wäre.
...
Wo wird aber in der viewtopic_body.html auf diese posting_body.html zugegriffen. weil ich kann weder in der posting_body noch in der posting_layout über events ausblenden und neu einblenden lassen. Das heist ich mus weiter vorher dieses steuern.
Punkt1: Diese Datei hat nur 2 Events und keines davon sitzt an der Position, die für eine Ausblenden/Hinzufügen Aktion benötigt würde. Schon alleine durch diese Tatsache, scheidet dein Ansatz aus.
Punkt2: Das nächste Problem ist, die
form
hat eine eindeutige ID. Du kannst also keine eigene Variante dieses Containers mit der gleichen ID einbinden, sondern müsstest auch eine eigene ID vergeben. Dazu müsste aber erst geklärt werden, ob dann noch alles funktionieren würde, wenn die ID anders lautet. Aber alleine durch Punkt1 wird Punkt2 ohnehin irrelevant.
Eine Variante wäre, per Ext das Core Template zu "überschreiben". Laut Ext Doku gibt es da wohl einen Weg, die Doku schweigt sich aber darüber aus, wie genau das gemacht werden muss und führt stattdessen eine explizite Warnung auf:
If a standard phpBB template filename is used for an extension template, then it will override the template file from phpBB. Therefore it is important to be mindful of this when naming template files. Overriding template files is not advisable for publicly released extensions as it could conflict with other extensions.
Das wäre also nur ein gangbarer Weg, solange die Ext Foren-Spezifisch genutzt, aber nicht veröffentlicht wird.
Eine andere Variante wäre jQuery (oder JS), mit dem man quasi zur Laufzeit eine Änderung im DOM vornimmt. Da hier ja JS auf jeden Fall aktiviert sein muss weil sonst gar nichts geht, wäre das zumindest theoretisch eine Möglichkeit. Aber:
@Bruno
Nur als Info: Ich habe mir das mal live bei dir angeschaut. Mit einem Browser der auf der Chrome Engine basiert, ist es ohne weitere Browser-Plugins kein Problem, deine "Schutzmassnahme" komplett zu umgehen. Bei anderen Browsern sind eventuell Plugins notwendig. Ich habe ein paar Minuten benötigt um mir anzuschauen was du bei phpBB geändert hast um darauf basierend eine "Gegenmassnahme" zu entwickeln. Es muss nur eine winzige Änderung in einer einzigen Zeile deines JS Codes geändert werden, dann kann das Ganze komplett umgangen werden.
Getestet habe ich das nur mit der Vorschau. Aber soweit ich das sehe, dürfte das dann auch mit "Absenden" problemlos gehen, sofern du nicht Serverseitig weitere Massnahmen ergriffen hast. Wenn du willst, können wir das ja testen.
Ein "Schutz" der darauf basiert, das JS ausgeführt werden
muss, darf von Anfang an als "geknackt" betrachtet werden. JS wird Clientseitig ausgeführt. Und was
ich da mit
deinem JS mache, darüber hast du keinerlei Kontrolle.
edit: Okay, ich habe gerade eben gesehen, das ihr die Diskussion über die Problematik ins WWH Forum verlagert habt. Dann klären wir das dort, die technischen Details sind ohnehin nicht "Öffentlichkeitstauglich".
