Browsers and Standards
After much work, the site is now XHTML 1.0 Strict compliant, and works with IE 7, Safari, Konqueror, Opera, and, of course, Firefox.
For browsers that support xhtml (Firefox and Opera), the xhtml is served as-is. For all others, it is rendered as HTML 4.01. It seemed the only way to get similar results on all of the tested browsers, and yet still be standards compliant.
I've added the W3C XHTML buttons to the bottom of the page.
One thing I still haven't tried is to serve XHTML to Safari. Currently, I'm sending HTML 4, because it uses (mostly) the same rendering engine as Konqueror, so I assumed that it would not handle XHTML. When I have a chance, I'll try it. If it works, I'll change the default for Safari.
Refactored
The new version of the code is online now. The new system uses XSL for the template system, rather than a home-brew template engine. The result is that some of the things that were difficult before are now easy.
Also, the new wiki text parser is online. This version fixes several problems with special tags that were present in the original parser.
File Downloads
File downloads have been implemented. The full admin interface is complete, and the ability to embed file download entries in wikitext is implemented. This allows for customized download pages.
I will also be implementing a more general download area which pulls from the file list directly. It will be themeable, but there will be less control over the page layout.
Virtual Hosting Implement
Virtual hosting is now implemented, and it is now possible for administrators to create virtual hosts, which they then own. Allowing users to do the same is coming soon.
Styling is now divided into two style sheets. one which provides the layout, and another which provides colors and borders. Eventually, there will be several layouts to choose from.
Images, Headers, and Footers
Administrators can now upload images, which can be referenced from wikitext.
The header and footer are now also generated using wikitext, so they are completely customizable.