[Checkins] SVN: Products.CMFCore/trunk/Products/CMFCore/MembershipTool.py - refactored createMemberArea (we can now use more API methods)
Yvo Schubbe
y.2011 at wcm-solutions.de
Wed Feb 23 05:35:01 EST 2011
Log message for revision 120530:
- refactored createMemberArea (we can now use more API methods)
Changed:
U Products.CMFCore/trunk/Products/CMFCore/MembershipTool.py
-=-
Modified: Products.CMFCore/trunk/Products/CMFCore/MembershipTool.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/MembershipTool.py 2011-02-23 10:29:15 UTC (rev 120529)
+++ Products.CMFCore/trunk/Products/CMFCore/MembershipTool.py 2011-02-23 10:35:01 UTC (rev 120530)
@@ -249,22 +249,15 @@
return None
if self.isAnonymousUser():
return None
- # Note: We can't use getAuthenticatedMember() and getMemberById()
- # because they might be wrapped by MemberDataTool.
- user = getSecurityManager().getUser()
- user_id = user.getId()
- if member_id in ('', user_id):
- member = user
- member_id = user_id
- else:
- if _checkPermission(ManageUsers, self):
- uf = self._huntUserFolder(member_id, self)
- if uf:
- member = uf.getUserById(member_id).__of__(uf)
- else:
- raise ValueError('Member %s does not exist' % member_id)
- else:
+ if member_id:
+ if not self.isMemberAccessAllowed(member_id):
return None
+ member = self.getMemberById(member_id)
+ if member is None:
+ return None
+ else:
+ member = self.getAuthenticatedMember()
+ member_id = member.getId()
if hasattr( aq_base(members), member_id ):
return None
else:
More information about the checkins
mailing list