e-smith-starterwebsite/root/etc/e-smith/web/functions/starterwebsite

135 lines
4.8 KiB
Perl
Executable File

#!/usr/bin/perl -wT
#----------------------------------------------------------------------
# heading : Miscellaneous
# description : Create starter web site
# navigation : 7000 7100
#----------------------------------------------------------------------
#----------------------------------------------------------------------
# copyright (C) 2002 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::starterwebsite;
my $f = esmith::FormMagick::Panel::starterwebsite->new();
$f->display();
=head1 TESTING
=begin testing
use esmith::FormMagick::Tester;
use esmith::TestUtils;
use esmith::ConfigDB;
my $panel = 'starterwebsite';
my $panel_path = "/etc/e-smith/web/functions/".$panel;
my $ua = esmith::FormMagick::Tester->new();
is (mode($panel_path), '4750', "Check permissions on script");
my @stat = stat($panel_path);
is (getpwuid($stat[4]), 'root', "File is owned by root");
is (getgrgid($stat[5]), 'admin', "File is owned by group admin");
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-us"), "Set language to U.S. English");
ok ($ua->get_panel($panel), "Get panel");
is ($ua->{status}, 200, "200 OK");
like($ua->{content}, qr/Create a starter website/, "Saw translated form title");
# Testing changes
ok ($ua->get_panel($panel), "Testing panel retrieval");
can_ok($ua, "field");
ok ($ua->{form}->find_input('text1'), 'Finding the text1 field');
ok ($ua->{form}->find_input('text2'), 'Finding the text2 field');
ok ($ua->{form}->find_input('companyName'), 'Finding the companyName field');
ok ($ua->{form}->find_input('header1'), 'Finding the header1 field');
ok ($ua->{form}->find_input('header2'), 'Finding the header2 field');
$ua->field('text1' => 'We build widgets. You know?');
$ua->field('text2' => 'We can build widgets for you');
$ua->field('companyName' => 'FooCorp');
$ua->field('header1' => 'Widget Makers');
$ua->field('header2' => 'Contact us');
ok ($ua->click("Save"), "Click Save");
is ($ua->{status}, 200, "200 OK");
like($ua->{content}, qr/Successfully created/, "Saw validation messages");
ok(open(FILE,"</home/e-smith/files/primary/html/index.htm"), 'Opened the new sample webpage');
my @content = <FILE>;
my $content = join('',@content);
close(FILE);
like ($content, qr'We build widgets. You know?', 'Validated value for text1');
like ($content, qr'We can build widgets for you', 'Validated value for text2');
like ($content, qr'FooCorp', 'Validated value for companyName');
like ($content, qr'Widget Makers', 'Validated value for header1');
like ($content, qr'Contact us', 'Validated value for header2');
# Gotta open this later, so we don't cache stale data
=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" post-event="change_settings()" pre-event="turn_off_buttons()">
<description>DESCRIPTION</description>
<field type="text" id="companyName" size="48">
<label>LABEL_COMPANYNAME</label>
</field>
<field type="text" id="header1" size="48">
<description>DESC_HEADER1</description>
</field>
<field type="textarea" id="text1" size="16">
<description>DESC_TEXT1</description>
</field>
<field type="text" id="header2" size="48">
<description>DESC_HEADER2</description>
</field>
<field type="textarea" id="text2" size="16">
<description>DESC_TEXT2</description>
</field>
<subroutine src="print_message('DESC_SUBMIT')"/>
<subroutine src="print_button('CREATE')"/>
</page>
<page name="Done" pre-event="turn_off_buttons">
<description>SUCCESS</description>
<subroutine src="print_homepage_url()" />
</page>
</form>