After lots of testing and versions I am finally going to make an initial attempt at utilizing my Object Model Array (OMA) and a application controller I specifically wrote for generic web based administration UIs, in PHP of course!
The first use is a simple admin for my PHP replication of JSP call Xpc (eXtensible Page Creation).
This minimal web admin UI for Xpc will have a secure login, allow for the management of the URI object based templates (add, edt, delete...), and the management of the PHP class components (add, edt, delete...).
I'm sure you can imagine the OMA already:
The design will be one of these:
The templating parser and other templating classes for the admin is new and it will not use the Xpc templating schema.
It will be using a much simpler template parser as well as its own template compiler, a template layout control class, a template sets (themes) class...
I also need to write a new compiler for the Document Objects in PHPortal. Document Objects use my same tag parser class as Xpc and the Method Object does but it uses different tools for interpretation. Since the Document is a Object contianer it can recursivley call other PHPortal URI objects, therefore its compiled state must keep that in mind as well as all of its other allowed tags, eegads!
As a matter of fact I will NOT be creating a Document Object compiler until all of its allowed functionality is slowly removed or simplified. As of now you can use Documents as templates, object containers and more, this is not good and most of this should be removed. It should not be allowed to contain template tags (meaning curly braces vars and dynamic macro blocks). Only a template object should. A Documetn Object should only allow and only interpret <XPC:VAR name="attr"/> and <XPC:ObjectName arg1name="arg1val" />. So, this last bit will be on the back burner for now.
PHPortal now allow spaces in arguments and Object names to be called by Xpc reference tags inline by using the space urlencoding of 20%. Suits it well since PHPortal Objects are URIs. Except, calling them inline allows for greater flex.
Heres a noticable trend or action flow:
Create text Template, parse template, compile template, convert compiled template into binary, convert and execute binary. Thats alotta work but all are important stages.
Client Python UIs here I come!