initial commit of file from CVS for smeserver-groupmembers-panel on Sat Sep 7 20:27:00 AEST 2024
This commit is contained in:
147
root/etc/e-smith/web/functions/groupmembers
Executable file
147
root/etc/e-smith/web/functions/groupmembers
Executable file
@@ -0,0 +1,147 @@
|
||||
#!/usr/bin/perl -wT
|
||||
|
||||
# vim: ft=xml ts=4 sw=4 et:
|
||||
#----------------------------------------------------------------------
|
||||
# heading : Collaboration
|
||||
# description : GROUP_MEMBERS
|
||||
# navigation : 2000 2200
|
||||
#----------------------------------------------------------------------
|
||||
#----------------------------------------------------------------------
|
||||
# copyright (C) 2002-2005 Mitel Networks Corporation
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
# Technical support for this program is available from Mitel Networks
|
||||
# Please visit our web site www.mitel.com/sme/ for details.
|
||||
#----------------------------------------------------------------------
|
||||
|
||||
|
||||
use strict;
|
||||
use esmith::FormMagick::Panel::groupmembers;
|
||||
my $f = esmith::FormMagick::Panel::groupmembers->new();
|
||||
$f->display();
|
||||
|
||||
=head1 TESTING
|
||||
|
||||
|
||||
=begin testing
|
||||
|
||||
use esmith::FormMagick::Tester;
|
||||
use esmith::TestUtils;
|
||||
use esmith::AccountsDB;
|
||||
my $panel = 'groups';
|
||||
my $panel_path = "/etc/e-smith/web/functions/".$panel;
|
||||
my $ua = esmith::FormMagick::Tester->new();
|
||||
|
||||
|
||||
is (mode($panel_path), '4750', "Check permissions on script");
|
||||
ok ($ua->get_panel($panel), "ABOUT TO RUN L10N TESTS");
|
||||
is ($ua->{status}, 200, "200 OK");
|
||||
like($ua->{content}, qr/FORM_TITLE/, "Saw untranslated form title");
|
||||
ok ($ua->set_language("en"), "Set language to English");
|
||||
ok ($ua->get_panel($panel), "Get panel");
|
||||
|
||||
is ($ua->{status}, 200, "200 OK");
|
||||
|
||||
like($ua->{content}, qr/Create, remove, or change/, "Saw translated form title");
|
||||
|
||||
# Testing changes
|
||||
|
||||
ok ($ua->get_panel($panel), "Testing panel retrieval");
|
||||
can_ok($ua, "field");
|
||||
|
||||
# Destructive testing:
|
||||
|
||||
ok ($ua->follow('Click here to create a user group'), "Followed link to create group");
|
||||
is ($ua->{status}, 200, "200 OK" );
|
||||
can_ok($ua, "field");
|
||||
ok($ua->field('groupName' => 'aaaaaeve') , "Set GroupName");
|
||||
ok($ua->field('groupDesc' => 'sample'), "Set GroupDesc");
|
||||
|
||||
if (destruction_ok()) {
|
||||
|
||||
ok ($ua->click('Create'), "Clicked create");
|
||||
is ($ua->{status}, 200, "200 OK" );
|
||||
like ($ua->{content}, qr/created user group/, "Saw create success message");
|
||||
ok ($ua->get_panel($panel), "Get panel");
|
||||
like ($ua->{content}, qr/aaaaaeve/, "Saw newly created everygroup link");
|
||||
ok ($ua->follow('Modify'), "modifying aaaaaeve");
|
||||
is ($ua->{status}, 200, "200 OK ");
|
||||
ok ($ua->field('groupDesc' => 'Everyone') , "Set group desc to 'Everyone'");
|
||||
|
||||
#putting this in a test fails. why?
|
||||
$ua->field('groupMembers' => 'admin');
|
||||
ok ($ua->click('Modify'));
|
||||
is ($ua->{status}, 200, "200 OK");
|
||||
like ($ua->{content}, qr/Successfully/, "Saw modification success message");
|
||||
ok (my $acct = esmith::AccountsDB->open());
|
||||
ok (my $everg = $acct->get('aaaaaeve'), "Got an aaaaaeveg out of the db");
|
||||
ok ($everg->prop('Members') eq 'admin', "aaaaaeve has admin as its member");
|
||||
|
||||
ok ($ua->get_panel($panel), "Get panel");
|
||||
like ($ua->{content}, qr/aaaaaeve/, "Saw modified everygroup link");
|
||||
ok ($ua->follow('Remove'), "removing aaaaaeve");
|
||||
is ($ua->{status}, 200, "200 OK");
|
||||
ok ($ua->click('Remove'));
|
||||
is ($ua->{status}, 200, "200 OK");
|
||||
like ($ua->{content}, qr/Successfully/, "Saw removal success message");
|
||||
ok ($ua->get_panel($panel), "Get panel");
|
||||
unlike ($ua->{content}, qr/aaaaaeve/, "Saw no everygroup");
|
||||
}
|
||||
|
||||
=end testing
|
||||
|
||||
=cut
|
||||
|
||||
__DATA__
|
||||
<form title="FORM_TITLE" header="/etc/e-smith/web/common/head.tmpl" footer="/etc/e-smith/web/common/foot.tmpl">
|
||||
<page name="First" pre-event="print_status_message()">
|
||||
<subroutine src="show_initial()"/>
|
||||
</page>
|
||||
<page name="CreateGroup" pre-event="turn_off_buttons()"
|
||||
post-event="create_group()">
|
||||
<title>CREATE_GROUP</title>
|
||||
<description>GROUP_NAMING</description>
|
||||
<field type="text" id="groupName"
|
||||
validation="validate_group, validate_group_length, validate_group_naming_conflict">
|
||||
<label>GROUP_NAME</label>
|
||||
</field>
|
||||
<field type="text" id="groupDesc" validation="validate_description">
|
||||
<label>GROUP_DESC</label>
|
||||
<description>GROUP_DESC_EXPL</description>
|
||||
</field>
|
||||
<subroutine src="genUsers()"/>
|
||||
<subroutine src="print_button('ADD')" />
|
||||
</page>
|
||||
<page name="Delete" pre-event="turn_off_buttons()"
|
||||
post-event="delete_group()">
|
||||
<title>REMOVE_USER_GROUP</title>
|
||||
<subroutine src="print_group_delete_desc()"/>
|
||||
<subroutine src="print_group_members()"/>
|
||||
<subroutine src="print_ibay_list($acct)"/>
|
||||
<subroutine src="print_button('REMOVE')" />
|
||||
</page>
|
||||
<page name="Modify" pre-event="turn_off_buttons()"
|
||||
post-event="modify_group()">
|
||||
<field type="literal" id="groupName" value="$q->param('groupName')">
|
||||
<label>GROUP_NAME</label>
|
||||
</field>
|
||||
<field type="literal" id="groupDesc" value="get_description()" >
|
||||
<label>GROUP_DESC</label>
|
||||
</field>
|
||||
<subroutine src="genUsers()"/>
|
||||
<subroutine src="print_button('SAVE')" />
|
||||
</page>
|
||||
</form>
|
Reference in New Issue
Block a user