OpenInteract
view release on metacpan or search on metacpan
- rename 'ruleset_add' -> 'ruleset_factory'
* OpenInteract/SPOPS/DBI.pm:
- Added 'discover_fields' SPOPS::ClassFactory behavior, which
allows you to leave the 'field' key in your object configuration
blank and have it filled at run-time. To use it you must set the
'field_discover' key to 'yes' in your object configuration.
* OpenInteract/Startup.pm:
- Add create_temp_lib() method to create a temporary library
directory, asking each of the packages to copy their relevant
module files there.
- Remove code that relied on putting all the package directories in
@INC, and add an extra call to setup_static_environment() to copy
the modules for all packages in a website to a temporary library,
which is also put in @INC. (For Apache the call to copy is in
OI::ApacheStartup)
* OpenInteract/Template/Plugin.pm:
- Fixed dumb POD error that prevented 'perldoc' from working
(identified itself as OI::Template::Provider in the head - doh!)
- Add 'is_admin' property to the template plugin that returns
whether the current user is an administrator. (See
OpenInteract/Auth.pm for what this means.)
- Add 'server_config' property which returns the results of
$R->CONFIG to a template.
* OpenInteract/Template/Process.pm:
- Properly catch when we weren't passed content.
* script/oi_manage:
- Enable a file in the $WEBSITE_DIR/template directory to specify
which templates oi_manage should never overwrite during a
'refresh_widget' command. (This file is created when you create a
website to include the base_main and base_simple templates.)
- Don't test for 'VERSION' anymore when doing an upgrade, since the
version is now pulled from OpenInteract.pm
- When creating a new website, mark in .no_overwrite the
html/index.html file so it won't be overwritten by package
upgrades. Also mark the template/base_main and template/base_simple
files.
- When installing SQL, call OI::Startup->create_temp_lib() directly;
other actions that use the full OI environment don't have to do this
because it's called in setup_static_environment(), which we can't do
when installing SQL due to bootstrapping issues.
* template/base_(main|simple):
- Moved the base template and the base 'simple' template (for
popups and such) from the 'base_theme' package to the server
root. That way they will not get overwritten every time you update
the package.
* template/error_(not_found|task_forbidden|task_no_default):
- Moved these error messages from the base_error package to the
global template directory so they're easier to customize for your
site.
* template/*:
- Other widget template files had changes too minor to note here.
Packages changed:
OpenInteract 1.30 -> 1.35
----------------------------
base: 1.62 -> 1.63
base_box: 0.33 -> 0.41
base_component: 1.30 -> 1.30
base_error: 1.32 -> 1.37
base_group: 1.26 -> 1.30
base_page: n/a -> 0.40
base_security: 1.51 -> 1.53
base_template: 1.27 -> 1.27
base_theme: 1.27 -> 1.29
base_user: 1.37 -> 1.45
lookup: 0.15 -> 0.18
object_activity: n/a -> 0.10
results_manage: 0.05 -> 0.06
system_doc: 1.25 -> 1.28
classified: 1.28 -> 1.32
full_text: 1.27 -> 1.30
news: 1.33 -> 1.33
static_page: 1.51 -> 1.52
1.30 Mon Oct 15 01:35:03 EDT 2001
Overall:
* New Class: OpenInteract::CommonHandler
- Common web apps (search form, search, display, edit, remove) can
now be reduced to a series of configuration steps and templates
while still allowing for custom behavior. This makes for very
maintainable code and rapid development. See the 'classified'
package for an example that uses it.
* Custom template behaviors:
- It's now simple to define custom template behaviors across all
templates in a website. A package can define plugins or blocks via
its configuration. And a website can also step in make variables
available to every template.
* Template performace:
- Templates are now cached properly, and by default they're
( run in 1.622 second using v1.01-cache-2.11-cpan-364913b4093 )