Let's make our lives simple and say that any templated html file must include its own html armor (and thus will be HeadlessDocument() based), while all non-templated script-generated ones will be Document() based to get the standard header and footers.
If you agree, I can start fixing the web ui to conform to this rule.
I certainly agree with that. In fact, right now I am in the process of hacking together a custom ui for MM2 which, I am surprised to find, is much harder than I imagined. One problem that I have is that somtimes funny things will happen inside the <MM-...> tags. Some tags leave white space after themselves, and I can't really control the presentation of the content inside of the tags (i.e. font, size, etc) directly, often I have to wrap them in a container.
I wonder if there might be some way to pull these <MM-...> tags out of the source and stick them into a library of some sort that you can sustomize for each list. I know this would probabbly mean quite a lot of work, but think of how cool that would be. ;) You could have the configuration program modify the text in the libraries for less advanced users and for more hardcore hackers they can edit the XML/HTML themselves.
If you're interested to see how far I've gotten, the mailing list I'm working on (for my summer job) is available at http://www.gilbertwalker.com/mailman/listinfo/advisorbits. Assuming I haven't broken it again it should still be up. But, you will notice that there are still many error messages which I cannot touch the HTML for. :/
Oh yeah, one other idea I had (this really pertains to my particular site architecture) is that it would be incredibly convenient to have a customizable page header and footer that could be called via an <MM-...> tag that you could wrap any sort of content in. Sort of like making HeadlessDocument() customizable I guess.
Thanks for all your help!
- jim.
James Dinan <james@gilbertwalker.com> Gilbert Walker Group: Lenox, MA U.S.A Available: http://www.gilbertwalker.com
This is certainly one of the problems, which will affect any Document()-based web page. However, Thomas is also right that any page that is generated from a template (e.g. subscribe.html) either must not include the header stuff, or must use a HeadlessDocument(). Fixing this is going to take a bit of grunt work, especially if we want to allow the html templates to go either way.
The more I think about the web ui, the more certain I am that we need
api's so sites can supply any web ui they want, with adaptors for the Mailman "classic" ui.
Mailman's classic ui should be based on something like Zope's Presentation Templates (ZPT). My understanding is that these will /not/ require sucking in all of Zope (i.e. they can be used standalone), they are quite powerful, and allow for html editing to live nicely with script specialization. There's the little matter of ZPL/GPL incompatibility that's currently holding me back from investigating this avenue further.
-Barry