View · Index

Theme Manager

  • Last modification: 2008-08-28 00:41:12.759871+02
  • Status: DRAFT

What others do 

"theme" and "skin" are often used in the same way. Traditionally a "theme" is a set of icons and/or widgets, "skin" is a color scheme. The combination of the two provides look&feel.

The common way to handle themes is to upload a zip files containing the resources that will be unzip into a specific directory of the site structure. The theme usually contains:

  • a configuration file
  • a collection of stylesheets
  • a collection of icons
  • a pair of templates: header and footer

Resources for specific modules are structured into directories. 


<holycow> for joomla 1.0.x it was an xml file plus resource files which were php/html + images + css and you just upload them to a dir and click it on



 Themes can be set at different level:

  • Site: applied to all pages
  • User: applied to all pages, overrides the site one if set in user profile
  • Session: applied to all pages, overrides the site and user one
  • Course: applied on the course, overrides site, user and session one for the course only. set in the course profile

The priority of the themes can be set/changed using a variable of the configuration.

The theme can be defined as being a "stand-alone" one or extending another one



What is an acs-theme?

References are based on OpenACS version 5.4.2 and early 5.5.0d 

In OpenACS context, a "theme" can be defined as a composition of:

  • templates: for the organization of the information
  • stylesheets: for layout and skinning
  • icons: graphic representation of common actions and entities (see acs-kernel.common_* message keys)
  • widgets: WYSIWYG HTML editor ???


This is a list of the templates that can be set using parameters: 

  • master template: acs-subsite, section Main
    • DefaultMaster
  • list template:
    • acs-templating, section Main:
      • DefaultListFilterStyle (misnamed since it's not a style but a template)
      • DefaultListStyle
    • acs-subsite, section Main
      • DefaultListStyle
  • form template:
    • acs-templating, section Main
      • DefaultFormStyle
    • acs-subsite, section Main
      • DefaultFormStyle
  • others:
    • acs-subsite, section Templates
      • LoginTemplate
      • UserHomeTemplate
      • UserInfoTemplate
      • UserNewTemplate
    • acs-subsite, section Main
      • EmailConfirmTemplate


Currently stylesheets are hard-coded. A few individual applications (e.g. calendar, forums) have their  own stylesheets.


Same. Icons are hard-coded. 


The HTML editor is set in acs-templating using the following parameters:

  • RichTextEditor
  • XinhaDefaultPlugins


Facebook-like site (holycow) - per subsite

Users with specific needs - per user


*** ROUGH DRAFT of random ideas ***

- managing icons relies on a strict convention for paths and filenames

- a theme can be an extension of an existing one (default one or not), e.g.: high contrast
- a theme can be a "stand-alone" one

- should be able to specify CSS and their order
- should be able to specify the type of the CSSs (alternate or not) and others attributes (media)

- a package should be able to register its individual CSS for one theme

- a skin can be paired to a theme, in this case it should include the image directory with the icons files.

- the theme can be chosen at subsite level
- user must be able to choose her theme, in this case it overrides the subsite one

- theme-manager should provide or comes along with a default theme 


previous April 2024
Sun Mon Tue Wed Thu Fri Sat
31 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 1 2 3 4

Popular tags

17 , 5.10 , 5.10.0 , 5.9.0 , 5.9.1 , ad_form , ADP , ajax , aolserver , asynchronous , bgdelivery , bootstrap , bugtracker , CentOS , COMET , compatibility , CSP , CSRF , cvs , debian , docker , docker-compose , emacs , engineering-standards , exec , fedora , FreeBSD , guidelines , host-node-map , hstore
No registered users in community xowiki
in last 30 minutes