Coding around lack of trim() in IE’s Javascript support

IE8 doesn’t support trim() on Strings (Firefox and other browsers do). To workaround this, you can perform the same operation using some regex on a String:

example.replace(/^s+|s+$/g, '')

… this matches one or more spaces anchored at the start of the line, or one or more spaces anchored at the end of the line, replaces with ”, and then globally replaces to do both.

Extracting cookies using Javascript

Cookies in the current page can be extract using Javascript using ‘document.cookies’ which returns a ‘;’ separated String of all the current cookie values.

You can parse the values with some script like this:

function getCookie(name) {
    var result = '';
    var cookies = document.cookie.split(';');
    for ( var i = 0; i < cookies.length; i++) {
        //alert(cookies[i]);
        var cookie = cookies[i].split('=');
        if (cookie[0].replace(/^s+|s+$/g, '') == name)
            result = cookie[1];
    }
    return result;
}

Fixing Twitter Bootstrap rendering issues in Internet Explorer

Internet Explorer’s interpretation of CSS compared with all the other browsers sometimes bewilders me. To get Twitter Bootstrap to render at all like the other browsers, apparently it’s important that you have to specify the doctype, otherwise it seems to render layout related CSS all over the place. Just include this at the top of your source:

<!DOCTYPE HTML>

I found this as an answer to this post on StackOverflow.

Resizing your Debian root fs on Raspberry Pi

Once you’ve copied one of the Debian disk images to an SD card, you may have noticed that the disk image is only for 2GB and you have a lot of unused space on your SD card. The raspi-config util has an option (Expand Root FS) to resize your root partition for you. There’s also plenty of other utils to do the job. I used gparted from a gparted LiveCD booted on my Mac to resize my partition and it worked well.