
function parseHash() {
	var hash = '' + location.hash
	if (hash.charAt(0) == '#') hash = hash.substring(1)

	var paramPieces = hash.split(';')
	var params = {}
	for(var i=0; i<paramPieces.length; i++) {
		var q = paramPieces[i].indexOf('=')
		if (q<=0) continue

		params[paramPieces[i].substring(0,q)] = paramPieces[i].substring(q+1)
	}

	return params
}

function parseQuery(hash) {
	var res = {}
	if (!hash) return res

	$(hash.split('&')).each(function(key, val){
		var t = val.split('=');

		if(t.length > 0) {
			//console.log("key %s val %s t %s res %o", key, val, t, res)
			res[t[0]] = t.length > 1 ? t[1] : '';
		}
	})

	return res;
}

function makeQuery(params) {
	var buf = []
	for(var prop in params) {
		if (!params.hasOwnProperty(prop)) continue
		var p = params[prop] + ''
		if (p && p.length) {
			buf.push(prop+'='+p)
		}
	}
	return buf.join('&')
}

var cssFix = function(){

  var u = navigator.userAgent.toLowerCase()
  var is = function(t){return (u.indexOf(t)!=-1)};

  $(document.getElementsByTagName('html')[0]).addClass(
	[
    (!(/opera|webtv/i.test(u))&&/msie (\d)/.test(u))?('ie ie'+RegExp.$1)

      :is('firefox/2')?'gecko ff2'

      :is('firefox/3')?'gecko ff3'

      :is('gecko/')?'gecko'

      :is('opera/9')?'opera opera9':/opera (\d)/.test(u)?'opera opera'+RegExp.$1

      :is('konqueror')?'konqueror'

      :is('applewebkit/')?'webkit safari'

      :is('mozilla/')?'gecko':'',

    (is('x11')||is('linux'))?' linux'

      :is('mac')?' mac'

      :is('win')?' win':''

  ].join(" "));

}();
