RTE Felder im ActionController parsen

Content im Controller rendern mit Hilfe des cObj

Nachfolgend ein Beispiel anhand eines RTE Textfeldes:

 

„The current username, password or host was not accepted when the connection to the database was attempted to be established!“

Wenn diese Fehlermeldung kommen sollte, jedoch nachweislich alle Einstellungen die DB Daten betreffend richtig sind (weil, z.B. der Zugriff aufs Backend funktioniert aber der aufs Frontend nicht), kann es daran liegen, dass ein script fortlaufend redirected.

In unserem Fall heute war es ein custom PageNotFoundHandling, welches die Fehlerseite anzeigen wollte, das jedoch nicht konnte, weil noch etwas altes im realURL Cache drin hing.

Also musste zunächst das PageNotFound Handling deaktiviert werden, damit man überhaupt erst einmal die eigentliche Fehlermeldung zu sehen bekam. Die teilte uns mit, dass die RealUrl Rootpage nicht korrekt war….

DCE Backend Previews

Wir hatten heute ein kleines Problem mit der Generierung von Bildern im Backend Preview von DCEs.
Hier wurden die generierten Bilder aus den _proccessed_ Ordnern gelöscht was zur Folge hatte, dass das TYPO3 BE im Page Modul extrem langsam wurde.

Ursache war, dass das DCE Backend Preview dann versucht, die generierten Bilder im Page Modul anzuzeigen, sie aber nicht mehr findet.

Lösung ist, die betreffenden DCEs einfach neu zu speichern. Dann werden die Bilder für die Previews neu gerendert.

Powermail – XSS Problem mit Webkit Browsern

Bei Powermail (Version 1.6.9) gab es auf einer betreuten Seite ein Problem mit dem XXS Filter von Chrome/Safari.
Offenbar wird beim Versenden eines Formulars mit Powermail im Post Javascript mit versendet, das wiederum im Response auftaucht.
Die WebKit Browser werten das als mögliche XXS Attacke und der X-XXS-Filter greift und lässt das Laden sämlicher Resourcen auf der Bestätigungsseite nicht zu, was dazu führt, das eine zerschossene Bestätigungsseite nach erfolgreichem Absenden eines Powermail Formulars zu sehen ist…

Siehe auch:
http://stackoverflow.com/questions/1547884/refused-to-execute-a-javascript-script-source-code-of-script-found-within-reque

„This happens when some JavaScript code is sent to the server via an HTTP POST request, and the same code comes back via the HTTP response. If Chrome detects this situation, the script is refused to run, and you get the error message Refused to execute a JavaScript script. Source code of script found within request.“

Von hier wird auch hierauf verwiesen:
http://blog.chromium.org/2010/01/security-in-depth-new-security-features.html

„…
In the end nothing changes except that browsers are more complicated and fragile. Google serves its pages including this blog with X-XSS-Protection: 0 for a reason; that should tell you something.
…“

Also ist die „Lösung“ das Setzen eines zusätzlichen Headers, der den Filter unterbindet:
In TYPO3 sähe das so aus:
config.additionalHeaders = X-XSS-Protection: 0

TYPO3 – Seitenbaumrechte für Redakteure

Um zu erreichen, dass eine von einem Admin angelegte Seite von einem Redakteur zu sehen, zu bearbeiten und auch zu löschen ist, ist folgendes zu tun:

1) Zusätzlich zur Redakteursgruppe eine weitere Gruppe anlegen (z.B. Gruppe „Seitenbaumrechte“)
2) Alle Admins der Gruppe „Seitenbaumrechte“ zuordnen
3) Die Gruppe „Seitenbaumrechte“ als Untergruppe der Redakteursgruppe zuordnen

Wenn man das gleich beim Erstellen der Redakteursgruppe macht und dann auch die entsprechenden Rechte verteilt, dann muss man die folgende PAGE-TS cfg nicht mehr machen:

direct_mail upgrade

Beim Upgrade von direct_mail auf die aktuellste Version 3.0.2 (von 2.6.1/2.7.0) muss darauf geachtet werden, die Extension direct_mail_userfunc zu deinstallieren, da diese direct_mail per xclass erweitert. Das führte dazu, dass die vorbereiteten Versandlisten leer waren.

Mehr Infos auf forge
http://forge.typo3.org/projects/extension-direct_mail_userfunc

Veröffentlicht unter TYPO3

Extbase Repository – Objekte rebuild

Für eine Umkreissuche musste ich letztens ein Query Statement ins Extbase Repository absetzen. Ein SQL Statement mit HAVING.
Das hat auch soweit funktioniert. Nur dass mir das Repos für alle Eingeschaften meines Models, die aus einer Relation zu einem anderen Domänenmodel bestanden, keine ObjectStorages mehr zurückgab – auch keine leeren…

Nach langem durchforsten der API sowie diversen MailingThreads und Foren konnte ich das hier finden und leicht abgeändert erfolgreich nutzen:

Templavoila – plötzlich ein BODY-Tag ?

Templavoila schreibt beim Mapping Vorgang plötzlich den Body Tag mitten ins Template, so dass alles was dahintersteht nicht mehr gemappt werden kann.

In HMTL5 Templates werden für z.B. Slideshows spezielle Attribute wie data-descr=““ in den Tags verwendet. Wenn in diesen Attributen HTML-Tags stehen kommt es zu dem „Fehler“.