[gelöst] Advanced Forum + CKeditor + Quote-Modul

am 16.02.2020 - 11:32 Uhr in
Hallo Freunde,
mit (Core)Forum + Advanced Forum erstelle ich gerade ein Forum (Drupal 7).
Ich würde dazu auch gerne eine "Zitat"-Funktion nutzen, sprich, der User kann Foren-Posts zitieren.
Dafür gibt es das Modul "Quote" https://www.drupal.org/project/quote
"Quote" erzeugt in jedem Footer der Forenposts einen "Quote/Zitat"-Link, auf den der User klicken kann und dann wird automatisch die Comment-Add-Form (am Seitenende) mit dem zitierten Text gefüllt.
Das sieht dann so aus:
<blockquote><strong>User A wrote:</strong>
Hier ist der zitierte Text</blockquote>
Das Problem hierbei ist, dass das nur funktioniert wenn in der Comment-Add-Form "Plain Text" als Textformat verwendet ist. Will man z.B. den CKEditor verwenden (z.B. als Textformat "Filtered html"), funktioniert das zitieren nicht mehr. Der Blockquote wird nicht mehr automatisch in die Add-Form übertragen.
Auch das Ändern/Anpassen der quote.js bringt nichts (CKEditor verändert ja die Namen der Divs). In den Issues von CKEditor steht, dass CKEditor einige Security-Filter verwendet und scheinbar verhindern diese Filter das automatische Einfügen von Quotes.
Hat jemand eine Idee wie man dieses Problem lösen kann?
Ich möchte gerne einen Editor verwenden (wegen Smileys & Co.) - gleichzeitig brauche ich aber auch eine einfache Zitat-Funktion, da andernfalls die User umständlich den Text zuerst per Copy&Paste in den Editor kopieren und ihn dann im Editor als "Zitat" markieren müssen. Das ist zu unpraktisch.
Kennt jemand eine funktionierende Lösung für dieses Problem? Gerne auch mit einem anderen Editor oder anderen Modulen?
Danke und Gruß
Matthias
- Anmelden oder Registrieren um Kommentare zu schreiben
Ok, es ist doch einfacher als
am 16.02.2020 - 13:20 Uhr
Ok, es ist doch einfacher als gedacht und es liegt auch nicht an irgendwelchen CKEditor-Security-Filtern.
Da sich der CKEditor in einem Iframe befindet, muss man einfach nur den jQuery-Code anpassen und das Iframe direkt ansprechen. Mit dem verwendeten Standardverfahren in der quote.js funktioniert das nicht.
Hier ist ein Beispiel, wie man das machen muss.
https://www.tutorialrepublic.com/faq/how-to-insert-html-content-into-an-...
Das funktioniert wunderbar.
Am besten die originale quote.js duplizieren, dann in den js-Theme-Ordner verschieben und das Original per hook_js_alter unsetten, damit bei einem späteren möglichen Quote-Module-Update die Änderungen nicht überschrieben werden.
https://www.jasom.net/how-to-override-replace-alter-javascript-file-used...