[Rt-commit] r18684 - in rt/3.999/trunk: lib/RT/Model lib/RT/Shredder share/html/Admin/CustomFields share/html/Admin/Elements share/html/Admin/Groups share/html/Admin/Queues share/html/REST/1.0/Forms/group share/html/Ticket/Elements
ruz at bestpractical.com
ruz at bestpractical.com
Wed Mar 4 21:38:59 EST 2009
Author: ruz
Date: Wed Mar 4 21:38:59 2009
New Revision: 18684
Modified:
rt/3.999/trunk/lib/RT/Model/CachedGroupMember.pm
rt/3.999/trunk/lib/RT/Model/Group.pm
rt/3.999/trunk/lib/RT/Model/Ticket.pm
rt/3.999/trunk/lib/RT/Shredder/Group.pm
rt/3.999/trunk/lib/RT/Shredder/GroupMember.pm
rt/3.999/trunk/share/html/Admin/CustomFields/UserRights.html
rt/3.999/trunk/share/html/Admin/Elements/EditQueueWatchers
rt/3.999/trunk/share/html/Admin/Groups/Members.html
rt/3.999/trunk/share/html/Admin/Groups/UserRights.html
rt/3.999/trunk/share/html/Admin/Queues/UserRights.html
rt/3.999/trunk/share/html/REST/1.0/Forms/group/default
rt/3.999/trunk/share/html/Ticket/Elements/EditWatchers
rt/3.999/trunk/share/html/User/Groups/Members.html
Log:
* merge members_obj and deep_members_obj into members with recursively argument
Modified: rt/3.999/trunk/lib/RT/Model/CachedGroupMember.pm
==============================================================================
--- rt/3.999/trunk/lib/RT/Model/CachedGroupMember.pm (original)
+++ rt/3.999/trunk/lib/RT/Model/CachedGroupMember.pm Wed Mar 4 21:38:59 2009
@@ -164,7 +164,7 @@
return $id if $args{'member'}->id == $args{'group'}->id;
if ( $args{'member'}->is_group() ) {
- my $GroupMembers = $args{'member'}->object->members_obj();
+ my $GroupMembers = $args{'member'}->object->members;
while ( my $member = $GroupMembers->next() ) {
my $cached_member = RT::Model::CachedGroupMember->new;
my $c_id = $cached_member->create(
Modified: rt/3.999/trunk/lib/RT/Model/Group.pm
==============================================================================
--- rt/3.999/trunk/lib/RT/Model/Group.pm (original)
+++ rt/3.999/trunk/lib/RT/Model/Group.pm Wed Mar 4 21:38:59 2009
@@ -689,38 +689,25 @@
}
-=head2 deep_members_obj
+=head2 members
-Returns an RT::Model::CachedGroupMemberCollection object of this group's members,
-including all members of subgroups.
+Returns either an L<RT::Model::GroupMemberCollection> or L<RT::Model::CachedGroupMemberCollection>
+object depending on 'recursively' argument of this group's members.
=cut
-sub deep_members_obj {
- my $self = shift;
- my $members_obj = RT::Model::CachedGroupMemberCollection->new;
-
- #If we don't have rights, don't include any results
- # TODO XXX WHY IS THERE NO ACL CHECK HERE?
- $members_obj->limit_to_members_of_group( $self->id );
-
- return ($members_obj);
-}
-
-
-
-=head2 members_obj
-
-Returns an RT::Model::GroupMemberCollection object of this group's direct members.
-
-=cut
-
-sub members_obj {
+sub members {
my $self = shift;
- my $members_obj = RT::Model::GroupMemberCollection->new( current_user => $self->current_user );
+ my %args = ( recursively => 0, @_ );
+
+ my $class = $args{'recursively'}
+ ? RT::Model::CachedGroupMemberCollection
+ : RT::Model::GroupMemberCollection;
#If we don't have rights, don't include any results
# TODO XXX WHY IS THERE NO ACL CHECK HERE?
+
+ my $res = $self->new( current_user => $self->current_user );
$members_obj->limit_to_members_of_group( $self->id );
return ($members_obj);
@@ -808,8 +795,6 @@
return ($users);
}
-
-
=head2 member_emails
Returns an array of the email addresses of all of this group's members
Modified: rt/3.999/trunk/lib/RT/Model/Ticket.pm
==============================================================================
--- rt/3.999/trunk/lib/RT/Model/Ticket.pm (original)
+++ rt/3.999/trunk/lib/RT/Model/Ticket.pm Wed Mar 4 21:38:59 2009
@@ -2037,7 +2037,7 @@
#add all of this ticket's watchers to that ticket.
foreach my $watcher_type ( $self->roles ) {
- my $people = $self->role_group($watcher_type)->members_obj;
+ my $people = $self->role_group($watcher_type)->members;
while ( my $watcher = $people->next ) {
@@ -2226,7 +2226,7 @@
# Delete the owner in the owner group, then add a new one
# TODO: is this safe? it's not how we really want the API to work
# for most things, but it's fast.
- my ( $del_id, $del_msg ) = $self->role_group("owner")->members_obj->first->delete();
+ my ( $del_id, $del_msg ) = $self->role_group("owner")->members->first->delete();
unless ($del_id) {
Jifty->handle->rollback();
return ( 0, _("Could not change owner. %1", $del_msg ));
Modified: rt/3.999/trunk/lib/RT/Shredder/Group.pm
==============================================================================
--- rt/3.999/trunk/lib/RT/Shredder/Group.pm (original)
+++ rt/3.999/trunk/lib/RT/Shredder/Group.pm Wed Mar 4 21:38:59 2009
@@ -106,7 +106,7 @@
push( @$list, $objs );
# Cached group members records
- push( @$list, $self->deep_members_obj );
+ push( @$list, $self->members( recursively => 1 ) );
# Cached group member records group belongs to
$objs = RT::Model::GroupMemberCollection->new;
Modified: rt/3.999/trunk/lib/RT/Shredder/GroupMember.pm
==============================================================================
--- rt/3.999/trunk/lib/RT/Shredder/GroupMember.pm (original)
+++ rt/3.999/trunk/lib/RT/Shredder/GroupMember.pm Wed Mar 4 21:38:59 2009
@@ -111,7 +111,7 @@
return
unless lc( $group->domain || '' ) eq 'rt::model::ticket-role';
- return if $group->members_obj->count > 1;
+ return if $group->members->count > 1;
my $group_member = $args{'base_object'};
Modified: rt/3.999/trunk/share/html/Admin/CustomFields/UserRights.html
==============================================================================
--- rt/3.999/trunk/share/html/Admin/CustomFields/UserRights.html (original)
+++ rt/3.999/trunk/share/html/Admin/CustomFields/UserRights.html Wed Mar 4 21:38:59 2009
@@ -95,7 +95,7 @@
# Find out which users we want to display ACL selects for
my $privileged = RT::Model::Group->new();
$privileged->load_system_internal_group('privileged');
-my $Users = $privileged->members_obj();
+my $Users = $privileged->members;
my $title = _('Modify user rights for custom field %1', $CustomFieldObj->name);
Modified: rt/3.999/trunk/share/html/Admin/Elements/EditQueueWatchers
==============================================================================
--- rt/3.999/trunk/share/html/Admin/Elements/EditQueueWatchers (original)
+++ rt/3.999/trunk/share/html/Admin/Elements/EditQueueWatchers Wed Mar 4 21:38:59 2009
@@ -66,7 +66,7 @@
<i><&|/l&>(Check box to delete)</&></i><br /><br />
<%INIT>
-my $Members = $watchers->members_obj;
+my $Members = $watchers->members;
</%INIT>
<%ARGS>
Modified: rt/3.999/trunk/share/html/Admin/Groups/Members.html
==============================================================================
--- rt/3.999/trunk/share/html/Admin/Groups/Members.html (original)
+++ rt/3.999/trunk/share/html/Admin/Groups/Members.html Wed Mar 4 21:38:59 2009
@@ -70,7 +70,7 @@
<tr>
<td valign="top">
-% if ($Group->members_obj->count == 0 ) {
+% if ($Group->members->count == 0 ) {
<em><&|/l&>(No members)</&></em>
% } else {
<&|/l&>Users</&>
@@ -85,7 +85,7 @@
</ul>
<&|/l&>Groups</&>
<ul>
-% my $GroupMembers = $Group->members_obj;
+% my $GroupMembers = $Group->members;
% $GroupMembers->limit_to_groups();
% while ( my $member = $GroupMembers->next ) {
% $GroupsSeen{ $member->member_id } = 1 if $skip_seen_groups;
Modified: rt/3.999/trunk/share/html/Admin/Groups/UserRights.html
==============================================================================
--- rt/3.999/trunk/share/html/Admin/Groups/UserRights.html (original)
+++ rt/3.999/trunk/share/html/Admin/Groups/UserRights.html Wed Mar 4 21:38:59 2009
@@ -97,7 +97,7 @@
# Find out which users we want to display ACL selects for
my $privileged = RT::Model::Group->new();
$privileged->load_system_internal_group('privileged');
-my $Users = $privileged->members_obj();
+my $Users = $privileged->members;
Modified: rt/3.999/trunk/share/html/Admin/Queues/UserRights.html
==============================================================================
--- rt/3.999/trunk/share/html/Admin/Queues/UserRights.html (original)
+++ rt/3.999/trunk/share/html/Admin/Queues/UserRights.html Wed Mar 4 21:38:59 2009
@@ -96,7 +96,7 @@
# Find out which users we want to display ACL selects for
my $privileged = RT::Model::Group->new();
$privileged->load_system_internal_group('privileged');
-my $Users = $privileged->members_obj();
+my $Users = $privileged->members;
Modified: rt/3.999/trunk/share/html/REST/1.0/Forms/group/default
==============================================================================
--- rt/3.999/trunk/share/html/REST/1.0/Forms/group/default (original)
+++ rt/3.999/trunk/share/html/REST/1.0/Forms/group/default Wed Mar 4 21:38:59 2009
@@ -115,7 +115,7 @@
# Members
my $gms = [];
- my $GroupMembers = $group->members_obj();
+ my $GroupMembers = $group->members;
while ( my $mo = $GroupMembers->next() ) {
if ( $mo->member_obj->is_group ) {
my $us = $mo->member_obj->object->user_members_obj();
Modified: rt/3.999/trunk/share/html/Ticket/Elements/EditWatchers
==============================================================================
--- rt/3.999/trunk/share/html/Ticket/Elements/EditWatchers (original)
+++ rt/3.999/trunk/share/html/Ticket/Elements/EditWatchers Wed Mar 4 21:38:59 2009
@@ -71,7 +71,7 @@
% }
</ul>
<%INIT>
-my $Members = $watchers->members_obj;
+my $Members = $watchers->members;
</%INIT>
<%ARGS>
$ticket_obj => undef
Modified: rt/3.999/trunk/share/html/User/Groups/Members.html
==============================================================================
--- rt/3.999/trunk/share/html/User/Groups/Members.html (original)
+++ rt/3.999/trunk/share/html/User/Groups/Members.html Wed Mar 4 21:38:59 2009
@@ -72,14 +72,14 @@
</td>
<td valign="top">
-% if ($Group->members_obj->count == 0 ) {
+% if ($Group->members->count == 0 ) {
<em><&|/l&>(No members)</&></em>
% } else {
<em><&|/l&>(Check box to delete)</&></em>
<br />
<br />
<&|/l&>Users</&>
-% my $UserMembers = $Group->members_obj;
+% my $UserMembers = $Group->members;
% $UserMembers->limit_to_users();
<ul>
% while (my $member = $UserMembers->next()) {
@@ -89,7 +89,7 @@
</ul>
<&|/l&>Groups</&>
<ul>
-% my $GroupMembers = $Group->members_obj;
+% my $GroupMembers = $Group->members;
% $GroupMembers->limit_to_groups();
% while (my $member = $GroupMembers->next()) {
<li><input type="checkbox" class="checkbox" name="delete_member-<%$member->member_id%>" value="1" />
More information about the Rt-commit
mailing list