Moin,
ich habe auch genau dieses Problem:
Und dabei bin ich auf die folgenden Lösungsansätze gestoßen (Leider sind es wirklich nur ansätze, denn ich bekomme das ganze noch nicht so zum laufen, wie ich es mir wünschen würde... :S)
Über das Skript
fe_adminLib.inc und die EXT:
feuser_admin bin ich darauf gestoßen, daß die Bearbeitung im FE von fremden FE-Users eben doch möglich ist.
Aus der Referenz der fe_adminLib.inc mal ein kleiner Auszug:
Zitat:
fe_userOwnSelf (Typ: Boolean:sad:
Wenn diese Eigenschaft gesetzt ist, wird in Datensätzen von fe_users, die mithilfe dieses Modules erstellt wurden, das Feld fe_cruser_id auf die eigene UID gesetzt, was bedeutet, dass den Benutzern ihr eigener Datensatz "gehört" und daher ihre eigenen Daten bearbeiten können.
Alle anderen Tabellen, die ein fe_cruser_id-Feld im crtl-Bereich ihrer $TCA-Konfiguration haben, bekommen dieses Feld automatisch auf die UID des aktuellen fe_users gesetzt. fe_userEditSelf (Typ: Boolean:sad:
Wenn diese Eigenschaft gesetzt ist, können fe_users ihren eigenen Datensatz bearbeiten, egal ob er ihnen gehört oder nicht. allowedGroups (Typ:[Liste von Integern]:sad:
Liste von UID-Nummern von fe_groups, die die Datensätze über dieses Formular bearbeiten dürfen. Normalerweise ist nur der Besitzer des Datensatzes dazu berechtigt.
|
Ok, das war/ist mein Ausgangspunkt.
Ich habe nun in meinem Setup folgendes eingefügt:
Typoscript-Code:
1: 2: 3: 4:
| plugin.feadmin.fe_users.pid = 2 plugin.feadmin.fe_users.fe_userEditSelf = 1 plugin.feadmin.fe_users.allowedGroups = 1 plugin.feadmin.fe_users.fe_userOwnSelf = 0 |
|- Sysordner der FE-User (ID=2)
|- FE-Gruppe
Admin (ID=1)
Auf einer Seite im geschützten Bereich habe ich ein Plugin vom Typ
Frontend Benutzer Administration mit dem CODE=EDIT angelegt.
Logge ich mich nun mit einem Benutzer der Gruppe "Admin" ein, und gehe auf die neu erstellte Seite, sehe ich in der zur Bearbeitung verfügbaren Benutzer nur mein eingeloggtes Konto.
Daraufhin habe ich im phpMyAdmin die folgenden Felder überprüft:
fe_users -> fe_cruser_id
Lt. der o.g. Beschreibung sollte in diesen Feld bei jedem User mit o.g. Vorgaben nun die ID meines eingeloggten Benutzers stehen. Tut sie aber nicht...
Wenn ich dieses Feld in der Datenbank bei allen Usern manuell auf die ID meines Admin-Benutzers stelle, habe ich auf meiner Bearbeitenseite eine Liste alle User - und ich kann somit die Daten der Benutzer ändern.
Ich vermute, daß das Problem irgentwie mit meinem Loginformular zusammenhängt - und deshalb der Wert fe_cruser_id nicht automatisch auf die entsprechende ID gesetzt wird (Ich arbeite mit einer für MD5-Passwörter modifizierten Loginbox_macmade).
Liege ich da mit meiner Vermutung richtig? Oder habe ich noch irgentwo einen anderen Fehler gemacht?