This commit was generated by cvs2svn to compensate for changes in r2526,
[freeside.git] / rt / webrt / Admin / Groups / Members.html
1 <& /Admin/Elements/Header, Title => "RT/Admin/Edit the group ". $Group->Name &>
2 <& /Admin/Elements/GroupTabs, GroupObj => $Group &>
3 <& /Elements/ListActions, actions => \@results &>
4
5
6 <& /Elements/TitleBoxStart, title => 'Editing membership for group '.$Group->Name &>
7
8 <FORM ACTION="<%$RT::WebPath%>/Admin/Groups/Members.html" METHOD=POST>
9 <INPUT TYPE=HIDDEN NAME=id VALUE="<%$Group->Id%>">
10 <TABLE WIDTH="100%">
11 <TR>
12 <TD>
13 Add members
14 </TD>
15 <TD>
16 Current members
17 </TD>
18 </TR>
19
20 <TR>
21 <TD VALIGN=TOP>
22 <& /Admin/Elements/SelectUsers, Name => "AddMembers" &>
23 </TD>
24 <TD VALIGN=TOP>
25 % if ($Group->MembersObj->Count == 0 ) {
26 <i>(No members)</i>
27 % } else {
28 (Check box to delete group member)
29 <UL>
30 % while (my $member = $Group->MembersObj->Next()) {
31 <LI><INPUT TYPE=CHECKBOX Name="DeleteMember-<%$member->UserObj->id%>">
32 <%$member->UserObj->Name%> (<%$member->UserObj->RealName%>)
33 % }
34 % }
35 </UL>
36 </TD>
37 </TR>
38 </TABLE>
39 <& /Elements/TitleBoxEnd &>
40 <& /Elements/Submit &>
41 </form>
42
43
44 <%INIT>
45
46 my $Group = new RT::Group($session{'CurrentUser'});
47 $Group->Load($id) || Abort('Could not load group');
48
49 my (@results);
50
51 my $key;
52 foreach $key (keys %ARGS) {
53
54 if ($key =~ /^DeleteMember-(\d+)$/) {
55     my $id = $1; 
56     my ($val,$msg) = $Group->DeleteMember($id);
57     push (@results, $msg);
58 }
59 }
60
61 # Make sure AddMembers is always an array
62 my @AddMembers = (ref $AddMembers eq 'ARRAY') ? @{$AddMembers} : ($AddMembers);
63
64 foreach my $member (@AddMembers) {
65     next unless ($member);
66     my ($val, $msg) = $Group->AddMember($member);
67     push (@results, $msg);
68 }
69
70
71 </%INIT>
72
73 <%ARGS>
74 $AddMembers => undef
75 $id => undef
76 </%ARGS>