﻿function query(search) {
	var r = {};
	var params = search.replace(/^\?/,'').split('&');
	for( var i = 0;  i < params.length; ++i ) {
		var p = params[i].split('=');
		var key = p[0];
		if( key ) {
			r[key] = unescape(p[1]);
		}
	}
	return r;
}

function rgbStringToHex( str ) {
	var str = str.toLowerCase();
	var parts = null;
	// check if we already have a hex string (yay for browser differences)
	if ( (parts = str.match(/^#([a-f0-9]{6})$/)) ) {
		return parts[1];
	}
	if ( (parts = str.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/)) ) {
		delete parts[0];
		for ( var i = 1; i <= 3; ++i ) {
		    parts[i] = parseInt(parts[i]).toString(16);
		    if (parts[i].length == 1) parts[i] = '0' + parts[i];
		}
		return parts.join('');
	}
}
