Benutzerrechte Backend

Gesperrt
s3b
Beiträge: 21
Registriert: Do 17. Jul 2003, 15:02
Kontaktdaten:

Benutzerrechte Backend

Beitrag von s3b »

Tag Freunde,

ich habe ein Gästebuchmodul entworfen bzw. aus diversen hier geposteten zusammengestückelt, bei dem der Redakteur die Möglichkeit hat, bestimmte Einträge zu löschen bzw. zu kommentieren. Im Moment funktioniert das in der Form, das im Modul-Output eine Abfrage if ($perm->have_perm('admin') (oder ähnlich - mache das hier gerade aus dem Kopf) auf die aktuellen Administratorrechte prüft, die scheinbar ja nur im Backend gesetzt sind. Sollte dem so sein, werden die entsprechenden Buttons und Boxen eingeblendet.
Funktioniert auch wunderbar, nur möchte ich, dass Redakteure ohne Admin-Rechte, aber mit z.B. dem Recht "Artikel löschen", diese Änderung durchführen können.
Der Blick in die interne Contenido-Programmierung hat mir bisher nicht wirklich weitergeholfen, die Suche hier im Forum auch nicht besonders - gibts da keine einfachere Lösung bzw. wurde das hier schon einmal behandelt?

Danke schonmal für die Hilfe...
Seb
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

ähm nein....

$perm->have_perm prüft auf die Aktion ab, z.b.:

$perm->have_perm("guestbook", "gb_delete_entry");

Du mußt aber erstmal die Aktion in die Actions-Tabelle eintragen und auch entsprechend ins Backend einbauen. Bei einem Administrator ist have_perm immer im entsprechenden Mandanten wahr, da er alle Rechte im Mandanten hat, beim sysadmin ist diese Abfrage immer wahr.
s3b
Beiträge: 21
Registriert: Do 17. Jul 2003, 15:02
Kontaktdaten:

Beitrag von s3b »

Hach scheiße, zu kompliziert für das Projekt. Dann bekommt er halt Adminrechte... ;-)

Dank Dir aber trotzdem - das Problem ist mir schon öfter über den Weg gelaufen, beim nächsten Mal habe ich dann einen guten Ansatz.

Gruß
seb
alpi
Beiträge: 117
Registriert: Fr 9. Jul 2004, 15:56
Kontaktdaten:

Beitrag von alpi »

dazu hätte ich noch ne frage an Timo

wenn ich zb. einen Redakteur News schreiben lassen will, was muss ich dann in die con_aktions eintragen? Und was ist die areaID, alt_name, code und location??
Was muss ich dann noch machen, damit ich jedem User diese Rechte geben kann?
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

area-id hängt mit dem backend zusammen - schau mal in dem development forum, da gabs einen beitrag dazu.

location und alt_name werden nicht verwendet, code wird verwendet, wenn du automatisch bei einer aktion auch noch code ausführen möchtest...

was du noch machen musst kann ich dir pauschal nicht beantworten...du mußt dir alles ansehen und dich von hand durchwühlen, eine anleitung gibts nicht
Uwe
Beiträge: 258
Registriert: Mo 30. Jun 2003, 16:05
Wohnort: Konstanz
Kontaktdaten:

Löschen von Einträgen

Beitrag von Uwe »

Das Problem mit den Rechten habe ich so gelöst
Code Gästebuch von x-28 (danke fürs modul ;)); Gästebuch Ausgabe output:

Code: Alles auswählen

$accessGranted = false; 
$permissions = $auth->auth["perm"]; 
$permissions = explode(',', $permissions); 
foreach ($permissions as $perm) 
f ($perm == "sysadmin" || $perm == "client[".$client."]") 
$accessGranted = true;
Da mein Redakteur kein Admin ist aber Gbook-Einträge löschen können soll hab ich das Recht für den client vergeben. Ist nicht so fein abstimmbar aber funzt gehörig.

Viele Grüsse vom Bodensee, Uwe
s3b
Beiträge: 21
Registriert: Do 17. Jul 2003, 15:02
Kontaktdaten:

@uwe

Beitrag von s3b »

Supi - das klappt schon! :) Klar ists ungenau - aber ich wollte ja auch einfach nur nicht meinem Redakteur das Recht einräumen, in meinen Templates zu werkeln... Schankedön!
Uwe
Beiträge: 258
Registriert: Mo 30. Jun 2003, 16:05
Wohnort: Konstanz
Kontaktdaten:

Beitrag von Uwe »

schittebön
Gesperrt