Convert z3c.form field desc. to tooltip

Let's say you have a typical form with some input fields. By default z3c.form displays a description (if provided in form definition) above each form field, like in the screenshot below for example: Sometimes however, you might want to make things a little bit different. Perhaps you want to save some screen space by hiding field descriptions, but still want…

How to change element’s ID with Diazo?

A common scenario: on your website all subpages share a common header, but you want a different header on the front page. Let's say you differentiate between both header versions by their ID attribute and define two different sets of CSS rules for each version. When applying Diazo rules to a theme file, you therefore need to change header element's…

Robot on Travis – uploading results to S3

This is a walkthrough of how one could upload to Amazon S3 screenshots and other output files produced by Robot framework ran in a Travis CI build. The reason why we want to do this is to be able to inspect what Robot sees and have more information when a test fails. It's written with some things specific to Plone development,…

10 days to sprint in Antwerp!

The Belgian Beer Sprint is nearing ever so closer! Only a bit over a week is left until we start this year's EESTEC Plone sprint. Like last years we invited Electrical Engineering students from around Europe for a week-long introduction to Plone. In the meantime we will have members of the Plone community sprinting on various sprint topics, mostly oriented…

Testing log output

ATTRIBUTION: This post was inspired by Domen's Mocking logging module for unittests post back from 2009. Most of the code below is from him, with some added Plone specific bits and pieces. I was recently debugging an installation of our niteoweb.click2sell and had the need for more verbose error handling. After adding support for it in the code I wondered…

Fixing unresolved dependencies error

For a while now we've been getting the following errors on one of our sites: WARNING GenericSetup There are unresolved or circular dependencies. Graphviz diagram:: digraph dependencies {"typeinfo" -> "toolset"; "tinymce_settings" -> "componentregistry"; "transmogrifier" -> "toolset"; "kss_mimetype" -> "mimetypes-registry-various"; "pleonformgen" -> "toolset"; "pleonformgen" -> "propertiestool"; "pleonformgen" -> "typeinfo"; "atcttool" -> "catalog"; "atcttool" -> "componentregistry"; "actions" -> "componentregistry"; [snip] Apparently they…

OpenVPN over SSH

Prelude I've recently moved to Barcelona to continue my Computer Science studies on UB. First thing I noticed walking into the University building was my mobile happily notifying me that it has found a known network. Ah, of course: eduroam. My Slovenian eduroam account from University of Ljubljana should be valid throughout Europe for accessing the eduroam wireless network. And…

Professional Plone 4 development review

Short summary If you are doing Plone 4 development, go buy this book. Now. Some background I started working with Plone in 2006. Back then I was really just beggining with development in general and did not know how to do things properly. I only knew how to tweak some templates and to use ArchGenXML to generate some content types.…

Plone 4 dev on Lion

Introduction Recently I upgraded to OS X Lion and here are my notes on how I got my working environment working. XCode First things first, you need to setup build tools (gcc, make and the like). On OS X these come as a part of XCode. Even if you had XCode installed on Snow Leaopard before upgrading to Lion, do…