auth_media vs image_manager @ ADDONS_INCLUDED/REX_EXTENSION_EARLY
krugar opened this issue · comments
hallo zusammen,
der umstand, dass die image_manager extension für den ADDONS_INCLUDED-ep im commit e2694e7 auf REX_EXTENSION_EARLY gesetzt wurde, führt bei mir dazu, dass das community auth_media plugin einen eingeloggten frontend-user nicht bemerkt (allerdings nur, wenn man im backend nicht eingeloggt ist. darauf prüft auth_media ja, weswegen man den fehler als entwickler gut übersehen kann). zum "early"-zeitpunkt sind die hooks vom community addon noch nicht gelaufen, und damit existiert das $REX['COM_USER'] objekt nicht, es gibt nur den $_SESSION['comrex'] eintrag, auf den rex_com_auth_media_im (bzw checkPerm) aber nicht prüft.
deswegen wird immer der fehler-artikel ausgegeben, aber da zu dem zeitpunkt auch seo42::init noch nicht gelaufen ist, endet das bei meiner installation in einem endlos-redirect (weil ohne seo42 das pretty-print der fehlerartikel-url nicht passiert, die .htaccess rewrite rules aber eigentlich entsprechendes erwarten)
das problem lässt sich für mich beheben, indem ich den image_manager bei ADDONS_INCLUDED auf der "normal"-stufe laufen lasse (sprich, den obigen commit zurückrolle).
rekonstruktionsschritte für den fehlerfall:
- redaxo aufsetzen
- image_manager
- community auth_media + vorbedingungen installieren
- seo42 installieren, rewriter einstellen auf urls/vom/pfadtyp/
- einen community user anlegen, ohne gruppe
- eine bilddatei hochladen und berechtigungen auf "nur angemeldete benutzer" setzen
- den benutzer im frontend einloggen, sicherstellen, dass man im backend ausgeloggt ist (!)
- image_manager url der bilddatei im browser aufrufen
- (guter breakpoint: redaxo/include/addons/community/plugins/auth_media/config.inc.php zeile 57)
versionen:
- redaxo 4.6dev (github tag 4.6.1)
- community 4.7.1, auth_media 4.7.1
- image_manager 1.2.1
- seo42 4.0.2
- php 5.5.19
@krugar Absolut löblicher Einsatz von dir. Hut ab :)