Hi,
also ich mein Resultat meiner suche so eingerichtet, dass man sich die persönlichen Eigenschaften des gesuchten Benutzers ansehen kann...
Dafür hab ich einfach ein 2. Formular gemacht das sich da nennt "prefs_user_details2" so, wenn aber jetzt der Benutzer x auf die daten von Benutzer y zugreift soll erstmal ausgelesen werden ob x ein Admin, moderator oder redakteur ist. Falls er eines von den drein ist, dann darf er auch die Daten ändern von dem Benutzer. Wenn x aber nur ein stink normaler Benutzer ist, dann sollte er nur lesenden zugirff haben!
Der Quelltext der dafür angepasst werden sollt ist der gleiche wie bei prefs_user_details!
Am Ende brauch ich eigentlich nur die abfrage ob der x eines von den drein ist und wenn nicht, soll einfach der "speichern" button verschwinden! Ist das möglich?
mfg mitch
Status abfrage eines Mitgliedes..ob Admin, moderator etc
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hi mitch!mitch hat geschrieben:Am Ende brauch ich eigentlich nur die abfrage ob der x eines von den drein ist
Die Gruppen eines Benutzers und sonst noch ein paar Daten, bekommst du so raus:
Code: Alles auswählen
member = context.portal_membership.getAuthenticatedMember()
groups = context.portal_groups.getGroupsByUserId(member)
user_roles = context.portal_membership.get_local_roles_for_userid(member)
add_portal_member = context.portal_membership.checkPermission(
"Add portal member", container
)
print "member:", member
print "(plone)groups:", groups
print "(plone)user_roles", user_roles
print "Add portal member:", add_portal_member
return printed
lg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
hi,
danke für deine Antwort gerold.
Hab allerdings noch ein Problem. Mit den Befehlen die du mir geschrieben hast kommt bei bsp. das:
mitch --> der user
[] --> group
() --> user_roles --> was soll mir das eigentlich wieder geben
1 --> add_portal_member --> und hier bin ich mir auch nicht sicher hehe
Also ich möchte jetzt wissen ob der mitch Moderator, Redakteur oder nur Benutzer ist... und er ist alles dreis.. wie mach ich das? Bzw. was mach ich falsch?
mfg mitch
danke für deine Antwort gerold.
Hab allerdings noch ein Problem. Mit den Befehlen die du mir geschrieben hast kommt bei bsp. das:
mitch --> der user
[] --> group
() --> user_roles --> was soll mir das eigentlich wieder geben
1 --> add_portal_member --> und hier bin ich mir auch nicht sicher hehe
Also ich möchte jetzt wissen ob der mitch Moderator, Redakteur oder nur Benutzer ist... und er ist alles dreis.. wie mach ich das? Bzw. was mach ich falsch?
mfg mitch
also ich hab das jetzt mal so versucht mit:
Das gibt mir als Beispiel ['Member','Manager'] zurück und jetzt hab ich das:
jetzt will ich das so einbauen, dass wenn einer Manager ist, dieser Button nicht erscheint. Wie kann ich denn jetzt aus diesem "user_roles" raus lesen ob "Manager" drin steht?
mfg mitch
Code: Alles auswählen
memberAut python:here.portal_membership.getAuthenticatedMember();
user_roles python:memberAut.getRoles();
Code: Alles auswählen
<div class="formControls">
<input class="context"
tabindex=""
type="submit"
value="Save"
name="prefs_user_edit:method"
i18n:attributes="value label_save;"
tal:attributes="tabindex tabindex/next;"
/>
</div>
mfg mitch
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hi mitch!mitch hat geschrieben:Code: Alles auswählen
memberAut python:here.portal_membership.getAuthenticatedMember(); user_roles python:memberAut.getRoles();
Das finde ich super, dass du ``getRoles`` gefunden hast.
Das mit dem Ausblenden funktioniert vielleich so:
Code: Alles auswählen
<div class="formControls">
<input
tal:condition="python: 'Manager' in user_roles"
class="context"
tabindex=""
type="submit"
value="Save"
name="prefs_user_edit:method"
i18n:attributes="value label_save;"
tal:attributes="tabindex tabindex/next;"
/>
</div>
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Danke gerold so hats geklappt!
mfg mitch
mfg mitch