[Mailman-Developers] HTML Issue

Barry A. Warsaw barry@digicool.com
Mon, 25 Jun 2001 16:03:17 -0400

>>>>> "TW" == Thomas Wouters <thomas@xs4all.net> writes:

    TW> On Mon, Jun 25, 2001 at 10:49:27AM -0700, James Dinan wrote:

    TW> Yes. This is an open bug, and an old one. It still requires a
    TW> Pronouncement from Barry. The problem is that Mailman creates
    TW> a HTMLgen Document instead of a HeadlessDocument, for the list
    TW> page. From the top of my head the fix is to change

    TW> doc = Document()

    TW> into

    TW> doc = HeadlessDocument()

    TW> in Mailman/Cgi/listinfo.py, function listinfo_overview(). I
    TW> believe Barry is reluctant to fix it because of possible
    TW> breakage (people might have made template files with the
    TW> (Headfull)Document in mind.) Barry ? :)

Well, with MM2.1 I'm certainly less concerned about any theoretical
breakages, especially since changing this will probably accomplish
exactly the opposite! :)

>>>>> "TFH" == Tollef Fog Heen <tollef@add.no> writes:

    TFH> ok, first, we append '<body' to the output.  then we run in a
    TFH> little loop, before we append another <body> with any
    TFH> arguments.  I raised the problem on April 16th, and you told
    TFH> me about the headless problem, but just commenting out

    TFH> output.append('%s<BODY' % tab)

    TFH> has worked fine for me (and any users of Mailman on Debian).

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.

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.

The more I think about the web ui, the more certain I am that we need

1) api's so sites can supply any web ui they want, with adaptors for
   the Mailman "classic" ui.

2) 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.