+HotelGate product.
[www.jankratochvil.net.git] / product / hotelgate / Case.pm
diff --git a/product/hotelgate/Case.pm b/product/hotelgate/Case.pm
new file mode 100644 (file)
index 0000000..a4ceab8
--- /dev/null
@@ -0,0 +1,119 @@
+# $Id$
+# Deployment cases of 'My::Project::hotelgate'
+# Copyright (C) 2005 Jan Kratochvil <project-www.jankratochvil.net@jankratochvil.net>
+# 
+# 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; exactly version 2 of June 1991 is required
+# 
+# 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
+
+
+package product::hotelgate::Case;
+require 5.6.0; # at least 'use warnings;' but we need some 5.6.0+ modules anyway
+our $VERSION=do { my @r=(q$Revision$=~/\d+/g); sprintf "%d.".("%03d"x$#r),@r; };
+our $CVS_ID=q$Id$;
+use strict;
+use warnings;
+
+use My::Web;
+
+
+sub handler
+{
+Wrequire 'product::hotelgate::Lib';
+my $W=product::hotelgate::Lib->init(
+               "title"=>"HotelGate: Deployment Scenarios",
+               );
+
+print <<"HERE";
+<h1>HotelGate: Deployment Scenarios</h1>
+HERE
+
+
+my @items=(
+
+       { "id"=>"full","title"=>"Ticket access from hotel restaurant with free access from hotel rooms","body"=><<"HERE", },
+<p>Hotel provides Internet access for its rooms over ethernet cable. Charge is
+enlisted on the final hotel receipt - the receptionist can permit/forbid free
+Internet for each specific room of the hotel. Hotel also provides its
+restaurant with public hosts access, Internet provided over WiFi in this
+restaurant requires valid id/password from tickets being sold and printed by
+the staff. The tickets are usually pre-printed in a stock there.</p>
+
+<ul>
+       <li>Rooms Internet access control and tickets printing is provided by regular
+       PC with a web browser.</li>
+
+       <li>WiFi access is provided by additional common access point in bridging
+       mode.</li>
+
+       <li>Segments (each room, restaurant) separation is provided by VLAN
+       functionality of switches with a single HotelGate ethernet
+       interconnection.</li>
+</ul>
+HERE
+
+       { "id"=>"cafe","title"=>"Coffee shop with ticketed Internet access","body"=><<"HERE", },
+<p>Coffee shop provides Internet over WiFi. Access requires valid id/password
+from tickets being sold and printed by the staff. The tickets are usually
+pre-printed in a stock there.</p>
+
+<ul>
+       <li>Tickets printing is provided by regular PC with a web browser.</li>
+
+       <li>WiFi access is provided by additional common access point in bridging
+       mode.</li>
+
+       <li>No additional switches needed.</li>
+</ul>
+HERE
+
+       { "id"=>"rooms","title"=>"Simple free hotel rooms Internet access without any extra charges","body"=><<"HERE", },
+<p>Hotel provides Internet access for its rooms over ethernet cable. Charge is
+covered by general hotel accomodation fees for all hosts.</p>
+
+<ul>
+       <li>Rooms Internet access control and tickets printing is provided by regular
+       PC with a web browser.</li>
+
+       <li>Only the very basic switches needed as there is no VLAN functionality
+       required.</li>
+
+       <li>No control PC or staff training needed.</li>
+</ul>
+HERE
+
+       );
+
+
+print <<"HERE";
+<ul>
+HERE
+for (@items) {
+       print <<"HERE";
+       <li>@{[ a_href '#'.$_->{"id"},$_->{"title"} ]}</li>
+HERE
+       }
+print <<"HERE";
+</ul>
+HERE
+
+for (@items) {
+       print <<"HERE";
+<h2 id="@{[ $_->{"id"} ]}">@{[ $_->{"title"} ]}</h2>
+HERE
+       print leftimg $_->{"body"},$_->{"id"}.".svg",$_->{"title"};
+       }
+
+
+exit;
+}
+1;