3D in Safari

I want to keep this goodie. Taken from http://www.youtube.com/user/unconed#p/a/u/0/2-oQj9Y9I6I and http://pastie.org/2251814

Upgrade from D6 in 7 steps? Hell no!!!

Sooo ... I've finally upgraded my own site. I thought it would be easy. A simple drupal site only using images. And yes I'm not reading READMEs that often. I trust drush somehow to handle this for me. But drush only sooth the 'pain'. This blog contains my bash script which does some staging from production onto my laptop where I update the site to the latest D6 then upgrade to D7. The script is generic enough to adapt for other upgrades.

Searching an issue on drupal.org with jQuery.grep

On http://drupal.org/node/686938 people are reporting a lot sloppy reports of error lines. The issue is about
Undefined index: [xyz] in line ...

But what are the names of the failing indexes?

jQuery has a nice grep so lets use it.

How to get that site on localhost?

drush logo

Make sure you have your drush aliases file setup properly. Below a snippet from my b2b.aliases.drushrc.php

$aliases['dev'] = array(
  'uri' => 'http://build2be.dev',  'root' => '/Users/clemens/Sites/build2be.dev/www/',
  'path-aliases' => array(
    '%dump-dir' => '/Users/clemens/Sites/build2be.dev/store',
    '%files' => '/Users/clemens/Sites/build2be.dev/www/sites/build2be.dev/files',

Now we can run

drush rsync @b2b.prd @b2b.dev

Git issue branch ... the sandbox route


I'm working on a patch to implement issue triage for Dreditor

But for ease of use and teasing in testers git issue branches would be great which are underways.

So in the mean time I use a sandbox for this. But how to get dreditor code into my repo?

  1. First create a sandbox on d.o. This gives to access to a new git repo.
  2. Ignore the initial git instructions
  3. Clone dreditor according the git instructions

    git clone http://git.drupal.org/project/dreditor.git

Using ctools modal forms for node edit

For a drupal 6 site I needed a node edit overlay. This is what I did.

Define the urls ajax/node/%node/edit and nojs/node/%node/edit. The idea is to use path similar to the normal drupal paths just prepended with what ctools modal needs. It needs are minor in that the url path must contain a string nojs and in this case a class attribute ctools-use-modal.

function annotate_ym_menu() {
$items['nojs/node/%node/%'] = array(
'page callback' => 'annotate_ym_ajax_node',
'page arguments' => array(0, 2, 3),

update module with a twist

I just did an upgrade from the calendar and date module of which calendar needed to move from 6.x-2.x-dev to 6.x-2.4 version which seemed a pitb exercise. I hope I missed some skills :-p

The following command was not working

drush upc calendar-6.x-2.4

So what I did was download the latest version offsite. Then diff the module trees.

cd /tmp
drush dl calendar-6.x-2.4
cd /my-site/sites/all/modules/calendar
cp -r /tmp/calendar/* ./

I like Universal Subtitles website.

Logo of Universal Subtitles
I recently discovered the site http://universalsubtitles.org which is a gateway to online video material and allows us to subtitle online videos. In the past I tried to do something similar with http://mycaptions.org (offline) with an arcane editor using BUedit. With that system I managed to add subtitles to this video of which I like the animal.

Who is currently online

I want to run svn up on the site but I need to offline it first. So who is online?

SELECT name, mail, (unix_timestamp()-access)/3600 AS hours
  FROM users
  HAVING hours < 1
  ORDER BY access;

Or for short

drush sql-query "select name, mail, (unix_timestamp()-access)/3600 as hours from users having hours < 1 order by access;"

Bookmarklets tips from the Drupal developement mailing list

Quotation would be nice but I deleted them from my mail :( ... hope to edit this one some day.

== below is not by me ==


if(document.URL.indexOf('XDEBUG_PROFILE')<1) { 
  var sep=document.URL.indexOf('?');sep = (sep<1)? '?' : '&';

Switch from dev.example.com to www.example.com

if ( /dev\./.test(location.href)){

And more

There are a handful of such useful freebies (including the one I did for DBG