False assumptions with MySQL

I spent far too much time this past week trying to find out why a Drupal was not  assigning authenticated user permissions to users who clicked on the validation link they were emailed. Instead, it would simply remove the temporary unverified user permission.

It's supposed to do the latter, but then also follow it up with the former. It turns out the problem was a Drupal bug that was triggered by my MySQL setup.

Drupal and transient MySQL errors

A while ago Arjen Lentz blogged about transient MySQL errors that can occur when using a transactional storage engine, like say InnoDB.

Error: No error occurred.Since I'm a fan of the reliability and automated recovery that InnoDB provides, I use it for all the Drupals that I host.  However, on a very busy site, this may lead to deadlocks. These in turn lead to users seeing errors, which is something I'd like to avoid. Especially if the error could be prevented.

Drupal Twitter Module

James Purser from Collaborynth mentioned earlier today that it would be great if the twitter module for Drupal could magically add hash tags (I assume based on node taxonomy terms).

I've also been wanting it to be able to include the node type, so that book reviews on the LUV website don't get announced as 'New post'. With thanks to lyricnz on freenode for the right api call and Josh Hesketh for a non-ugly taxonomy fix.

Drupal Events Display

Many community websites run Drupal and use the event module to maintain a calendar of events that they organise or that are of relevance to their members.  I help maintain the website for two such organisations, Linux Australia and LUV.

The event module has one slight drawback, it displays the number of hours, days, weeks or months remaining until an event.

mediawiki with drupal authentication

In the past few years I've set up and used MediaWikis for various open source related activities, for instance linux.conf.au 2008 and Linux Users of Victoria. Both of these would be prime targets for wikispam if anyone could anonymously edit pages on them, so edit privileges are limited to registered users only.

drupal webforms and recaptcha

One of the great features of Drupal is that you can so easily extend its functionality with modules.

For example, the webform module allows you to gather information from users by creating forms using all available HTML form elements and then store these responses in a database and send an email. All without needing to write any PHP code.