{"issue":{"created_at":"2011-11-29T17:12:45Z","state":"open","updated_at":"2011-11-29T17:12:54Z","user":{"gravatar_id":"256406243346b9253f8610fb1d1e05f6","id":1215373,"url":"https://api.github.com/users/importer","avatar_url":"https://secure.gravatar.com/avatar/256406243346b9253f8610fb1d1e05f6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"importer"},"comments":9,"body":"Beschreibung des Fehlers an Hand eines Beispiels:\n\nIch habe auf der Root-Ebene vier Seiten angelegt. Die letzte, vierte, ist eine geschützte Seite. Diese wird nicht gecacht, die anderen drei schon. Eine normale Navigation ist eingebunden mit Level 0.\n\nAls normaler User eingeloggt, sehe ich jetzt drei Menüpunkte, den der geschützten Seite erwartungsgemäß nicht.\n\nAls zufgriffsberechtigter FE-User für die geschützte Seite eingeloggt, sehe alle vier Menüpunkte, also auch den der geschützten, vierten Seite.\n\nNun der Fehler: \nwenn jetzt irgendeine der drei (gecachten) Seiten-Links im Menü angeklickt wird, verschwindet der Menüeintrag für die geschützte Seite.\n\nBei Wiederholung des Seitenaufrufs oder durch Browser-Refresh, kommt der Menüeintrag der geschützten Seite wieder zum Vorschein.\n\nDieses Verhalten tritt auch bei der Online-Demo auf.\nBei abgeschaltetem Browsercache scheint der Fehler nicht aufzutreten.\n\n[Download the attachments](http://www.contao.org/tl_files/tickets/1008.zip \"Download the attachments of this ticket\")\n\n--- _Originally created by okapi on September 16th, 2009, at 10:57am (ID 1008)_","assignee":{"gravatar_id":"87d2e5aefadcb310f9155df28c2b3582","id":1192057,"url":"https://api.github.com/users/leofeyer","avatar_url":"https://secure.gravatar.com/avatar/87d2e5aefadcb310f9155df28c2b3582?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"leofeyer"},"id":2387969,"labels":[{"name":"Feature","color":"4183c4","url":"https://api.github.com/repos/contao/import/labels/Feature"},{"name":"framework","color":"e6e6e6","url":"https://api.github.com/repos/contao/import/labels/framework"}],"pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"number":1008,"title":"Link einer geschützten Seite verschwindet aus der Navigation trotz geloggten berechtigten FE-Users.","closed_at":null,"html_url":"https://github.com/contao/import/issues/1008","url":"https://api.github.com/repos/contao/import/issues/1008","milestone":{"created_at":"2011-11-29T15:29:32Z","state":"open","closed_issues":85,"due_on":null,"creator":{"gravatar_id":"87d2e5aefadcb310f9155df28c2b3582","id":1192057,"url":"https://api.github.com/users/leofeyer","avatar_url":"https://secure.gravatar.com/avatar/87d2e5aefadcb310f9155df28c2b3582?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"leofeyer"},"number":9,"description":"TYPOlight 2.8.0 (minor release)","title":"2.8.0","url":"https://api.github.com/repos/contao/import/milestones/9","open_issues":1}},"action":"created","comment":{"created_at":"2011-11-29T17:12:54Z","updated_at":"2011-11-29T17:12:54Z","user":{"gravatar_id":"1c0dba2e2d4914062d95c1f45099537b","id":357895,"url":"https://api.github.com/users/fbender","avatar_url":"https://secure.gravatar.com/avatar/1c0dba2e2d4914062d95c1f45099537b?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"fbender"},"body":"Die Situation ist ja folgende: Man ruft eine Seite A auf, diese wird in TL je nach Einstellung in den Cache geschrieben (sagen wir mal 6h). Gleichzeitig sendet TYPOlight an den Browser die Anweisung, dass die Seite A 6h lang gültig ist. Jetzt meldet man sich an, dabei erscheint ein neuer Menüpunkt. Der Browser weiß aber nicht, dass er Seite A jetzt erneut laden muss, um sich der aktuellen Situation (Nutzer angemeldet) \"anzupassen\", weil er denkt, dass die Seite noch weitere 6h lang gültig ist. Die Seite A ist ja auch immernoch gültig, aber nur für nicht angemeldete Besucher. Komliziert. Schnellste Lösung wäre eine geringe Cache-Zeit (< 5 Minuten), wobei man dann in Kauf nehmen muss, dass es manchmal zu Verzögerungen bei Aktualisierung von bestimmten Seiten kommt.\n\nMehr Möglichkeiten hätte man auf jeden Fall, wenn man die Einstellung für Browser-Cache und TYPOlight-Cache unabhängig festlegen könnte (insofern jetzt ein Feature Request ;-) ).  Damit könnte Seite A für nicht angemeldete Besucher TL-intern gespeichert werden, der Browser aber weiterhin immmer die aktuelle Seite ausgeliefert bekommen.\n\nAber das Problem sollte man IMO anders angehen. Dafür gibt es mehrere Möglichkeiten, und natürlich stellt sich da die \"light-Frage\".\n\n\"light\" wäre auf jeden Fall folgendes: Es gibt ja den Header \"IfModifiedSince\", der dafür sorgt, dass der Browser, nur wenn benötigt, seinen Cache mit aktuellen Daten füllt. Das wäre die sinnvollste Methode für ein Cache-System. Ich weiß jetzt nicht, wie das mit absoluten Expire-Headern zusammenarbeitet, würde aber vermuten, dass, wenn letztere gesendet werden, kein IfModifiedSince-Header bei einem neuen Request gesendet wird. Da müsste man angreifen. Ich wüsste aber auch nicht, wie man IfModifiedSince per PHP behandeln soll bzw. ob das überhaupt geht.\n\nIch könnte jetzt noch ein bisschen weitermachen, aber das würde hier grade den Rahmen sprengen (und meinen Zeitplan). Später mehr, vllt. im Forum.\n\n--- _Originally created on September 16th, 2009, at 05:25pm_","id":2936359,"url":"https://api.github.com/repos/contao/import/issues/comments/2936359"}}