Empfehlungen: Erweiterte Suche

Navigation per ACL festlegen

Daten auslesen, verarbeiten und den Views übergeben

Navigation per ACL festlegen

Beitragvon getit » Fr 30. Jan 2009, 13:13

Hallo,

ich möchte versch. Benutzergruppen eine unterschiedliche Navigation zur Verfügung stellen.

Eine Idee währe, per Auth->user() die Group-ID abzufragen und abhängig vom Ergebnis eine fertige Navigation zu laden.
D.h. ich bräuchte bei 4 Gruppen 4 versch. HTML-Seiten mit der passenden Navigation.

Die zweite Idee währe es, die Navigation abhängig von der Gruppenzugehörigkeit zu laden.
Zb. ist über ACL festgelegt, das die Gruppe Users alle Navigationspunkte angezeigt bekommt (mal abgesehen von dem Admin-Navigationspunkt).
Die einzelnen Navigationspunkte (ich nenne sie jetzt Module) werden im linke <div> angezeigt.
Abhängig vom ausgewählten Modul (im linken div) soll im oberen div eine Navigation - die einzelnen Actions im Controller - angezeigt werden.
Dazu bräuchte ich eine Möglichkeit dyn. alle Controller mit ihren Actions zu ermitteln.
Noch ein Beispiel:
Es gibt einen
    UsersController
    DokumentsController
    HomesController

d.h. im linken div wird angezeigt:
    User
    Dokument
    Home

Diese Controller (als Beispiel jetzt nur der UsersController) haben Actions:
    add()
    showAll()
    search()
Also wird, wenn man im linken div 'User' auswählt im oberen div angezeigt
    Neu
    Zeige Alle
    Suche
Wie gesagt, für diese Idee bräuchte ich eine Möglichkeit die mir eine Liste aller Controller und der zugehörigen Actions liefert.
Hat dazu jemand eine Idee?

Oder hat jemand vielleicht eine bessere Lösungsmöglichkeit?
getit
 
Beiträge: 105
Registriert: Mo 22. Dez 2008, 13:06
CakePHP-Version: 1.2.1.8004
OS: Vista

Re: Navigation per ACL festlegen

Beitragvon bjoern.etzold » Mi 3. Jun 2009, 10:31

hast du jetzt eine lösung gefunden?
bjoern.etzold
 
Beiträge: 8
Registriert: Mi 20. Mai 2009, 10:51

Re: Navigation per ACL festlegen

Beitragvon getit » Mi 3. Jun 2009, 10:56

Ich mache erst ne Tabelle mit allen AROs und ACOs.

Dann nehme ich davon die Vereinigungsmenge.

Bsp:

ARO ACO
admin Klients/add
user Klients/edit

d.h. ich brauche auf der Klients/index Links zu add und edit.
Also mach ich nen Componente der für dieses Bsp. zwei Actions (add/edit) in einem Array übergeben bekommt.
In dem Controller gehe ich dieses Array in einer foreach-Schleife durch und frage für jede Action ab, ob der angemeldete Benutzer auf die jeweilige Action zugriff hat. Das Ergebnis schreibe ich in ein weiteres Array. Dieses Array gebe ich mit return zurück und baue nach diesem Array meine Navi auf.

So in etwa habe ich mir das gedacht.
Wenn ich mit meiner Arbeit fertig bin und das so funktioniert wie ich mir das denke werde ich das hier veröffentlichen.
getit
 
Beiträge: 105
Registriert: Mo 22. Dez 2008, 13:06
CakePHP-Version: 1.2.1.8004
OS: Vista

Re: Navigation per ACL festlegen

Beitragvon euromark » Mi 3. Jun 2009, 11:40

ich möchte bei dem punkt auf meinen damaligen eintrag verweisen, der bisher noch nicht allzu sehr disktutiert wurde.

dabei ist der grundgedanke ähnlich, allerdings ohne das interne ACL

Navigation, ACL, Breadcrumb und anderes alles in einem...
also aus der baumstruktur der navigation (bis in Tiefe xyz machbar) auch direkt die Rechte auslesen und in eine tmp-struktur schreiben (file, etc)

oder ist das auch mit deiner Idee hier so ohne weiteres machbar?
also besonders die dyn. Navigation und dyn. Breadcrump
gruß Mark
euromark
 
Beiträge: 618
Registriert: Fr 27. Jun 2008, 22:17
Wohnort: München
CakePHP-Version: 2.1
OS: Windows

Re: Navigation per ACL festlegen

Beitragvon getit » Mi 3. Jun 2009, 12:42

Wie gesagt bin ich noch bei meiner Diplomarbeit - und meine Prioritäten liegen im Moment bei anderen Problemen.
Die dyn. Navi (bzw. ACL) mache ich erst wenn ich mit allem fix&fertig bin.
Werde meine Ergebnisse dann melden.

oder ist das auch mit deiner Idee hier so ohne weiteres machbar?
also besonders die dyn. Navigation und dyn. Breadcrump

Wenn meine Idee so funktioniert wie ich mir das gedacht habe schon.
Die dyn. Navigation is ja grad mein Ziel (und wieso soll dann des mit dem Breadcrump nicht gehen - habe ich allerdings nicht vor).
getit
 
Beiträge: 105
Registriert: Mo 22. Dez 2008, 13:06
CakePHP-Version: 1.2.1.8004
OS: Vista


Zurück zu Controller

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste