Re: [Zope-dev] Listing a groups users via Python and portal_groups
Takahashi, Michael wrote: I’m trying to work on a function call using Python that will list the users of any specified group using the function portal_groups. I’ve been able to successfully do this the opposite way by getting the users groups via portal_membership: portal.portal_membership.getAuthenticatedMember().getGroups() Which will return all groups this user is associated with. So I’ve been testing using portal_groups with function calls similar to this: portal.portal_groups.getGroupById(staff).getUsers() Where “staff” is the name of the group. This almost does what I need, but not quite close enough because it lists all groups and all users. Any suggestions or help is greatly appreciated! It acquires 'getUsers' from somewhere, I guess. Group objects have 'getGroupMemberIds' and 'getGroupMembers' methods. You can see this in Products.GroupUserFolder.GroupDataTool.GroupData. the Products.GroupUserFolder.interfaces.portal_groupdata is a bit cleaner, but seems a little behind the times, as it's missing 'getGroupMemberIds'. Note that this isn't a good topic for zope-dev, but more for plone-users. --jcc ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] Listing a groups users via Python and portal_groups
Takahashi, Michael wrote: Thanks for the help, I actually figured it out. It turned out that portal.portal_groups.getGroupById(staff).getGroupUsers() was the solution. However, the getGroupUsers() function returns a list of users, but not as strings. So I had to convert the entire call with str() in order to run a comparison. So in the end this is how I achieved what I needed: portal.portal_membership.getAuthenticatedMember().getId() not in \ str(portal.portal_groups.getGroupById(staff).getGroupUsers()) The 'getGroupUsers' is not a good idea in a CMF environment. You should use the methods from the group tools. Like the ones I mentioned by name. One of them even does exactly what you want:: context.portal_groups.getGroupById('group1').getGroupMemberIds() --jcc -Original Message- From: J Cameron Cooper [mailto:[EMAIL PROTECTED] Sent: Thursday, July 21, 2005 12:36 PM To: Takahashi, Michael Cc: zope-dev@zope.org Subject: Re: [Zope-dev] Listing a groups users via Python and portal_groups Takahashi, Michael wrote: I'm trying to work on a function call using Python that will list the users of any specified group using the function portal_groups. I've been able to successfully do this the opposite way by getting the users groups via portal_membership: portal.portal_membership.getAuthenticatedMember().getGroups() Which will return all groups this user is associated with. So I've been testing using portal_groups with function calls similar to this: portal.portal_groups.getGroupById(staff).getUsers() Where staff is the name of the group. This almost does what I need, but not quite close enough because it lists all groups and all users. Any suggestions or help is greatly appreciated! It acquires 'getUsers' from somewhere, I guess. Group objects have 'getGroupMemberIds' and 'getGroupMembers' methods. You can see this in Products.GroupUserFolder.GroupDataTool.GroupData. the Products.GroupUserFolder.interfaces.portal_groupdata is a bit cleaner, but seems a little behind the times, as it's missing 'getGroupMemberIds'. Note that this isn't a good topic for zope-dev, but more for plone-users. --jcc ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )
[Zope-dev] Listing a groups users via Python and portal_groups
Hi guys, Im trying to work on a function call using Python that will list the users of any specified group using the function portal_groups. Ive been able to successfully do this the opposite way by getting the users groups via portal_membership: portal.portal_membership.getAuthenticatedMember().getGroups() Which will return all groups this user is associated with. So Ive been testing using portal_groups with function calls similar to this: portal.portal_groups.getGroupById(staff).getUsers() Where staff is the name of the group. This almost does what I need, but not quite close enough because it lists all groups and all users. Any suggestions or help is greatly appreciated! Thanks, Mike Mike Takahashi Web Developer [EMAIL PROTECTED] UCLA Office of Instructional Development mtakahashi (at) oid.ucla.edu 310.794.9371 ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )