Forum OpenACS Improvement Proposals (TIPs): TIP #123: (Approved) Simple subsite theming

In 5.3, we took the first step towards rationalizing master templates and CSS in OpenACS through the implementation of the template::head API and partial adoption of the .LRN "theme zen" CSS class structure.

I've finished up the latter work for HEAD/5.5. I've done further work to make it easier to customize an OpenACS installation or subsite, and that is the subject of this TIP.

1. Move the available "themes" from a hard-wired list buried in acs-subsite/tcl to a simple DB table.

2. Break out the default css and master into its own package, openacs-default-theme. Make this be the default for new subsites (including the one mounted at "/" during initial install). The effect of this is to leave current sites alone (as they most likely have their own custom theme already), while setting up the new master as the site theme for a new install.

3. Get rid of site-master, moving the minimal stuff there into default-master for the default theme.

4. Add a CSS parameter to acs-subsite (this makes it simple to add a new theme that uses the existing default master template but replaces the default CSS).

5. The old tabbed master had its tab options hard-wired into acs-subsite/tcl procs, which is terrible. I've written new tab generation code which is driven by acs-subsite package parameters. This makes it easy to customize the tabs that are displayed, on a per-subsite basis.

6. Tabs now use theme zen CSS and build on the work done by Lee for 5.3.

7. The old default and tabbed themes are still available as "obsolete plain" and "obsolete tabbed" themes, but should disappear in some future release.

That's about it. We discussed this in this week's OCT meeting so check the log if you have questions.

This work is already done and just awaits approval and commit on HEAD (to appear in 5.5)

Collapse
Posted by Dave Bauer on
Approved
Collapse
Posted by Emmanuelle Raffenne on
I approve.

We want to be sure that the obsolete stuff will disappear at some point, adding that to the to-do wiki page will remind us (https://openacs.org/xowiki/openacs-todo).

Collapse
Posted by Rocael Hernández Rizzardini on
approved, very good improvements!