-
checkPermission Problem
Ich hab das News Modul als Grundlage für ein eigenes Modul genommen
und nur leicht modifiziert. Hab nun das Problem, dass ich bei den
Benutzerrechten nicht durchsteige.
Wenn ich nicht als Admin angemeldet bin, sondern mit einer Benutzergruppe
die Rechte für das Modul besitzt, dann sehe ich keine Archive und Datensätze. Kann auch keine Datensätze anlegen. Mit Admin Rechten funktioniert es.
Es gibt in den DCA Dateien eine Funktion checkPermission. Vermutlich ist
darin das $this->User->news nicht richtig gefüllt bzw es enthält keine
Informationen (mit print_r getestet). Weiß jemand wie und wo das $this->User->news gefüllt wird oder wo das Problem sonst liegen könnte?
-
Hab die Lösung nun gefunden *arg*
Im Modul Backend gibt es in der BackendUser.php einen Hook dafür:
Code:
// HOOK: add news archive permissions
if (in_array('news', $this->Config->getActiveModules()))
{
$depends[] = 'news';
}
Wenn man die Zeilen dupliziert und den Namen seines Modules einträgt, dann funktioniert es. Muß man nur bei den ganzen Updates dran denken das wieder anzupassen :eek:
-
Hast du unter Benutzergruppen auch die entsprechenden Tabellenfelder freigegeben? Und bei "Benutzer" auch die Option "Rechte der Gruppe nutzen" bzw. "Rechte der Gruppe erweitern"?
-
Hallo FloB,
ja, das hatte ich eingestellt. Das Problem war letzendlich dass er die Rechte nicht in die Session geschrieben hat, wenn der kleine Code Schnippsel den ich zuletzt gepostet hab, nicht vorhanden ist.
-
Hm, das kann ich nicht nachvollziehen. Session-Daten mal gelöscht gehabt?
Ansonsten mal das Problem im TYPOlight trac schildern!
-
Es gibt ein array in $GLOBALS, in dem alle "modulnamen" drin stehen, deren recht noch hinzugefügt werden sollen.
Einfach
PHP-Code:
$GLOBALS['TL_PERMISSIONS'][] = 'myModuleName';
In der config.php deines Moduls hinzufügen, dann geht es auch ohne core dateien anzupassen.
-
Danke, das werd ich ausprobieren!