Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

pypm install themetweaker.themeswitcher

How to install themetweaker.themeswitcher

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install themetweaker.themeswitcher
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
1.0 Available View build log
Windows (64-bit)
1.0 Available View build log
Mac OS X (10.5+)
1.0 Available View build log
Linux (32-bit)
1.0 Available View build log
Linux (64-bit)
1.0 Available View build log
Lastest release
version 1.0 on Jan 5th, 2011

themetweaker.themeswitcher Package


A product for switching themes on folders (ATFolder and ATBTreeFolder) in Plone.

Author: WebLion Group, Penn State University.


  • plone: 3.1+
Using ThemeSwitcher

With quickinstaller installation:

Each folder will have a ThemeSwitcher tab that will bring up the switcher form. Here you will be able to choose from a list of installed themes.

Without quickinstaller installation:

Same as with installation except, you will need to manually type the switcher form path. e.g. http://localhost:8080/plonesite/folder1/switcherform, because the actions tabs have not been installed.


Contact WebLion at support@weblion.psu.edu, or visit our IRC channel: #weblion on freenode.net.

Bug reports at http://weblion.psu.edu/trac/weblion/newticket

To Do List (for developers)
  • TODO (esteel, pumazi) use gloworm to change viewlet ordering on the subfolder basis [requires that each subfolder have a viewletsettingsstorage (via localconf?)]
  • rename to collective.themeswitcher and release into the collective

themetweaker.themeswitcher Installation

To install themetweaker.themeswitcher into the global Python environment (or a workingenv), using a traditional Zope 2 instance, you can do this:

  • When you're reading this you have probably already run easy_install themetweaker.themeswitcher. Find out how to install setuptools (and EasyInstall) here: http://peak.telecommunity.com/DevCenter/EasyInstall

  • Create a file called themetweaker.themeswitcher-configure.zcml in the /path/to/instance/etc/package-includes directory. The file should only contain this:

    System Message: WARNING/2 (<string>, line 52)

    Literal block expected; none found.

<include package="themetweaker.themeswitcher" />

Alternatively, if you are using zc.buildout and the plone.recipe.zope2instance recipe to manage your project, you can do this:

  • Add themetweaker.themeswitcher to the list of eggs to install, e.g.:

    System Message: WARNING/2 (<string>, line 60)

    Literal block expected; none found.

[buildout] ... eggs = themetweaker.themeswitcher

  • Tell the plone.recipe.zope2instance recipe to install a ZCML slug:

    System Message: WARNING/2 (<string>, line 66)

    Literal block expected; none found.

[instance] recipe = plone.recipe.zope2instance ... zcml = themetweaker.themeswitcher themetweaker.themeswitcher-overrides sd.common

  • Re-run buildout, e.g. with:

    System Message: WARNING/2 (<string>, line 76)

    Literal block expected; none found.

$ ./bin/buildout

You can skip the ZCML slug if you are going to explicitly include the package from another package's configure.zcml file.

Installing ThemeSwitcher in plone through quickinstaller is not all together necessary. At this point it only gives you an actions tab on your folders. Everything else is zcml declared.


1.0 (2010-09-27)
  • Remove sd.common dependency [erico_andrei]
0.9b2 - (2009-07-10)
  • Fix up docs and release again

System Message: WARNING/2 (<string>, line 97)

Bullet list ends without a blank line; unexpected unindent.


0.9b1 - (2009-07-10)
  • Hooked up uninstall profile

System Message: WARNING/2 (<string>, line 103)

Bullet list ends without a blank line; unexpected unindent.


  • Major renovation of the traversal machinery that no longer needs

System Message: WARNING/2 (<string>, line 106)

Bullet list ends without a blank line; unexpected unindent.

to support the browserlayer. Now everything is based on skins. [claytron]

  • Cleaned up the tests to cover more scenarios

System Message: WARNING/2 (<string>, line 110)

Bullet list ends without a blank line; unexpected unindent.


  • Cleaned up the README to reflect latest changes

System Message: WARNING/2 (<string>, line 113)

Bullet list ends without a blank line; unexpected unindent.


  • Fixed up buildout so that package tests can be run

$ cd /path/to/themetweaker.themeswitcher $ python2.4 bootstrap.py $ bin/buildout $ bin/test

This will make running the tests easier [claytron]

0.8.7b2 - Beta Released
  • Moved the release to beta status
  • Touched up the README.txt
  • Added a MANIFEST.in to the package
0.8.7b1 - Beta Released
  • Added unit tests and doctests
  • Added 'Large Plone Folder' support
  • Fixed ticket #1030
  • Restructured the package
  • Refactored the text documents to strictly use reStructuredText.
  • Tidying up a bit. Added an Uninstall profile with actions.xml to remove the themeswitcher tab.
0.8.6a2 - Alpha Released
  • Added an enable/disable checkbox to the switcher form
  • ThemeSwitcher now cleans up after itself (annotations are removed from the object)
  • Traverser adapter now adapts IThemeSwitcher rather than IContentish
0.8.6a1 - Alpha Released
  • ThemeSwitcher first pypi release.
0.8.6 - Unreleased
  • ThemeSwitcher switches by folders rather than URL.
0.8 - Unreleased
  • Initial release.

Subscribe to package updates

Last updated Jan 5th, 2011

Download Stats

Last month:1

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.