WBCE CMS Forum

WBCE CMS – Way Better Content Editing.

You are not logged in.

#1 11.03.2020 09:16:02

stefanek
Developer

Entfernen von Leerzeilen im FE/BE

mrbaseman wrote:

Das ist im "remove system PH" Filter momentan fest verdrahtet. Du kannst dort aber im Quellcode die Zeile auskommentieren.
Wenn es gewünscht ist, können wir die beiden Schritte (Platzhalter rauslöschen und Leerzeilen löschen) auch in zwei separate Filter packen, die man dann nach eigenem Gusto an- und ausschalten kann.

Das beste was man machen kann ist eine if Clause.
Wenn eingeloggt, nicht herausfiltern. Dann kann es in dem Filter bleiben.
Vielleicht etwa so:

if(defined('WB_FRONTEND') && isset($wb) && $wb->isLoggedIn == false){
   // remove empty lines
   .....
}

Probleme treten ja nur bei vorbelegten Formularen auf die nur eingeloggte Benutzer zu Gesicht bekommen.


Gruß,
Christian


"All the knowledge I possess everyone else can acquire, but my heart is all my own."
Johann Wolfgang von Goethe

Offline

#2 11.03.2020 11:17:04

mrbaseman
Developer

Re: Entfernen von Leerzeilen im FE/BE

stefanek wrote:

Das beste was man machen kann ist eine if Clause.
Wenn eingeloggt, nicht herausfiltern. Dann kann es in dem Filter bleiben.

Uuhhh, das halte ich für keine gute Idee. Florian hat ja schon geschrieben er sei fast kirre geworden, die Stelle zu finden, an der die Leerzeilen verschwinden. Wenn das jetzt noch in Abhängigkeit davon passiert, ob man gerade eingeloggt ist oder nicht, dann versteht es ja wirklich nur noch der absolute Insider, der sich mit den Interna des Filters auseinandergesetzt hat.

Chio: Ich hab ernsthaft schon daran gedacht, die nächsten Tage, wenn ich Zeit dazu finde, dir den passenden Schalter in den Filter einzubauen. Aber ich schließe mich Florian an: Die Motivation dafür ist irgendwie plötzlich verschwunden. Ich weiß gar nicht, wie das passieren konnte tongue . Vielleicht hast du ja Glück und mir fällt ein Use-Case ein, in dem das angedachte Feature auch für andere nützlich ist. Dann könnte es sein, dass ich es doch noch umsetze  big_smile

Offline

#3 11.03.2020 12:05:56

stefanek
Developer

Re: Entfernen von Leerzeilen im FE/BE

mrbaseman wrote:
stefanek wrote:

Das beste was man machen kann ist eine if Clause.
Wenn eingeloggt, nicht herausfiltern. Dann kann es in dem Filter bleiben.

Uuhhh, das halte ich für keine gute Idee. Florian hat ja schon geschrieben er sei fast kirre geworden, die Stelle zu finden, an der die Leerzeilen verschwinden. Wenn das jetzt noch in Abhängigkeit davon passiert, ob man gerade eingeloggt ist oder nicht, dann versteht es ja wirklich nur noch der absolute Insider, der sich mit den Interna des Filters auseinandergesetzt hat.

Wenn es so wie oben vorgeschlagen umgesetzt wird, wird in Eingabefeldern nichts mehr gelöscht und es wird nur noch die Ausgabe im Frontend betreffen. Somit muss auch keiner mehr danach suchen.
Außerdem sollte sich einer wundern, schreibt er ins Forum und da es jetzt "auf dem Schirm" ist, gibt es schnelle Abhilfe.
Aber wie gesagt, es wird realistisch gesehen keine Nebenwirkungen mehr geben.


"All the knowledge I possess everyone else can acquire, but my heart is all my own."
Johann Wolfgang von Goethe

Offline

#4 26.04.2020 15:33:16

klawin
Member

