The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

Changes for version 1.38 - 2002-02-25

  • Overall:
    • You can now tell OI to cache the user, group and theme objects in the user session. The objects will get refreshed based on the settings in the server config. Thanks to Andreas Nolte <Andreas.Nolte@bertelsmann.de> for the idea and a sample implementation.
    • Small changes to the CommonHandler to add more flexibility
    • The deprecated 'static_page' package is no longer distributed with OI.
  • Individual:
    • conf/sample-server.ini:
      • Added configuration keys session_info->cache_user, session_info->cache_group, session_info->cache_theme. The value for each key is the length of time (in minutes) the object can be cached in the user session.
    • OpenInteract.pm:
      • If session_info->cache_theme set to a positive value, cache the theme in the user's session
    • OpenInteract/Auth.pm:
      • If session_info->cache_user set to a positive value, cache the user object in the user session (only if logged in, etc.)
      • If session_info->cache_group set to a positive value, cache the group object in the user session (only if logged in, etc.)
    • OpenInteract/CommonHandler.pm:
      • Added _edit_post_action_customize() and _remove_post_action_customize() to perform actions after a successful edit or remove.
      • Added MY_SEARCH_ADDITIONAL_PARAMETERS to pass additional information to the SPOPS fetch_iterator() call. Thanks to Ewald Hinrichs <Ewald.Hinrichs@applied.de> for the suggestion.
    • OpenInteract/Template/Process.pm:
      • Changed how the $template object gets initialized: if the 'cache_tt' directory is undefined, we ensure that the COMPILE_DIR and COMPILE_EXT settings in $template are also undefined so TT does no compiling to disk. Thanks to John Sequeira <jseq@mediaone.net> for pointing out that compiling couldn't be turned off.
    • script/oi_manage:
      • In test_db_connection(), swap the $@ check and $db check around after the initial connect, and instead of the simple test for existence of $db, check to see that it's a valid DBI handle -- that is, isa('DBI::db') (Thanks to John Sequeira <jseq@mediaone.net> for prompting.)
  • Packages Changed:
  • The 'Changes' file in each package has details.
    • OpenInteract 1.37 -> 1.38
    • base: 1.63 -> 1.63 base_box: 0.42 -> 0.42 base_component: 1.30 -> 1.30 base_error: 1.39 -> 1.39 base_group: 1.32 -> 1.32 base_page: 0.77 -> 0.89 base_security: 1.54 -> 1.54 base_template: 1.27 -> 1.27 base_theme: 1.29 -> 1.29 base_user: 1.47 -> 1.49 lookup: 0.20 -> 0.20 object_activity: 0.10 -> 0.11 results_manage: 0.07 -> 0.07 system_doc: 1.29 -> 1.29 classified: 1.32 -> 1.32 full_text: 1.30 -> 1.30 news: 1.33 -> 1.33 static_page: 1.53 -> removed

Documentation

A robust web application framework built to run under Apache and mod_perl
Manage OpenInteract websites and packages

Modules

mod_perl handler to process all OpenInteract requests
Central module to call for initializing an OpenInteract website
Authenticate the user object and create its groups
caches objects so we do not need to do a database fetch each time
Implement caching in the filesystem
Implement caching of metadata via IPC for quick access
Base class that with a few configuration items takes care of many common operations
centralized configuration information
Read/write INI-style (++) configuration files
Subclass OpenInteract::Config to read/write information from/to a perl file
handler to parse/output cookies from/to the client using Apache::Cookie
handler to parse/output cookies from/to the client using CGI::Cookie
Centralized connection location to DBI databases
Provide central holding location for Interact errors
Catches all errors and dispatches to proper handler
Catalog of system error handlers
Define task-dispatching, security-checking and other routines for Handlers to use
Centralized connection location to LDAP directories
Perform actions on individual packages
Operations to represent, install, remove and otherwise manipulate package repositories.
container for request info and output
Define common behaviors for all SPOPS objects in the OpenInteract Framework
Common SPOPS::DBI-specific methods for objects
Common SPOPS::LDAP-specific methods for objects
Dispatcher for installing various SQL data from packages to database
Implement session handling in the framework
Create sessions within a DBI data source
Bootstrapper that reads in modules and initializes the environment
Provide a custom context for templates in OpenInteract
Custom OpenInteract functionality in templates
Process OpenInteract templates
Retrieve templates for the Template Toolkit
The primary user interface assembly 'conductor'
Package of routines that do not really fit anywhere else
Handler for this package
SQL installer for this package
Default stash class and an example of what one looks like

Provides

in OpenInteract/Config/IniFile.pm