WBCE CMS Forum

WBCE CMS – Way Better Content Editing.

Du bist nicht angemeldet.

#1 11.03.2020 08:16:02

stefanek
Developer

Entfernen von Leerzeilen im FE/BE

mrbaseman schrieb:

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


“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale

Offline

#2 11.03.2020 10:17:04

mrbaseman
Developer

Re: Entfernen von Leerzeilen im FE/BE

stefanek schrieb:

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 11:05:56

stefanek
Developer

Re: Entfernen von Leerzeilen im FE/BE

mrbaseman schrieb:
stefanek schrieb:

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.


“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale

Offline

#4 26.04.2020 14:33:16

klawin
Mitglied

Re: Entfernen von Leerzeilen im FE/BE

Hallo,

mrbaseman schrieb:

... 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!

Offline

#5 05.05.2020 06: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

Beitrag geändert von florian (05.05.2020 07:51:55)


Code allein macht nicht glücklich. Jetzt spenden!

Offline

Liked by:

klawin

#6 06.05.2020 17: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 20: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 06:23:19

florian
Administrator

Re: Entfernen von Leerzeilen im FE/BE

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


Code allein macht nicht glücklich. Jetzt spenden!

Offline

#9 07.05.2020 20: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

Fußzeile des Forums

up