On move for Lyon and Plone


I leave Alterway two monthes ago for Quadra Informatique. It is a  more generic service company that choose Plone 4 years ago, and more recently Magento. They not seemed to be very active in the  community for now because they mainly proposed patches and features inside existing products more than creating their own products. They have some good products in their boxes and we prepare some official releases for September and others for the end of the year. These projects will be released under Cecil-B license (http://www.cecill.info/licences.en.html) a BSD-like license.

I will not only developping with Plone for them… and I’m leaving Paris this week to go in Lyon. The goal is  to develop Zope/Plone as a local company in this city that choosed Zope/CPS to develop their website some years ago. For some problems that only french telecom legislation can create I will not have a regular network connexion until the end of August.

Have a good vacation and see you in September.

How to hide a column in CPS with CPSSkins


Since few weeks I went back in CPS to make maintenance on it. I was a CPS core developper, three years ago…
I’m customing a CPS theme with CPSSkins. It could be a very cool product if a documentation exists.
It was so in advanced on web2.0 that only few people really used it outside its main developper and Nuxeo team.

It’s the first article on CPS and not the last one.

a quick recipe to explain how to hide a skin in a part of your site

The goal is to hide the right column when the ‘projects_results’ template is used

  1. login with site Manager rights
  2. in the portal box cloick on ‘Edit themes’
  3. duplicate ‘Fille’ page and named it ‘SansColonne’
  4. switch to layout mode
  5. set column number to 1 in the main block
  6. go in the ZMI on the site root and edit the .cpsskins_theme script with the following code
theme_id = 'mysitetheme'

if REQUEST is None:
    REQUEST = context.REQUEST

if not context.portal_membership.isAnonymousUser():
    return '%s+Authenticated' % theme_id
elif REQUEST.get('PUBLISHED').getId() == 'index_html':
    return '%s+HomePage' % theme_id
elif REQUEST.get('URL').endswith('projects_results'):
    return '%s+SansColonne' % theme_id
else:
    return '%s+Fille' % theme_id