User identifizieren

Gesperrt
barnholdy
Beiträge: 18
Registriert: Do 13. Mär 2008, 12:18
Kontaktdaten:

User identifizieren

Beitrag von barnholdy » Mo 11. Aug 2008, 15:37

nach langem Suchen im Forum habe ich leider keine passende Antwort gefunden, desshalb die Frage:

Wie kann ich im Modulcode herausfinden, ob der Client ein Frontenduser, Backenduser oder ein Besucher ist?

Gibt es Klassen dafür oder muss ich da selbst an die Datenbank?

$auth->auth['uname'] liefert teilweise erwartungsgemäße Ergebnisse. Jedoch wechselt zum Beispiel der Wert, wenn ich im Backend angemeldet bin und im Modul rumklicke von "sysadmin" auf "nobody". Das verstehe ich nicht.

Ich brauche das für ein kleines Forum, in dem Frondenduser Artikel anlegen und Backenduser diese editieren können.

tono
Beiträge: 574
Registriert: Mo 25. Apr 2005, 20:51
Wohnort: Frankfurt am Main
Kontaktdaten:

Beitrag von tono » Mo 11. Aug 2008, 18:30

Das von Dir beschriebene Verhalten ist komisch. Versteh ich jetzt auf anhieb nicht.

Mithilfe von if($edit) kannst Du herausfinden, ob der Artikel im Editiermodus aufgerufen ist. Ich denke, dass Deine Backenduser nur dort arbeiten und nicht in der Vorschau-Ansicht.

Ansonsten müsste $auth->auth['uid'] bei einem Frontenduser ein Integer sein und bei einem Backenduser ein md5-Hash. Ich weiß nicht ober das zuverlässiger ist, elegant ist es auf jeden Fall nicht.

Vielleicht kommst Du auch mit get_class($auth) weiter.

Na,ja, das soll als Anstoß mal reichen.
Bis dann
Tono

barnholdy
Beiträge: 18
Registriert: Do 13. Mär 2008, 12:18
Kontaktdaten:

Beitrag von barnholdy » Mo 18. Aug 2008, 12:13

danke für die antwort.
leider komme ich mit if($edit) nicht weiter (ist nicht gesetzt auch nach global machen).
auch $auth->auth['uid'] ist nach klicken auf einen link in meinem modul auf "nobody" gesetzt. also werde ich die id wohl per get weiterreichen müssen und dann gucken, ob sie in der tabelle "con_phplib_auth_user_md5" steht.

gibt es denn keine andere möglichkeit eine variable abzufragen, ob der user backendrechte hat bzw. woran liegt es, dass die uid nach neuaufrufen des srkiptes durch einen link in meinem modul nicht mehr gesetzt ist. hat da jemand evtl. eine idee, denn so außergewöhnlich scheint mir die situation nicht.

danke

Gesperrt