Changes for version 0.90
- 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.
Modules
Application framework using mod_perl and HTML::Template
Reads and provides configuration data.
Parses and stores content in XML files.
Error Handling under mod_perl
Form validation.
Session Handling
Bridge between Apache::PageKit and HTML::Template
Validates user input (usually from an HTML form) based on input profile.
Examples
- eg/Config/Config.dtd
- eg/Config/Config.xml
- eg/Content/Content.dtd
- eg/Content/xml/customize.xml
- eg/Content/xml/examples.xml
- eg/Content/xml/index.xml
- eg/Content/xml/language.xml
- eg/Content/xml/license.xml
- eg/Content/xml/login1.xml
- eg/Content/xml/newacct1.xml
- eg/README
- eg/View/Default/Component/begin_cell.tmpl
- eg/View/Default/Component/bottom.tmpl
- eg/View/Default/Component/demo_desc.tmpl
- eg/View/Default/Component/end_cell.tmpl
- eg/View/Default/Component/top.tmpl
- eg/View/Default/Page/customize.tmpl
- eg/View/Default/Page/examples.tmpl
- eg/View/Default/Page/index.tmpl
- eg/View/Default/Page/language.tmpl
- eg/View/Default/Page/license.tmpl
- eg/View/Default/Page/login1.tmpl
- eg/View/Default/Page/newacct1.tmpl
- eg/View/print/Component/bottom.tmpl
- eg/View/print/Component/top.tmpl