WYSIWYG Editor

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Pelix
Mitglied
Beiträge: 7
Registriert: 13.05.2015 10:27

WYSIWYG Editor

Beitrag von Pelix »

Hallo,

habe ein wenig bei Google gesucht aber nichts brauchbares gefunden.

Gibt es irgendwie eine Möglichkeit einen WYSIWYG Editor für das Forum zu nutzen?
Ich bekomme den Editor schon rein und er funktioniert auch nur will das Forum die
HTML-Tags nicht speichern.

Jemand eine Ahnung wo man was ändern muss, damit die HTML-Tags wie z.B. <p></p>
richtig in die Datenbank eingetragen werden?
Benutzeravatar
AYYILDIZLAR
Ehemaliges Teammitglied
Beiträge: 4148
Registriert: 09.11.2010 18:08
Kontaktdaten:

Re: WYSIWYG Editor

Beitrag von AYYILDIZLAR »

Hallo,

Ich komme jetzt leider nicht so ganz mit bzw. habe deine "Frage" nicht zu 100% verstanden.
Suchst du jetzt einen WYSIWYG Editor? Oder hast du schon so einen Editor/MOD eingebaut und bist auf der Suche nach Support wegen der MOD? Wenn ja, bitte benenne den Helfenden die MOD + Downloadlink der MOD.

Grüße
DasEtwasAndereMotorradforum.de
Deutsche Übersetzung der Tapatalk Extension | Deutsche Übersetzung der Tapatalk MOD
Bitte keine PN wegen Support, werde diese zukünftig ignorieren und gleich löschen.
Pelix
Mitglied
Beiträge: 7
Registriert: 13.05.2015 10:27

Re: WYSIWYG Editor

Beitrag von Pelix »

Ne, ich habe keinen über MOD eingebaut.

Ich habe einfach den ckeditor hochgeladen und im template zum textarea die class="ckeditor" hinzugefügt.
Das funktioniert auch nur wenn man einen Text einträgt und diesen speichert, sieht der Beitrag leider nicht
so aus wie in dem Editor da das phpbb absolut kein HTML übernimmt.

Gibt es eine Möglichkeit wie bei den meisten anderen Foren einzustellen, dass der Text mit HTML gespeichert
wird?

Nein, es gibt hier keine Sicherheitsprobleme da der Editor den Quelltext selbst nicht anzeigt, dass heißt ich
habe als User nicht die Möglichkeit eigene HTML-Tags einzutragen. Das übernimmt der Editor im Hintergrund.

Kurze Erklärung warum:

Das Forum liegt auf http://domain.de/forum/ und ist mit der Webseite selbst die im root-Verzeichnis liegt
"verbunden". Die Startseite zieht sich aus bestimmten Foren die letzten Einträge und gibt diese als eine Art
"Artikel" wieder. Wenn man den Artikel anklickt kommt man direkt auf das Thema im Forum.

Problem hier ist: die BBCodes werden auf der Startseite als BBCode angezeigt - also nicht umgewandelt. Zudem
ist der Editor vom Forum nicht so der Renner wenn man z.B. formatierte Dokumente aus Word einfügen möchte.
Natürlich wird die Formatierung zerschossen was der ckeditor nicht macht.

Nur auch mit dem cdkeditor werden z.B. Befehle wie <center> nicht übernommen. Die < > werden in der Datenbank
leider als HTML-Tag selbst erzeugt und stehen so auch in den Artikeln.

Hoffe ist verständlich... :D



//EDIT: Auch hier habe ich gerade die Lösung gefunden. Allerdings nicht über Google... hatte einfach eine Idee und
habe das mal getestet. Es geht dabei gar nicht darum, den Inhalt via "HTML" in die Datenbank zu bekommen, es geht
eher darum, den Inhalt korrekt anzeigen zu lassen.

Wenn es jemanden interessiert, dass Stichwort ist: html_entity_decode

