Revision 4 as of 2007-05-03 15:45:42

Clear message

As a first step before adding full templating, the existing pages can be restyled to use CSS and to look more up-to-date.

Goals

  • Avoid using tables for layout.
  • Make pages look more modern.
  • Add a stylesheet URL setting, and use it when generating HTML output.

OPEN: is the stylesheet URL a list-specific or site-wide setting?

OPEN: where does the default stylesheet live? Is there a suitable static directory created by installing mailman?

OPEN: Allow embedding style directives in the output HTML?

CSS requirements

  • the bits of the template which define <head>, <body> etc. are defined in one pair of header and footer files, so they can be turned off easily;

  • the CSS files "namespace" everything by placing all Mailman content within a div, e.g. <div id="mailman">...</div> and then prefix all CSS rules with "#mailman" - this stops the Mailman styles from leaking out into the parent page elements.

Places to change

  • The HTML templates in templates/.
  • MailMan.HTMLFormatter

  • The CGI scripts in MailMan/Cgi (they use htmlformat.Table all over the place).

Templates

Particular changes to each template are recorded below.

For all templates:

  • Lowercase all HTML tags.
  • Wrap entire <body> inside <div id="mailman">...</div>.

  • Update the DOCTYPE declaration (to HTML 4.0?)
  • Check validity of generated pages

admindbdetails.html

admindbpreamble.html

admindbsummary.html

admlogin.html

archidxentry.html

archidxfoot.html

archidxhead.html

archlistend.html

archliststart.html

archtocentry.html

archtoc.html

  • Wrap archive listing with a <div>

archtocnombox.html

  • Wrap archive listing with a <div>

  • OPEN: Merge this with archtoc by using a 'display:ignore' around the link to the raw archive?

article.html

  • Add class=subject, author, date
  • Wrap body with a <div class="message">

  • Wrap "More information" with a <div class="?">.

  • OPEN: wrap the links to the various indexes with a special class?

emptyarchive.html

No specific changes.

headfoot.html

listinfo.html

options.html

private.html

roster.html

subscribe.html