Re: Entfernen von Leerzeilen im FE/BE

Hallo,

mrbaseman wrote:

... kommentier einfach diese Zeile aus und in einer künftigen Version können wir das entweder in einen separaten Filter ziehen oder vielleicht noch besser als konfigurierbare Einstellung innerhalb dieses Filters umsetzen

ich antworte mal hier drauf, weil es am Besten zu meiner Frage passt :-)

Ich baue gerade ein Modul, welches einen pre-code mit Inhalt (zum Beispiel ein Stückchen PHP-Code) mit Syntax-Highlighting anzeigen soll. Dabei sollen natürlich die im Code vorhandenen Leerzeilen *nicht* entfernt werden. Mit dem empfohlenen Auskommentieren klappt dieses Vorhaben auch wie gewünscht.

Allerdings werden dann natürlich in der Seite überhaupt keine Leerzeilen mehr entfernt. Das bedeutet, dass die Stellen, an denen vorher die Platzhalter waren, nun eine Leerzeile ist.  Auch an anderen Stellen bleiben dann viele Leerzeilen übrig. Ist technisch eigentlich auch egal, weil es ja die Darstellung der Seite nicht beeinflusst. Aber es gibt/gab ja Gründer dafür, die Leerzeilen wieder raus zu nehmen.

Die Frage ist nun: Ist es irgendwie möglich nur die Leerzeilen zu entfernen, die der Platzhalter 'belegt' hat? Oder bestimmte Blöcke (pre-code) davon auszunehmen? Ich kenne mich mit den RegExp leider nicht so gut aus. Daher sind meine Versuche bisher gescheitert.

Derzeit kann ich mit der 'Kommentier-Empfehlung' gut leben.

Viele Grüße
klawin


Egal wie du es machst, du machst es falsch! Also mache es einfach.

Offline

#5 05.05.2020 07:46:48

florian
Administrator

Re: Entfernen von Leerzeilen im FE/BE

Ich habe die Posts mal aus dem Frontend-Final-CSS-Thread herausgelöst.
Nochmal zusammengefasst:
- erwünscht: "rückstandsloses" Entfernen der <!--PH--> -Platzhalter, d.h. es bleiben dort auch keine Lücken mehr im generierten Sourcecode
- nicht erwünscht: Entfernen von mit Bedacht angelegten Leerzeilen, z.B. im Output vom Modul Prism oder im Backend im Final-CSS

Auslöser: Zeile 38 in /modules/mod_opf_remove_system_ph/filter.php

Aktueller Workaround: Auskommentieren der betr. Zeile

Last edited by florian (05.05.2020 08:51:55)

Offline

Liked by:

klawin

#6 06.05.2020 18:08:46

mrbaseman
Developer

Re: Entfernen von Leerzeilen im FE/BE

Ok, ich kümmere mich drum.

Offline

Liked by:

florian

#7 06.05.2020 21:07:25

mrbaseman
Developer

Re: Entfernen von Leerzeilen im FE/BE

Hier ein Update des Filtermoduls. Mit dieser Variante werden nur die Leerzeilen entfernt, die dadurch entstehen würden, dass die Platzhalter von der jeweiligen Zeile herausgelöscht werden. Alle anderen Zeilen, auf denen schon vorher kein Inhalt gestanden hatte, bleiben erhalten.

Offline

Liked by:

klawin

#8 07.05.2020 07:23:19

florian
Administrator

Re: Entfernen von Leerzeilen im FE/BE

Funktioniert hervorragend, vielen Dank. Sogar in Verbindung mit dem HTML-Compactor-OPF.

Offline

#9 07.05.2020 21:59:50

mrbaseman
Developer

Re: Entfernen von Leerzeilen im FE/BE

und sogar schon auf github eingepflegt. Ich wollte es gerade dort mit einchecken und habe gesehen, dass du das schon übernommen hast. Danke, Florian.

Offline

Board footer

Powered by FluxBB

up