Goodbye MOO welcome POODLE WCMS!

Some already know about MOO CMS and what the cvs sources are all about. It is dynamic fast and full of libraries.

However, after extending and integrating in some websites I also found its limitations and lack of dynamics. So, with my 10 years of PHP webdevelopment experience i've decided to stop this project in its beta stage (of 5 years) and start over (without abandoning all sources).

The new project name is POODLE WCMS (PHP Object Oriented Dynamic Libraries Extended Web Content Management System).
What a WCMS is all about can be read at Wikipedia.

Resources

After reading and learning about the WebDAV principles i found out that MOO CMS is almost identical and that WebDAV would be the conform way to design a system instead of keeping a similar system. By using WebDAV it can extend in any way someone wants and be better organized then currently is available in MOO.
The difference is that MOO had "pages" while WebDAV talks about "Resources" where a resource can be anything (graphic, document, html page, iCAL calendar object, etc.).

POODLE will have a table with "Resource Types" to identify each resource. A resource type can be anything from a comment to a html document and either a visible or hidden type.

example

There can be resource types like: user, vcalendar, vtodo, comment
A vcalendar resource is a child of a user, indicating it is a calendar of user "Stimpy".
Inside the vcalendar it has some vtodo resources indicating "Stimpy" has some things todo.
Each vtodo may have comments from "Stimpy" or any other user
Each resource type has a mime type to identify the kind of content. Basic content types would be: XML, XHTML and Text.

Dynamic Library Extending

Thanks to PHP5's autoloading system it is easy to load libraries and classes on-demand.
My current source supports Poodle, Zend and Pear libraries which makes it very extensible.

ECMAScript + DOM

POODLE will become available with its own JavaScript framework in KISS principle.
It mainly fixes Webbrowsers lack of: It extends any web page with:

Template system?

Yes, there is. It's based on Zope's TAL (Template Attribute Language) and parts of XSLT.

It is not PHPTAL. Instead, it uses the PHP XML parser and some code to handle the TAL attributes.
By using the XML parser the markup language code is checked to make sure that it is valid.
You may even load a DTD list to report deprecated tags and deprecated/unknown/missing attributes.

Some XSLT tags are supported, currently they are: choose, for-each, if, otherwise, value-of and when.
Why? Well, some people are familiar with TAL and others with XSLT.

No other scheme is supported untill they are properly found by the XML parser.
For example, phpBB won't work as it uses <!-- COMMAND --> which is dropped at parsing.

Learning curve for programmers?

KISS: If you know PHP you know POODLE!

With that said i will explain it a bit... Due to this kind of object extending you don't need to learn new methods and ways to do the same task as you normaly did. The only difference is that you do the task thru objects.

When available?

I still have to write a good documentation how the system will finally work and resolve the glitches. When that is ready the actual building of the system will start.

(c) 2009 - DJ Maze