[TYPO3-german] BE-MOD: Umsetzungsfrage Formularerzeugung / Datensatz-Rechte

Heiko Noethen da_amarok at yahoo.de
Sun Apr 30 12:44:54 CEST 2006


Hallo,

derzeit arbeite ich an der Anbindung einer TYPO3-Installation an einen LDAP-Server. Dies funktioniert auch einwandfrei. Sowohl die BE- als auch die FE-Anmeldung funktiniert.

Nun möchte ich es den BE-Usern ermöglichen eigene FE-Gruppen zu erstellen und diesen Benutzer (per LDAP) hinzuzufügen. Dabei soll es auch möglich sein ein Gruppenpasswort zu vergeben, mit dem sich FE-User selber in eine Gruppe befördern können.

Das Ziel:

Ich habe die Tabelle 'fe_groups' um ein Feld 'owner_groups' erweitert. Diese BE-Benutzergruppen sollen  den Datensatz sehen, bearbeiten und löschen können. Außerdem soll an diesem Wert auch das Recht zum Hinzufügen/Entfernen von FE-Benutzern hängen. Das Frontend-Gruppen-Formular  soll nur ausgewählte Felder der Tablelle zeigen.

Die Probleme:

- Ich möchte alle Datensätze, die über das BE-Modul erstellt werden in einem Sysfolder sammeln.
- Die Benutzergruppen sollen kein Recht haben selber in anderen (eigenen) Sysfoldern FE-Gruppen zu erstellen (deshalb der Weg über ein BE-Modul).
- Wie kann ich den Benutzergruppen über mein BE-Modul das Recht geben einen Datensatz (für den ihnen das Recht zum modifizieren der Datenbanktabelle fehlt) auf einer Seite zu erstellen, für die sie ebenfalls keine Rechte haben?
- Die Benutzergruppen sollen nur ihre eigenen so erstellen fe_groups modifizieren können

Umsetzungsideen:

- Eigenes Formular auf der Modulseite erzeugen und per datamap/process_datamap die eingegebenen Daten in die Datenbank schreiben. Dazu für diesen Befehl Admin-Rechte setzen. Nachteil: Höherer (Wartungs-) Aufwand.
- Das Formular von TYPO3 erzeugen lassen: Dazu habe ich mir den Code in alt_doc.php angeguckt. Bin mir aber sehr unsicher ob das der richtige Weg ist, um Formulare in meinem BE-Modul zu erzeugen. 


Was ich also suche ist sowas wie:

(im BE-Modul-Code)

    if (BE_USER->groupIDs IN feGroupsOwnerIdList)
        SHOW TCA-FORM ('be_groups', enabled_fields (title, description,..))

    PRE-SAVE:    
         GRAND RIGHTS TO CHANGE/CREATE RECORD WITH UID X IN TABLE Y

    SAVE RECORD IN PAGE X

    POST-SAVE
            REVOKE RIGHTS TO CHANGE/CREATE RECORD ..


Über Ideen und Anregungen würde ich mich freuen!


Grüße
Heiko Nöthen





More information about the TYPO3-german mailing list