######################################################################### ## CGI::Application - Framework for building reusable web-applications ## ######################################################################### CGI::Application is intended to make it easier to create sophisticated, reusable web-based applications. This module implements a methodology which, if followed, will make your web software easier to design, easier to document, easier to write, and easier to evolve. Download site for CGI::Application: http://www.cpan.org/authors/id/J/JE/JERLBAUM/ CHANGES SINCE VERSION 2.1: - Added new module CGI::Application::Mailform as both an example of how to use CGI::Application and a useful (albeit simple) reusable web-based application. - CGI::Application::Mailform allows the contents of data submitted through HTML forms to be easily sent via email to a specified recipient. This application is intended to be very easy to reuse, yet secure and functional enough to replace some of the most onerous "mailform" scripts which have been floating around the Internet for ages. - Added cgiapp_prerun() hook, for adding global behaviors before the run-mode method is called. The cgiapp_prerun() gets the name of the run-mode as a parameter. This would allow the user to perform some action based on the current run-mode. - Fixed minor bug in build system for older Perl versions. - Modified tmpl_path() to propagate to HTML::Template's PATH parameter. This provides much more useful and intuitive behavior. Thanks to Sam Tregar for the patch! - Added prerun_mode() method to allow the run-mode to be dynamically changed inside the cgiapp_prerun() method. Thanks to Steve Comrie for the suggestion of using a method call for this function. Thanks to many other list members for further refining this idea. - Refactored some test cases, general code clean-up. - Refactored POD a bit to make it less intimidating for new users. Read the recent "Using CGI::Application" article on Perl.com for an overview of the module and its usage: http://www.perl.com/pub/a/2001/06/05/cgi.html HOW DO I INSTALL IT? To install this module, cd to the directory that contains this README file and type the following: perl Makefile.PL make make test make install CGI::Application builds on standard, non-proprietary technologies and techniques, such as the Common Gateway Interface and Lincoln D. Stein's excellent CGI.pm module. CGI::Application judiciously avoids employing technologies and techniques which would bind a developer to any one set of tools, operating system or web server. The guiding philosophy behind CGI::Application is that a web-based application can be organized into a specific set of "Run-Modes." Each Run-Mode is roughly analogous to a single screen (a form, some output, etc). All the Run-Modes are managed by a single "Application Module" which is a Perl module. In your web server's document space there is an "Instance Script" which is called by the web server as a CGI (or an Apache::Registry script if you're using Apache + mod_perl). CGI::Application is an Object-Oriented Perl module which implements an Abstract Class. It is not intended that this package be instantiated directly. Instead, it is intended that your Application Module will be implemented as a Sub-Class of CGI::Application. If you have any questions, comments, bug reports or feature suggestions, post them to the support mailing list! To join the mailing list, simply send a blank message to "cgiapp-subscribe@lists.vm.com".