Apache::Wrapper - a simple framework for creating uniform, template 
                  driven content.

SYNOPSIS

  httpd.conf:

  <Location /someplace>
     SetHandler perl-script
     PerlHandler Apache::Wrapper

     PerlSetVar  TEMPLATE "templates/format1.html"
     PerlSetVar  REPLACE "the content goes here"
  </Location>  

  Apache::Wrapper is Filter aware, meaning that it can be used within 
  an Apache::Filter framework without modification.  Just include the
  directive
  
  PerlSetVar Filter On

  and modify the PerlHandler directive accordingly...

DESCRIPTION

  Apache::Wrapper provides a simple way to insert content within an
  established template for uniform content delivery.  While the end
  result is similar toApache::Sandwich, Apache::Wrapper offers several
  advantages.

  It does not use separate header and footer files, easing the pain of
  maintaining syntactically correct HTML in seperate files.

  It is Apache::Filter aware, thus it can both accept content from
  other content handlers as well as pass its changes on to others
  later in the chain.

EXAMPLE

  /usr/local/apache/templates/format1.html:

   <html>
        <head><title>your template</title></head>
                <title>your template</title>
        <body bgcolor="#778899">
                some headers, banners, whatever...
                <p>
   the content goes here
                </p>
                <p>some footers, modification dates, whatever...
        </body>
   </html> 


  httpd.conf:

  PerlModule Apache::Filter

  <Location /someplace>
     SetHandler perl-script
     PerlHandler Apache::Wrapper Custom::SomeOtherHandler

     PerlSetVar  TEMPLATE "templates/format1.html"
     PerlSetVar  REPLACE "the content goes here"
     PerlSetVar  Filter On
  </Location>

  Now, a request to http://localhost/someplace/foo.html will insert
  the contents of foo.html in place of "the content goes here" in the
  format1.html template and pass those results to 
  Custom::SomeOtherHandler.  The result is a nice and tidy way to 
  control any custom headers, footers, background colors or images,
  in a single html file.

NOTES

  TEMPLATE is relative to the ServerRoot - this may change in future 
  releases, depending on demand.

  REPLACE defaults to "|", though it may be any character or string
  you like - metacharacters are disabled in the search, so sorry, no 
  regex for now... 
 
  Verbose debugging is enabled by setting $Apache::Wrapper::DEBUG=1
  or greater.  To turn off all debug information, set your apache 
  LogLevel above info level.

  This is alpha software, and as such has not been tested on multiple
  platforms or environments.  It requires PERL_LOG_API=1, 
  PERL_FILE_API=1, and maybe other hooks to function properly.

FEATURES/BUGS

  If Apache::Wrapper finds more than one match for REPLACE in the
  template, it will insert the request for the first occurrence only.
  All other replacement strings will just be stripped from the 
  template.

  Currently, Apache::Wrapper will return DECLINED if the content-type
  of the request is not 'text/html'.

SEE ALSO

  perl(1), mod_perl(3), Apache(3), Apache::Filter(3)

AUTHOR

  Geoffrey Young <geoff@cpan.org>

COPYRIGHT

  Copyright 2000 Geoffrey Young - all rights reserved.

  This library is free software; you can redistribute it and/or
  modify it under the same terms as Perl itself.
