e5c28e9096614fdf378cac9524c3acabe124bafc
[freeside.git] / rt / html / Admin / Elements / SelectNewGroupMembers
1 %# BEGIN LICENSE BLOCK
2 %# 
3 %# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
4 %# 
5 %# (Except where explictly superceded by other copyright notices)
6 %# 
7 %# This work is made available to you under the terms of Version 2 of
8 %# the GNU General Public License. A copy of that license should have
9 %# been provided with this software, but in any event can be snarfed
10 %# from www.gnu.org.
11 %# 
12 %# This work is distributed in the hope that it will be useful, but
13 %# WITHOUT ANY WARRANTY; without even the implied warranty of
14 %# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 %# General Public License for more details.
16 %# 
17 %# Unless otherwise specified, all modifications, corrections or
18 %# extensions to this work which alter its source code become the
19 %# property of Best Practical Solutions, LLC when submitted for
20 %# inclusion in the work.
21 %# 
22 %# 
23 %# END LICENSE BLOCK
24 % if ($Show ne 'Groups') {
25 <b><&|/l&>Users</&></b>
26 <SELECT MULTIPLE NAME="<%$Name%>Users"  SIZE=10>
27 %while (my $user = $users->Next) {
28 <OPTION VALUE="User-<%$user->id%>"><%$user->Name%></OPTION>
29 %}
30 </SELECT>
31 <br>
32 % }
33 % if ($Show ne 'Users') {
34 <b><&|/l&>Groups</&></b>
35 <SELECT MULTIPLE NAME="<%$Name%>Groups"  SIZE=10>
36 %while (my $group = $groups->Next) {
37 <OPTION VALUE="Group-<%$group->id%>"><%$group->Name%></OPTION>
38 %}
39 </SELECT>
40 % }
41
42 <%INIT>
43 my $users = new RT::Users($session{'CurrentUser'});
44
45 $users->Limit(FIELD => 'id', VALUE => $RT::SystemUser->id, OPERATOR => '!=' );
46 $users->Limit(FIELD => 'id', VALUE => $RT::Nobody->id, OPERATOR => '!=' );
47 $users->LimitToPrivileged();
48
49 my $groups = new RT::Groups($session{'CurrentUser'});
50
51 # self-recursive group membership considered harmful!
52 $groups->Limit(FIELD => 'id', VALUE => $Group->id, OPERATOR => '!=' );
53 $groups->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => 'UserDefined');
54
55
56 </%INIT>
57 <%ARGS>
58 $Name => 'Users'
59 $Show => 'All'
60 $Group
61 </%ARGS>