Perl module CGI::Prototype, originally by Randal L. Schwartz
Perl Shell
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib/CGI
t
.gitignore
Changes
MANIFEST
MANIFEST.SKIP
Makefile.PL
README
TODO

README

NAME

      CGI-Prototype - Create a CGI application by prototyped subclasssing

SYNOPSIS
      package My::HelloWorld;
      use base CGI::Prototype;

      sub template { \ <<'END_OF_TEMPLATE' }
      [% self.CGI.header; %]
      Hello world at [% USE Date; Date.format(date.now) | html %]!
      END_OF_TEMPLATE

      My::HelloWorld->activate;

DESCRIPTION
    The core of every CGI application seems to be roughly the same:

    *   Analyze the incoming parameters, cookies, and URLs to determine the
        state of the application (let's call this "dispatch").

    *   Based on the current state, analyze the incoming parameters to
        respond to any form submitted ("respond").

    *   From there, decide what response page should be generated, and
        produce it ("render").

    CGI::Prototype creates a "Class::Prototyped" engine for doing all this,
    with the right amount of callback hooks to customize the process.
    Because I'm biased toward Template Toolkit for rendering HTML, I've also
    integrated that as my rendering engine of choice. And, being a fan of
    clean MVC designs, the classes become the controllers, and the templates
    become the views, with clean separation of responsibilities, and
    "CGI::Prototype" a sort of "archetypal" controller.

INSTALLATION

To install this module type the following:

   perl Makefile.PL
   make
   make test
   make install

DEPENDENCIES

This module requires these other modules and libraries:

  Class::Prototyped
  Template (aka Template Toolkit)

AUTHOR
    Randal L. Schwartz, <merlyn@stonehenge.com>

    Special thanks to Geekcruises.com and an unnamed large university for
    providing funding for the development of this module.

COPYRIGHT AND LICENSE
    Copyright (C) 2003, 2004 by Randal L. Schwartz

    This library is free software; you can redistribute it and/or modify it
    under the same terms as Perl itself, either Perl version 5.8.5 or, at
    your option, any later version of Perl 5 you may have available.