diff options
author | jocuri%softhome.net <> | 2004-07-13 14:12:29 +0200 |
---|---|---|
committer | jocuri%softhome.net <> | 2004-07-13 14:12:29 +0200 |
commit | ac8796ba2733be5e0e618148ee12488cc567d34e (patch) | |
tree | 38799525d5b981b4e01c76657ffb126561f36680 /template/en/default/admin | |
parent | a74271e7d1081c86862151116531c5f42f3e4c7d (diff) | |
download | bugzilla-ac8796ba2733be5e0e618148ee12488cc567d34e.tar.gz bugzilla-ac8796ba2733be5e0e618148ee12488cc567d34e.tar.xz |
Patch for bug 190222: templatize editgroups.cgi; r=joel, a=justdave.
Diffstat (limited to 'template/en/default/admin')
-rw-r--r-- | template/en/default/admin/groups/change.html.tmpl | 111 | ||||
-rw-r--r-- | template/en/default/admin/groups/create.html.tmpl | 3 | ||||
-rw-r--r-- | template/en/default/admin/groups/created.html.tmpl | 38 | ||||
-rw-r--r-- | template/en/default/admin/groups/delete.html.tmpl | 100 | ||||
-rw-r--r-- | template/en/default/admin/groups/deleted.html.tmpl | 54 | ||||
-rw-r--r-- | template/en/default/admin/groups/edit.html.tmpl | 159 | ||||
-rw-r--r-- | template/en/default/admin/groups/list.html.tmpl | 119 | ||||
-rw-r--r-- | template/en/default/admin/groups/remove.html.tmpl | 60 |
8 files changed, 644 insertions, 0 deletions
diff --git a/template/en/default/admin/groups/change.html.tmpl b/template/en/default/admin/groups/change.html.tmpl new file mode 100644 index 000000000..c2f2c8f9f --- /dev/null +++ b/template/en/default/admin/groups/change.html.tmpl @@ -0,0 +1,111 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Dave Miller <justdave@syndicomm.com> + # Joel Peshkin <bugreport@peshkin.net> + # Jacob Steenhagen <jake@bugzilla.org> + # Vlad Dascalu <jocuri@softhome.net> + #%] + +[%# INTERFACE: + # action: integer. Can be 1, 2 or 3, depending on the action + # performed: + # 1 - remove_explicit_members + # 2 - remove_explicit_members_regexp + # 3 - no conversion, just save the changes + # changes: boolean int. Is 1 if changes occured. + # gid: integer. The ID of the group. + # name: the name of the product where removal is performed. + # regexp: the regexp according to which the update is performed. + #%] + +[% IF (action == 1) %] + [% title = "Confirm: Remove All Explicit Members?" %] +[% ELSIF (action == 2) %] + [% title = "Confirm: Remove Explicit Members in the Regular Expression?" %] +[% ELSE %] + [% title = "Updating group hierarchy" %] +[% END %] + +[% PROCESS global/header.html.tmpl %] + +<p> + Checking.... + + [% IF changes %] + changed. + [% END %] +</p> + +[% IF (action == 1) || (action == 2) %] + [% IF changes %] + <p>Group updated, please confirm removal:</p> + [% END %] + + [% IF (action == 1) %] + <p>This option will remove all explicitly defined users + [% ELSIF regexp %] + <p>This option will remove all users included in the regular expression: + [% regexp FILTER html %] + [% ELSE %] + <p> + <b>There is no regular expression defined.</b> + No users will be removed. + </p> + [% END %] + + [% IF ((action == 1) || regexp) %] + from group [% name FILTER html %].</p> + + <p> + Generally, you will only need to do this when upgrading groups + created with [% terms.Bugzilla %] versions 2.16 and prior. Use + this option with <b>extreme care</b> and consult the documentation + for further information. + </p> + + <form method="post" action="editgroups.cgi"> + <input type="hidden" name="group" value="[% gid FILTER html %]"> + + [% IF (action == 2) %] + <input type="hidden" name="action" value="remove_all_regexp"> + [% ELSE %] + <input type="hidden" name="action" value="remove_all"> + [% END %] + + <input name="confirm" type="submit" value="Confirm"> + <p>Or <a href="editgroups.cgi">return to the Edit Groups page</a>.</p> + </form> + [% END %] +[% ELSE %] + [%# if we got this far, the admin doesn't want to convert, so just save + # their changes %] + + [% IF changes %] + <p>Done.</p> + [% ELSE %] + <p> + You didn't change anything! If you really meant it, hit the <b>Back</b> + button and try again. + </p> + [% END %] + + <p>Back to the <a href="editgroups.cgi">group list</a>.</p> +[% END %] + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/admin/groups/create.html.tmpl b/template/en/default/admin/groups/create.html.tmpl index 239d7f984..8da00a799 100644 --- a/template/en/default/admin/groups/create.html.tmpl +++ b/template/en/default/admin/groups/create.html.tmpl @@ -20,7 +20,10 @@ # Joel Peshkin <bugreport@peshkin.net> # Jacob Steenhagen <jake@bugzilla.org> # Vlad Dascalu <jocuri@softhome.net> + #%] +[%# INTERFACE: + # none #%] [% PROCESS global/header.html.tmpl diff --git a/template/en/default/admin/groups/created.html.tmpl b/template/en/default/admin/groups/created.html.tmpl new file mode 100644 index 000000000..4ac051c2d --- /dev/null +++ b/template/en/default/admin/groups/created.html.tmpl @@ -0,0 +1,38 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Dave Miller <justdave@syndicomm.com> + # Joel Peshkin <bugreport@peshkin.net> + # Jacob Steenhagen <jake@bugzilla.org> + # Vlad Dascalu <jocuri@softhome.net> + #%] + +[%# INTERFACE: + # none + #%] + +[% PROCESS global/header.html.tmpl + title = "Adding new group" +%] + +<p>OK, done.</p> + +<p><a href="editgroups.cgi?action=add">Add</a> another group or +go back to the <a href="editgroups.cgi">group list</a>.</p> + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/admin/groups/delete.html.tmpl b/template/en/default/admin/groups/delete.html.tmpl new file mode 100644 index 000000000..0e17cbb1c --- /dev/null +++ b/template/en/default/admin/groups/delete.html.tmpl @@ -0,0 +1,100 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Dave Miller <justdave@syndicomm.com> + # Joel Peshkin <bugreport@peshkin.net> + # Jacob Steenhagen <jake@bugzilla.org> + # Vlad Dascalu <jocuri@softhome.net> + #%] + +[%# INTERFACE: + # gid: number. The group ID. + # name: string. The name of the group. + # description: string. The description of the group. + # hasusers: boolean int. True if the group includes users in it. + # hasbugs: boolean int. True if the group includes bugs in it. + # hasproduct: boolean int. True if the group is binded to a product. + # buglist: string. The list of bugs included in this group. + #%] + + +[% PROCESS global/header.html.tmpl + title = "Delete group" +%] + +<table border="1"> + <tr> + <th>Id</th> + <th>Name</th> + <th>Description</th> + </tr> + <tr> + <td>[% gid FILTER html %]</td> + <td>[% name FILTER html %]</td> + <td>[% desc FILTER html %]</td> + </tr> +</table> + +<form method="post" action="editgroups.cgi"> + [% IF hasusers %] + <p><b>One or more users belong to this group. You cannot delete + this group while there are users in it.</b> + + <br><a href="editusers.cgi?action=list&group=[% gid FILTER html %]">Show + me which users</a> - <input type="checkbox" name="removeusers">Remove + all users from this group for me.</p> + [% END %] + + [% IF hasbugs %] + <p><b>One or more [% terms.bug %] reports are visible only to this group. + You cannot delete this group while any [% terms.bugs %] are using it.</b> + + <br><a href="buglist.cgi?bug_id=[% buglist FILTER html %]">Show me + which [% terms.bugs %]</a> - <input type="checkbox" name="removebugs">Remove + all [% terms.bugs %] from this group restriction for me.</p> + + <p><b>NOTE:</b> It's quite possible to make confidential [% terms.bugs %] + public by checking this box. It is <B>strongly</B> suggested + that you review the [% terms.bugs %] in this group before checking + the box.</p> + [% END %] + + [% IF hasproduct %] + <p><b>This group is tied to the <U>[% name FILTER html %]</U> product. + You cannot delete this group while it is tied to a product.</b> + + <br><input type="checkbox" name="unbind">Delete this group anyway, + and make the <U>[% name FILTER html %]</U> publicly visible.</p> + [% END %] + + <h2>Confirmation</h2> + + <p>Do you really want to delete this group?</p> + [% IF (hasusers || hasbugs || hasproduct) %] + <p><b>You must check all of the above boxes or correct the + indicated problems first before you can proceed.</b></p> + [% END %] + + <p><input type="submit" value="Yes, delete"> + <input type="hidden" name="action" value="delete"> + <input type="hidden" name="group" value="[% gid FILTER html %]"> +</form> + +Go back to the <a href="editgroups.cgi">group list</a>. + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/admin/groups/deleted.html.tmpl b/template/en/default/admin/groups/deleted.html.tmpl new file mode 100644 index 000000000..fc91190cb --- /dev/null +++ b/template/en/default/admin/groups/deleted.html.tmpl @@ -0,0 +1,54 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Dave Miller <justdave@syndicomm.com> + # Joel Peshkin <bugreport@peshkin.net> + # Jacob Steenhagen <jake@bugzilla.org> + # Vlad Dascalu <jocuri@softhome.net> + #%] + +[%# INTERFACE: + # gid: number. The group ID. + # name: string. The name of the group. + # cantdelete: boolean int. Is 1 if the group couldn't have been deleted. + #%] + + +[% PROCESS global/header.html.tmpl + title = "Deleting group" +%] + +[% IF cantdelete %] + <p> + This group cannot be deleted because there are records + in the database which refer to it. All such records + must be removed or altered to remove the reference to this + group before the group can be deleted. + </p> + + <p> + <a href="editgroups.cgi?action=del&group=[% gid FILTER html %]">View</a> + the list of which records are affected. + </p> +[% ELSE %] + <p><b>The group [% name FILTER html %] has been deleted.</b></p> +[% END %] + +<p>Go back to the <a href="editgroups.cgi">group list</a>. + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/admin/groups/edit.html.tmpl b/template/en/default/admin/groups/edit.html.tmpl new file mode 100644 index 000000000..619db777c --- /dev/null +++ b/template/en/default/admin/groups/edit.html.tmpl @@ -0,0 +1,159 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Dave Miller <justdave@syndicomm.com> + # Joel Peshkin <bugreport@peshkin.net> + # Jacob Steenhagen <jake@bugzilla.org> + # Vlad Dascalu <jocuri@softhome.net> + #%] + +[%# INTERFACE: + # group_id: number. The group ID. + # name: string. The name of the group. + # description: string. The description of the group. + # rexp: string. The regular expression for the users of the group. + # isactive: boolean int. Shows if the group is still active. + # isbuggroup: boolean int. Is 1 if this is a bug group. + # groups: array with group objects having the properties: + # - grpid: number. The ID of the group. + # - grpname: string. The name of the group. + # - grpdesc: string. The description of the group. + # - grpmember: boolean int. Is 1 if the current user is a group member. + # - blessmember: boolean int. Is 1 if the current user can bless members + # in the current group. + #%] + + +[% PROCESS global/header.html.tmpl + title = "Change Group" +%] + +<form method="post" action="editgroups.cgi"> + <table border="1" cellpadding="4"> + <tr> + <th>Group:</th> + <td> + [% IF isbuggroup %] + <input type="hidden" name="oldname" value="[% name FILTER html %]"> + <input type="text" name="name" size="60" value="[% name FILTER html %]"> + [% ELSE %] + [% name FILTER html %] + [% END %] + </td> + </tr> + + <tr> + <th>Description:</th> + <td> + [% IF isbuggroup %] + <input type="hidden" name="olddesc" value="[% description FILTER html %]"> + <input type="text" name="desc" size="70" value="[% description FILTER html %]"> + [% ELSE %] + [% description FILTER html %] + [% END %] + </td> + </tr> + + <tr> + <th>User Regexp:</th> + <td> + <input type="hidden" name="oldrexp" value="[% rexp FILTER html %]"> + <input type="text" name="rexp" size="40" value="[% rexp FILTER html %]"> + </td> + </tr> + + [% IF isbuggroup %] + <tr> + <th>Use For [% terms.Bugs %]:</th> + <td> + <input type="checkbox" name="isactive" value="1" [% (isactive == 1) ? "checked" : "" %]> + <input type="hidden" name="oldisactive" value="[% isactive FILTER html %]"> + </td> + </tr> + [% END %] + </table> + + <p> + Users become members of this group in one of three ways: + <ul> + <li> by being explicity included when the user is edited. + <li> by matching the user regexp above. + <li> by being a member of one of the groups included in this group + by checking the boxes below. + </ul> + </p> + + <table> + <tr> + <td colspan="4">Members of these groups can grant membership to this group</td> + </tr> + <tr> + <td align="center">|</td> + <td colspan="3">Members of these groups are included in this group</td> + </tr> + <tr> + <td align="center">|</td> + <td align="center">|</td> + <td colspan="2"></td> + </tr> + [% FOREACH group = groups %] + <tr> + <td> + <input type="checkbox" name="bless-[% group.grpid FILTER html %]" [% group.blessmember ? "checked " : "" %]value="1"> + <input type="hidden" name="oldbless-[% group.grpid FILTER html %]" value="[% group.blessmember FILTER html %]"> + </td> + <td> + <input type="checkbox" name="grp-[% group.grpid FILTER html %]" [% group.grpmember ? "checked " : "" %]value="1"> + <input type="hidden" name="oldgrp-[% group.grpid FILTER html %]" value="[% group.grpmember FILTER html %]"> + </td> + <td><b>[% group.grpnam FILTER html %]</b></td> + <td>[% group.grpdesc FILTER html %]</td> + </tr> + [% END %] + </table> + + <input type="submit" value="Submit"> + + <p> + <table width="76%" border="1"> + <tr> + <td> + <p><strong>Conversion of groups created with [% terms.Bugzilla %] + versions 2.16 and prior:</strong></p> + + <ul> + <li>Remove all explicit memberships from this group: + <input name="remove_explicit_members" type="submit" id="remove_explicit_members" value="Remove Memberships"> + </li> + + <li>Remove all explicit memberships that are included in the above + regular expression: + <input name="remove_explicit_members_regexp" type="submit" id="remove_explicit_members_regexp" value="Remove memberships included in regular expression"> + </li> + </ul> + </td> + </tr> + </table> + + <input type="hidden" name="action" value="postchanges"> + <input type="hidden" name="group" value="[% group_id FILTER html %]"> +</form> + +Back to the <a href="editgroups.cgi">group list</a>. + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/admin/groups/list.html.tmpl b/template/en/default/admin/groups/list.html.tmpl new file mode 100644 index 000000000..9e6520244 --- /dev/null +++ b/template/en/default/admin/groups/list.html.tmpl @@ -0,0 +1,119 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Dave Miller <justdave@syndicomm.com> + # Joel Peshkin <bugreport@peshkin.net> + # Jacob Steenhagen <jake@bugzilla.org> + # Vlad Dascalu <jocuri@softhome.net> + #%] + +[%# INTERFACE: + # groups: array with group objects having the properties: + # - id: number. The ID of the group. + # - name: string. The name of the group. + # - description: string. The description of the group. + # - regexp: string. The user regexp for the given group. + # - isactive: boolean int. Specifies if the group is active or not. + # - isbuggroup: boolean int. Specifies if it can be used for bugs. + #%] + +[% PROCESS global/header.html.tmpl + title = "Edit Groups" + h2 = "This lets you edit the groups available to put users in." +%] + + +<table border="1"> + <tr> + <th>Name</th> + <th>Description</th> + <th>User RegExp</th> + <th>Use For [% terms.Bugs %]</th> + <th>Type</th> + <th>Action</th> + </tr> + + [% FOREACH group = groups %] + <tr> + <td>[% group.name FILTER html %]</td> + <td>[% group.description FILTER html %]</td> + <td>[% group.regexp FILTER html %] </td> + + <td align="center"> + [% IF (group.isactive != 0) && (group.isbuggroup) %] + X + [% ELSE %] +   + [% END %] + </td> + + <td align="center"> + [% (group.isbuggroup) ? "user" : "system" %] + </td> + + <td align="center" valign="middle"> + <a href="editgroups.cgi?action=changeform&group=[% group.id FILTER html %]">Edit</a> + [% IF (group.isbuggroup) %] + | <a href="editgroups.cgi?action=del&group=[% group.id FILTER html %]">Delete</a> + [% END %] + </td> + </tr> + [% END %] + + <tr> + <td colspan="5"></td> + <td><a href="editgroups.cgi?action=add">Add Group</a></td> + </tr> +</table> + +<p> + <b>Name</b> is what is used with the UserInGroup() function in any +customized cgi files you write that use a given group. It can also be used +by people submitting [% terms.bugs %] by email to limit [% terms.abug %] +to a certain set of groups. +</p> + +<p> + <b>Description</b> is what will be shown in the [% terms.bug %] reports +to members of the group where they can choose whether the [% terms.bug %] +will be restricted to others in the same group. +</p> + +<p> + <b>User RegExp</b> is optional, and if filled in, will automatically +grant membership to this group to anyone with an email address +that matches this perl regular expression. Do not forget +the trailing '$'. Example '@mycompany\.com$' +</p> + +<p> + The <b>Use For [% terms.Bugs %]</b> flag determines whether or not +the group is eligible to be used for [% terms.bugs %]. If you remove +this flag, it will no longer be possible for users to add [% terms.bugs %] +to this group, although [% terms.bugs %] already in the group will remain +in the group. Doing so is a much less drastic way to stop a group +from growing than deleting the group as well as a way to maintain +lists of users without cluttering the lists of groups used +for [% terms.bug %] restrictions. +</p> + +<p> + The <b>Type</b> field identifies system groups. +</p> + +[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/admin/groups/remove.html.tmpl b/template/en/default/admin/groups/remove.html.tmpl new file mode 100644 index 000000000..0eed2d9fb --- /dev/null +++ b/template/en/default/admin/groups/remove.html.tmpl @@ -0,0 +1,60 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Dave Miller <justdave@syndicomm.com> + # Joel Peshkin <bugreport@peshkin.net> + # Jacob Steenhagen <jake@bugzilla.org> + # Vlad Dascalu <jocuri@softhome.net> + #%] + +[%# INTERFACE: + # remove_all: boolean int. Is 1 if the action was remove_all, + # and 0 if the action was remove_all_regexp. + # name: string. The place where removal is performed. + # regexp: string. The regexp according to which the removal is performed. + # users: array with group objects having the properties: + # - login: string. The login which is removed. + #%] + + +[% IF remove_all %] + [% title = "Removing All Explicit Group Memberships from '" + _ name _ "'" %] +[% ELSE %] + [% title = "Removing All Explicit Group Memberships Matching " + _ "Group RegExp from '" _ name _ "'" %] +[% END %] + +[% PROCESS global/header.html.tmpl %] + +[% IF remove_all %] + <p><b>Removing explicit membership</b></p> +[% ELSE %] + <p><b>Removing explicit memberships of users matching + '[% regexp FILTER html %]'...</b></p> +[% END %] + +[% FOREACH user = users %] + [% user.login FILTER html %] removed<br> +[% END %] + +<p><b>Done</b>.</p> + +<p>Back to the <a href="editgroups.cgi">group list</a>.</p> + +[% PROCESS global/footer.html.tmpl %] |