In der Datei viewtopic.php die Zeile 1534 einfach mit dem hier austauschen:

Code: Alles auswählen

$message = html_entity_decode(generate_text_for_display($row['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $parse_flags, true));
Danach sollten alle HTML-Tags auch richtig umgewandelt werden.
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Re: WYSIWYG Editor

Beitrag von gn#36 »

Nein, phpbb übernimmt keinerlei HTML in Beiträgen und es gibt auch keinen eingebauten Schalter der das ändert.

Du könntest selber einen Parser bauen, der den HTML Code erst mal in bbcodes konvertiert So dass phpbb das die Tags interpretiert, oder du könntest dir für die notwendigen Befehle selbst bbcodes definieren (evtl. geht das auch direkt mit konkreten html tags, ansonsten reicht es hinterher evtl. einfach < > gegen [ ] zu tauschen, bevor der bbcode parser angeworfen wird).
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Pelix
Mitglied
Beiträge: 7
Registriert: 13.05.2015 10:27

Re: WYSIWYG Editor

Beitrag von Pelix »

Es funktioniert inzwischen.

Allerdings finde ich einige Einträge nicht.

Jemand eine Ahnung wo die Inhalte von PN, Vorschau, etc. definiert sind? Ich meine damit nicht das template
sondern die tatsächliche *.php File.
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Re: WYSIWYG Editor

Beitrag von gn#36 »

Die nutzen alle die Funktion generate_text_for_display, daher brauchst du eigentlich nur diese Funktion suchen. includes/functions_post.php oder sowas wenn ich mich nicht irre. Wenn du einfach unsere Xref nutzt kannst du einfach auf die Funktionsaufrufe klicken und es zeigt dir wo selbige definiert oder verwendet wird.

Übrigens erlaubst du mit dieser Änderung beliebigen HTML Code völlig unkontrolliert.

Das kann auch das Layout zerlegen oder jemand schleust fest eingebauten Schadcode ein. Sofern du nicht allen Forennutzern jederzeit vertraust (auch allen die sich erst in ein paar Tagen oder Jahren registrieren werden), z.B. weil du sie persönlich kennst würde ich diese Änderung so auf keinen Fall machen. Selbst wenn dein WYSIWYG Editor sowas vielleicht clientseitig verhindern würde kannst du dich nicht darauf verlassen, denn du hast keine Kontrolle über den Browser des Users. Man kann mit beliebigen Webentwickler Tools Anfragen an den Server beliebig manipulieren.

Da die Änderung sämtliche Schutzmaßnahmen auch für vorhandene Posts unwirksam macht ist auch eventuell schon vorhandener (z.B. von Bots), aber bisher unschädlicher Schadcode wieder gefährlich.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Pelix
Mitglied
Beiträge: 7
Registriert: 13.05.2015 10:27

Re: WYSIWYG Editor

Beitrag von Pelix »

Diese Bedenken sind mir alle bewusst. Aus diesem Grund haben wir auch angefangen bestimmte Funktionen einfach
zu unterbinden wie <iframe.. oder die ganzen <meta - Geschichten.

Mir fehlt jetzt tatsächlich nur noch die Definition für Vorschau der Beiträge / PN. Alles Andere funktioniert soweit.
Nur entweder bin ich blind oder in der function_posting.php wird die Vorschau nicht wirklich definiert.
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Re: WYSIWYG Editor

Beitrag von gn#36 »

Dann bau deinen Einzeiler doch einfach in die Funktion generate_text_for_display ein statt die an X Stellen einzubauen, die wie schon gesagt an allen Stellen benutzt wird um die BBcodes zu decodieren. PNs sind evtl. in includes/ucp/ucp_pm.php, ansonsten nutz doch einfach die Xref und schau dort nach obiger Funktion, die Xref listet auch sämtliche Stellen auf, an denen die Funktion aufgerufen wird.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Antworten

Zurück zu „Coding & Technik“