chris's blog

Doesn't Play Nicely - Drupal presentation @ DrupalSouth Wellington 2010

"Doesn't Play Nicely" is a presentation given at DrupalSouth Wellington 2010.

Providing technical support to Drupal developers and implementors, there are plenty of examples of module conflicts you get to see. I decided to throw together a handful of examples in order to stimulate some reflection amongst the developers in the audience could help avoid such conflicts in the future.

Path-based access control issues in Subversion - a tip

I'd been accessing Subversion fine by both HTTP (apache2) and SSH until today, when I had a need to restrict a user to a specific directory. Following the config at http://svnbook.red-bean.com/en/1.4/svn.serverconfig.pathbasedauthz.html I got it set up, but I experienced a strange issue where requests for the specific directory were rejected with a 403 access denied to the OPTIONS request.

If I used a path directive like [reponame:/] it worked as expected. If I used a path directive like [/] it worked as expected.

OpenSolaris 2008.11 on VMWare - fixing font issues / console corruption on boot

I was testing out OpenSolaris 2008.11 on VMWare (installed on VMWare Fusion 2.0 for OSX). While the LiveCD runs fine, doing an installation to VM results in a machine which boots to a corrupted console and fails to launch X11.

The fix is pretty simple, though, although you need to type fast!

Boot your new VM and select the text console mode. This will still try to launch X11, but it will give you a few seconds to fix the problem.

As soon as you see the login prompt, do the following steps - type fast now:

Apache SSL - "Init: Private key not found"

When configuring Apache2 + SSL, you might experience the following error:

[error] Init: Private key not found

JS Error Logger for Drupal5 pre-release

This is a pre-release of a Drupal 5 module which allows you to record JavaScript errors from visitors either to the Drupal log, or (if you're really keen to hear about it!) have immediate notifications sent by email.

On the Paper Fish website, we use jCarousel to display a carousel of similar products. It works really well, but for some Safari users it gave a strange error, which was proving hard to reproduce on our test machines. In order to leverage the users visiting the site in order to test the system more completely, we produced this module.

Question Captcha - pre-release available for download

We had a need for a Drupal module which would add a customisable user registration question - this is to allow the owner of a book to register for additional features on the associated website.

In order to make this as widely useful as possible, we've implemented it as a CAPTCHA plugin, so that any Drupal form can take advantage of the functionality. You'll need to have the

This is an early release of the code - it's working for us, but we welcome any feedback from the community.

Modified version of CiviCRM_Error module for Drupal

Attached is a copy of civicrm_error.module 1.1 for Drupal 5, modified to give slightly more readable output by email and also log via watchdog.

Thanks to Advomatic for the excellent tool!

Drupal5/CiviCRM2.x civicrm_error.module

LoginToboggan and passphrase (drupal patch)

LoginToboggan, a Drupal module which adds lots of useful features for login management, has for a long time prevented the use of spaces in passwords. A user on one of our high-profile sites drew this to our attention, and the resulting patch has been accepted into the next releases of LoginToboggan for Drupal 5, 6 and 7.

Yay! Thanks to Simon for bringing the issue to light.

SilverStripe ponderings / meetup in AK

Have been meaning to check out SilverStripe in more depth since the presentation at BCA a month or two back. It looks really good, but as with all new tools there's a lead time in getting familiar, and so you tend to stick to your familiar toolkit by default.

Project Ladybird - building an accessible assistive speech device

Assistive speech devices enable non-verbal people to communicate more easily by allowing them to quickly build a sentence by choosing from a graphical vocabulary and then synthesising speech output. Project Ladybird (internal name!) aims to make available a fully open-source assistive speech device which offers a friendly and flexible  interface on highly available hardware.

Syndicate content