MidCOM 2.5.1 released
Posted on 2005-09-13 16:08:31 CEST.
GĂNZBURG -- The Midgard Project has released version 2.5.1 of MidCOM - the Midgard Components Framework. MidCOM is a PHP-based component framework for the Midgard Content Management System. This is the second development release of the Midgard Schema driven version of MidCOM.
MidCOM is the default Content Management interface in Midgard
CMS, and provides developers a production-proven architecture
for building new web applications. With the MidCOM framework
PHP applications have powerful localization, configuration,
templating and data abstraction features.
This release requires Midgard 1.7.1 and PHP 4.3. It is strongly
recommended to skim over the MidCOM 2.6 technical notes both
on my own website and in the new
Documentation Wiki. To get MidCOM 2.5 running you need to
make updates to your database, which are outlined in the
MidCOM 2.5 Database update changelog, which you should
monitor.
Be warned: The
development branch is stil under very heavy development, use it
at your own risk. This release is not in any shape that you can
safely use in productive environments. Especially, several
parts of it are no longer data compatible to MidCOM 2.4 due to
the new Access Control mechanisms, and there is no update
script yet.
Noteworthy changes since the 2.4 release branch, chages since
the
2.5.0 release are marked in italics:
- AIS / Aegir
-
- New special Aegir style of AIS
- Ais now uses divs+css instead of tables.
- Authentication / Access Control
-
- Added a full scale Access Control List system as
outlined in mRFC
- Added a MidCOM driven user/group framework.
- Added support for component-defined "virtual" groups. This requires changes to the database structure as outlined in the release notes (to be written, see also the Technical Note Database Update).
- Added a full scale Access Control List system as
outlined in mRFC
- Core
-
- Moved to use the new $_MIDCOM autoglobal, deprecating $GLOBALS['midcom']. Be aware that you can therefore no longer construct references to this global variable due to some PHP limitations. Rewrite constructs like $this->_midcom =& $GLOBALS['midcom']; to use the $_MIDCOM autoglobal instead.
- Added support for automatically instantinated classes to the request base classes. This introduced a new base class as well.
- Added support for skipping the page style during the handle phase, mainly targeted for RSS feed and the like. Set $GLOBALS['midcom']->skip_page_style to true to enable this behavoir during the handle phase of your component. Will only be checked for context 0 requests, not dynamic_load runs.
- All error pages except the Internal Server Error have been made customizable as outlined in http://www.midgard-project.org/midcom-permalink-c5e99db3cfbb779f1108eff19d262a7c
- Moved the Permalink system into its own service to avoid the requirement of having all Permalink-reachable URLs in NAP (for performance reasons). All subsystems which generate or resolve permalinks have been adapted to use the new system, see the individual component changelogs for information whether you components already make use of this feature.
- The component loader now depends on a component manifest which provides metadata about the component itself. This will allow the processing of Privileges, Classes etc. without loading the full component.
- Introduced a temporary system to accociate a permalink and a last modified timestamp with a context. This will be superseeded with a full request rewrite after the release of MidCOM 2.6.
- Database Abstraction Layer
-
- Introduced a complete database abstraction layer. It provides a full layer between the Midgard core and MidCOM and its components. Be aware that the usage of this layer is mandatory in post-2.6 MidCOM versions, MidCOM 2.6 will be the ONLY transition version in this respect. The interface classes are automatically built using a class loader service, which creates stub classes in a J2EE like way.
- Datamanager
-
- The end_fieldgroup tag can now close multiple fieldgroups at once.
- An integer datatype has been added.
- The Midgard object update has been optimized to run only once.
- I18N
-
- Added a shortcut to the i18n class to translate l10n string ids. See the midcom_services_i18n::get_string().
- Components
-
- Several components have been changed to use the DBA layer instead of regular MidCOM functions.
-
- de.linkm.taviewer:
-
- The taviewer has been rewritten to completly use the new features MidCOM 2.6 provides.
- More of the extensive changes have yet to be
compiled.
MidCOM 2.5.1 can be downloaded from:
http://www.midgard-project.org/development/projects/midcom/download/2.5.html
More information from the Midgard Components Framework:
http://www.midgard-project.org/developm
ent/projects/midcom/
MidCOM is part of Midgard CMS. Midgard CMS is a reliable Open
Source Content Management system built on the Midgard Framework
for Unix operating systems. It provides users with lots of
benefits including scalability, internationalization and rapid
deployment. Features include web-based authoring WYSIWYG
interfaces and powerful replication system.
More information about Midgard: http://www.midgard-project.org/
Torben Nehmer, MidCOM lead developer
