Apache2-PageKit
view release on metacpan or search on metacpan
Revision history for Perl extension Apache::PageKit.
For more details on migration, see migration/README
2.15 No functional changes to 2.14_15 API compatible to 1.19
1.19
! Adjust post_max limit to sync with yet another incompatble
change in libapreq2. The new default limit is
64_000_000 instead of 100_000_000 the current limit
in libapreq2 is 64 * 1024 * 1024
( Boris Zentner )
- Fix: typo in Apache2::PageKit::View::get_static_gzip
should improve speed of sending static gzipped files
( Shimon Rura )
1.18
- Allow testsuit to catch up with Changes in Apache::Test.
POST's can be redirected on the fly.
Otherwise the tests 05, 06 and 07 fail.
( Boris Zentner )
1.17
- Add: new config option use_recent_login_timeout in the global
section of Config.xml. Defaults to yes.
( Boris Zentner, Shimon Rura )
- Adjust Makefile.PL to support ExtUtils::MakeMaker > 6.21
( Boris Zentner, Mike Castle )
1.16
- Fix: Use Apache::ServerRec and Apache::ServerUtil in
Apache::ErrorReport ( Boris Zentner )
! The param method returns a empty list in list context if
the param was not defined. Older PageKits returned undef
( Boris Zentner )
- Fix: add missing : in binmode $fh, ":encoding(...)";
( Boris Zentner )
- Fix: typo in scripts/pkit_rename_app.pl ( Boris Zentner )
1.15
- Add: request_class parameter just for the case, that you like
another class or subclass do what Apache::Request do for
you. Defaults to Apache::Request::PageKit
( Boris Zentner )
- Fix: conversion error if the tmpl file's encoding is != utf8
and no content_var's are used. affects only perl < 5.8.0
( Boris Zentner )
- Add: Basic testsuite ( Boris Zentner )
- Remove setup_eg.pl this file is obsolete ( Boris Zentner )
- Fix: Fresh created session cookie headers are wrongly not send
for pkit_redirect pages this is fixed now. ( Boris Zentner )
- Add: Experimental support for Template Toolkit. Enabled with
template_class = "Template" in your Config.xml
( Boris Zentner)
- Fix: with pkit_admin=on and perl 5.8.x the input data is
converted to your default_input_charset.
( Boris Zentner, Sean Lee )
- Send Content-Length header for static files. ( Boris Zentner )
- Fix: eg/dbfile needs rw permission even for nobody or nouser
if apache is started as root.
( Boris Zentner, Shawn Poulson )
1.14
- Fix: parse for xsl-params again in the xsl files. This was
broken in 1.13. ( Ben Ausden )
- Fix: add use Apache::PageKit::Model to eg/Model/MyPageKit.Common.pm
since it is possible that the application class is loaded
before Apache::PageKit ( Boris Zentner )
- the eg site use DBD::SQLite now. This obsoletes
DBD::CSV, SQL::Statement and Text::CSV_XS.
( Boris Zentner )
- fop_command can be disabled with fop_command = ""
( Boris Zentner, Shimon Rura )
- Remove Apache->request calls from Apache::PageKit::Edit
just to make apache 2 changes smaller ( Boris Zentner )
- Fix: Parse Accept-Charsets more pettier ( Boris Zentner )
! If the client browser has no accept charset header or no good one,
deliver in the default_output_charset and set the charset
in the content_type header. ( Erik Günther )
- Fix uri_prefix in conjunction with can_edit
( Boris Zentner, Erik Günther )
1.13
- Add support for Apache2 ( Boris Zentner )
- Add scripts/pkit_rename_app.pl it helps to start new applications
fast ( Boris Zentner )
- Add <PKIT_COMMENT> and </PKIT_COMMENT> tags. ( Boris Zentner )
- Fix filetest for upload_tmp_dir ( Boris Zentner )
- Fix locale support. One message was twice in the .po files.
( Boris Zentner )
- Fix Encoding of Apache::PageKit::Edit. Use HTML::Entities
and encode only '<>&"' ( Boris Zentner )
- Fix encoding of Apache::ErrorReport stacktrace
( Boris Zentner, Paul Flinders )
1.12
- PageKit now install the right version for the installed perl.
This requires the patch command if you use perl 5.8.x.
( Boris Zentner )
- Replace Apache::test with Apache::Test ( Boris Zentner )
- Workaround segfault in XML::LibXML2 in context with findnodes
( Boris Zentner )
- Add large comments in front of custom response headers for MSIE.
( Boris Zentner )
- Send full response messages if no data is send to the user.
This fix display problems on some browsers.
( Boris Zentner, Rob Starkey )
- Send headers even if we process a SubRequest
( Boris Zentner, Anton Permyakov )
- Some case changes in the eg site, to get it working
case-sensitive. ( Boris Zentner )
- All PageKit vars in the output object like pkit_user, pkit_done
and so on are in lowercase now. This is usefull if we use
another templating engine where case matters.
( Boris Zentner )
- Add docs for pkit_internal_execute_redirect
( Boris Zentner )
- pkit_internal_redirect and pkit_internal_execute_redirect
handle page_id's with parameters (Boris Zentner)
- Fix: Cache handling on the client side more restrictive
( Boris Zentner )
- Fixed bug in params_as_string when value is 0 ( TJ Mather )
- Improved error message when template not found
and XML::LibXSLT not installed ( TJ Mather )
- Fix: Expansion of multivalued parameters for HTML::Template
( Paul G. Weiss )
- FIX: Typo in HAVE_NOT_MESSAGES close tag.
( Boris Zentner )
- Add new option upload_tmp_dir
see Apache::Request TEMP_DIR ( Ben Ausden )
- Large speedup for all static pages ( Boris Zentner )
- Add docs for the ignore_fillinform_fields methode
(Boris Zentner)
- Fix: remove again 0xa0 chars from FAQ.pod
(Boris Zentner)
1.11
- Fix early delivery of static pages (Paul G. Weiss)
- Add Apache::PageKit::FAQ (Boris Zentner)
- Fix: Search attributes for a page in the sections
even if the page has some other attributes
(Glenn Morgan)
- Fix: Add missing # to the colors in eg/Common.pm
(Boris Zentner)
- Fix expansion of unused pkit_macro tags to ''
(Boris Zentner)
- Fix pkit_get_session_id to work even without a real
- Moved most of POD documentation to DocBook, published
at http://www.pagekit.org/guide
- Renamed <PKIT_*> tags as follows:
<PKIT_IF NAME="VIEW:view"> -> <PKIT_VIEW NAME="view">
<PKIT_LOOP NAME="MESSAGE"> -> <PKIT_MESSAGES>, <PKIT_IS_ERROR>, <PKIT_MESSAGE>
<PKIT_VAR NAME="HOSTNAME"> -> <PKIT_HOSTNAME>
- support for relative and absolute names for PKIT_COMPONENT
- you may now place static HTML files in the pagekit/View/Default
or View/pkit_view directories.
If pagekit can not locate the approriate
template/xml file, it will return declined, but set
the filepath so that apache returns the files.
- fixed up static handing with default_page and not_found_page
(Boris Zentner)
- Replaced MyPageKit::Common with __PACKAGE__ in Common.pm
(Boris Zentner)
0.99
- document() function now works in XML::XPathTemplate
- logins are redirected to selfurl if there is no pkit_done param
- merged View/Component and Page directories.
- $model->input_param -> $model->input, $model->fillinform, $model->pnotes
- $model->output_param -> $model->output
- $model->dispatch(class,method,params) now is
my $class_object = $model->pkit_create(class)
$class_object->method(params);
- authentication code no longer sets $model->input_param('pkit_user')
and $model->output_param('pkit_user')
- Fixed warning messages if $^W is turned on
- Now requires classes if they are not already loaded. (Boris Zentner)
- Fixed bug when calling pkit_get_orig_uri from pkit_get_default_page
- Fixed bug when page_id is not found.
- Now matches </PKIT_COMPONENT>, </PKIT_VAR>, </MODEL_VAR> tags
generated by XSLT
- Fixed bug in View.pm for checking for new uploads to $pkit_view
directory.
- Fixed bug in XML::XPathTemplate where queries were converted
to lowercase. (Boris Zentner)
0.98 Mon May 7 14:37:08 2001 EST
- Added support for XML::LibXSLT - can now generate
pages from XML and XSL stylesheets
- Separated out XML Template code in new module,
XML::XPathTemplate
- update last_activity in session for every hit -
makes sure that recent_login works everytime
and overcomes the fact that Apache::Session only
does a shallow check of the hash.
- Fixed bug with pkit_get_orig_uri
- Checks for recursive PKIT_COMPONENTS (that is over 100)
- When user logs out of a page that requires a login,
goes to default_page instead of login_page
- Fixed bug with cache when new template was placed in a
directory when there was already a corresponding template
in the 'Default' directory
- Added pkit_cleanup_code hook for Model class (Boris Zentner)
- Error code rewritten, since using $SIG{__DIE__} does not
play well with eval, and there were problems with the
server hanging after a die, when the session wasn't
properly deleted. Die's are now trapped using 'eval'.
Also renamed Apache::PageKit::Error to Apache::ErrorReport
- pkit_message works when you perform a redirect
using $model->pkit_redirect
- Fixed bug with use_template is set to 'no'
- Fixed bug with XPath queries.
- Fixed bug with locating only files in Page dir for
preparse_templates
0.97 Wed Apr 25 17:07:31 2001 EST
- Login code has been rewritten. To attempt a login, the
pkit_login request parameter must be set.
The new_credential configuration option is no longer
supported.
- added can_edit to server config section Config.dtd file.
- Names in <CONTENT_VAR> and <CONTENT_LOOP> tags are
XPath queries
- Removed support for navigation bars, since they didn't fit
in well with the new Content and View modules. Might
add them back if there is demand and I can find an
clean way of doing it (using XPointers in content
XML file???)
- Removed support for $model->content_param, since content
is now compiled into template and it is not possible
to get or set the tags run time.
- Automically converts UTF-8 Encoding to latin1 encodeing,
if Unicode::String is loaded (Yann Kerhervé)
- fixed bug with pre-parsing content from sub-directories
- input_param now works with parameters containing multiple values
- Add $model->pkit_set_errorfont($field), used mark <PKIT_ERRORFONT>
tags for errors.
- Added pkit_root method, gets PageKit root directory
- no longer escape pkit_done
- works with mod_proxy_add_uri.c apache module, using X-Original-URI
header
- Removed PKIT_LOGINOUT_LINK, this tag was
not necessary and cluttered the API,
see migration/README for details
- removed search_engine_headers config option
- server_id is now passed to startup, solves
problem with server options not being
loaded properly at startup.
- Added pkit_get_session_id
- Added pkit_fixup_uri method
- Added request_param_in_tmpl global attribute, which
supplements request_param_in_tmpl page attribute
- Added $model->pkit_output_filter, a hook that can
be used to filter the output
- Added <PKIT_VAR NAME="HOSTNAME">, which specifies
current host name.
- Added $model->pkit_get_server_id - gets server id from
Config.xml file.
- Added $model->pkit_get_default_page - put in so that
it can be overridden in derived model class
- if cache_dir is not set, default to the PKIT_ROOT/View/cache
and PKIT_ROOT/Content/cache
- moved html_clean_level from global section to server section
- added pkit_post_common_code hook, similar to
pkit_common_code, but called after page code is
executed.
- Added <CONTENT_(IF|UNLESS|ELSE)> tags.
- Fixed typo with login/out message.
- Components can now have content associated with them
(needs testing)
- Fixed problems with Content caching when page_id contains
'/' - content cache files are now determined my using
a MD5 hash
0.96 Fri Feb 02 04:18:22 2001 EST
- added $model->pkit_input_hashref method, gets inputs
(request params) as a reference to hash
- renamed pkit_set_page_id to pkit_internal_redirect
easier to remember and naming consistant with
pkit_redirect method
- Added installation troubleshooting tips, thanks to
Chris Burbridge and Nick Wood for helpful pointers
- Apache::PageKit->handler and startup are now called as
class methods
- pagekit.org example cookies should work even when
the url is not of the form *.pagekit.org
- fixed error when cookie_domain was not set
- cookie_domain is now a NMTOKENS field and you can pass
multiple domains to it, seperated by spaces
- Added $model->pkit_query method which is a wrapper to
HTML::Template::query
- Added support for <PKIT_VAR NAME="LAST_CRUMB">
- Fixed errors with s/cookie_crumb/bread_crumb/
- Added session_expires to control the expire time for
the session cookie
0.95 Tue Jan 16 15:12:21 2001 EST
- Added method $model->pkit_redirect($url)
- Cache files are now 'chown'ed to the user and group
specified in the User and Group apache configuration
directives. This is because the cache files are
generated under server startup, which is typically
run under 'root', but the cache files need to be
writeable by the Apache children, which run under
a non-root user.
- Made the Model base class (MyPageKit::Common) user
configurable, using the model_bass_class global
configuration option. This way two or more distinct
pagekit sites can operate on the same server.
- Added cache_dir global configuration option that
allows the administrator to specify the directory
to store the view and content cache.
- Fixed Apache::PageKit::Model->dbh so that it calls
MyPageKit::Common->pkit_dbi_connect if there isn't
already a database handle.
0.94 Wed Jan 10 02:25:51 2001 EST
- Replaced derived Apache::PageKit handler module (eg MyPageKit)
with MyPageKit::Common and Apache::PageKit->handler.
See migration/README for details.
- Changed structure of Model to allow for multiple model
objects, each containing a reference to a common
$pk object.
- <PKIT_ERRORFONT name="foo"> bar</PKIT_ERRORFONT> is now
precompiled to <TMPL_VAR NAME="PKIT_ERRORFONT_BEGIN_foo">
bar</TMPL_VAR NAME="PKIT_ERRORFONT_END_foo"> for
improved performance.
- $dbh, $apr, and $session are now accessed from model through
dbh, apr, and session methods.
- Added docs on support for dynamically loaded components
that get specified at runtime using systax like
<PKIT_COMPONENT NAME="<MODEL_VAR NAME="foo">">
- You can now pass a hash reference to set multiple parameters
for output_param method
- Removed support for PKIT_INTERNET_EXPLORER and
PKIT_NETSCAPE tags. These tags clutter the
API and are easily implemented in the model.
0.93 Wed Jan 03 01:49:06 2001 EST
- Fixed documentation in Apache::PageKit::Model,
where output_param method was listed
as param.
- Updated pagekit.org web site with links to
a browsable repository of source code
and more documentation.
- Fixed problem with make test, with language
cache files conflicting b/c of different
default languages in test.
0.92 Sun Dec 31 21:32:30 2000 EST
- Rewrote Model class so that Model classes are
standalone and not dependent on the PageKit
architecture.
* functions in Model now get called
as methods of derived Model class
* inputs and outputs are now accessed
by $model->input_param and
$model->output_param instead of
$apr->param and $view->param
* $pk->redirect is no longer available
* $pk->continue no longer available, use
$model->pkit_set_page_id instead
* $pk->message moved to $model->pkit_message
* page and component_dispatch_prefix replaced
by model_dispatch_prefix
- XML and template files are now parsed by calling
Apache::PageKit::startup function. Should fix
problems when PageKit is used inside a
<Directory>, <Location> or <Files> section.
- Fixed bug with not getting fill_in_form configuration
setting in View.pm
- Fixed bugs with language localization and session
management.
- Improved language localization example on pagekit.org
web site
0.91 Tue Dec 26 04:05:56 2000 EST
- Changed name of page_id_match configuration directive to
uri_match.
- Fixed some permission problems when 'make test' is run
as root.
0.90 Sun Dec 24 01:26:18 2000 EST
- Major changes in API and streamlining of pagekit
in preparation for 1.0 beta release.
- Removed seldom used options and replaced others with
more user-friendly versions.
- Renamed Controller directory to Config directory
- Renamed <TMPL_VAR> and <TMPL_LOOP> tags to
<MODEL_VAR> and <MODEL_LOOP> for Model Data and
<CONTENT_VAR> and <CONTENT_LOOP> for Content Data and
<PKIT_VAR> and <PKIT_LOOP> for PageKit Data
- Renamed <PKIT_INCLUDE> to <PKIT_COMPONENT> and replaced
'include' with 'component' across the framework
- Moved and renamed nav_title option from config to
<NAV_TITLE> </NAV_TITLE> in content XML for
better foreign language support.
- Renamed Apache::PageKit::FormValidator to Apache::PageKit::Model
and redesigned class to replace form_validator
constructor option with $model->validate_input($hash_ref)
method. Eliminated error_page and error_page_run_code
options (user should use $pk->continue
in model instead). This should make the development
easier because all the logic is in the Model class instead
being scattered across the derived class and configuration.
- View templates get pre-parsed using file_cache/cache option of
HTML::Template, and the HTML can be optimized by
using HTML::Clean if html_clean_level is set to >=1
- Changed template_cache option to use yes for cache
in HTML::Template and no for file_cache.
Got rid of shared_cache, since it is problematic
and file_cache is almost as fast.
- Moved fill_in_form to page attr from global attr
- Removed support for domains, including page_domain,
domain, is_topdomain attributes.
- Removed page based linking attributes, including
support for <PKIT_LINK> and <PKIT_JAVASCRIPT> tags and
is_popup, is_secure, popup_width, and popup_height.
0.89 Sun Dec 3 18:27:11 2000 EST
- Major changes in API, leading up to 0.9 pre-beta and 1.0 beta release
- Created Apache::PageKit::Config, for configuration directives,
replacing Apache::PageKit::Info
- Created Apache::PageKit::Content, for XML content
- Created content XML files for separation of
content from presentation
- Reorganized pagekit.org files into Model/View/Content/Controller
directories
- Rewrote pagekit.org site to use DBD::Sprite and Apache::Session::File
instead of MySQL, so could include in test suite without
requiring MySQL
- Used Apache::Test in test suite to test working copy of pagekit.org
web site.
0.05 Tue Oct 31 14:12:00 2000 EST
- Added support for language localization
- No longer require that entry in page.xml exist for all pages
- Replaced View and Module templates with Include templates
view parameter in page.xml is no longer used
- Renamed ModuleCode to IncludeCode
- Added <PKIT_NETSCAPE> and <PKIT_INTERNET_EXPLORER> tags
- Added $pk->redirect method
- Added $pk->continue method
0.04 Tue Aug 29 13:12:53 2000 EST
- Added support for <TMPL_LOOP> XML tag
- modified pagekit.org to use <TMPL_LOOP>
0.03 Tue Aug 29 00:13:33 2000 EST
- Replaced use of Apache::Session with adaption of
HTML::Embperl::Session
0.02 Mon Aug 28 18:44:15 2000 EST
- Added XML Support for attributes and <TMPL_VAR> Elements
( run in 1.828 second using v1.01-cache-2.11-cpan-39bf76dae61 )