Re: [Zope-dev] Listing a groups users via Python and portal_groups

2005-07-21 Thread J Cameron Cooper

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

2005-07-21 Thread J Cameron Cooper

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

2005-07-20 Thread Takahashi, Michael








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 )