/**
 * @author toby
 */

 function addLoadEvent(func){
	var oldonload = window.onload;
	if(typeof window.onload != 'function'){
		window.onload = func;
	}else{
		window.onload = function(){
			oldonload();
			func();
		}
	}
}

function addUnloadEvent(func){
	var oldonunload = window.unonload;
	if(typeof window.unonload != 'function'){
		window.unonload = func;
	}else{
		window.unonload = function(){
			oldonunload();
			func();
		}
	}
}

function mapUnload(){
	GUnload();
}

String.prototype.supplant = function (o) { 
    return this.replace(/{([^{}]*)}/g, 
        function (a, b) {  
            var r = o[b];
            return typeof r === 'string' ? 
                r : a; 
        }
    ); 
};

String.prototype.trim = function(){
	return this.replace(/^\s+|\s+$/g, '');
}


/* this function changes the cursor style*/
function changeCursor(element, cursorstyle){
	element.style.cursor = cursorstyle
}

/* this function changes the body tag class */
function changeBodyClass(from, to){
	document.body.className = document.body.className.replace(from, to);
	return false;
}

function getLatLng(){
	var query = location.search.substring(1);
	GLog.write(query);
	var pos = query.indexOf("=");
	if(pos === -1) return -1;
	var ll = query.substring(pos+1).split(",");
	return ll;
}

function queryString() {
	var qsParm = new Array();
	var query = window.location.search.substring(1);
	var parms = query.split('&');
	for (var i=0; i<parms.length; i++) {
		var pos = parms[i].indexOf('=');
		if (pos > 0) {
			var key = parms[i].substring(0,pos);
			var val = parms[i].substring(pos+1);
			qsParm[key] = val;
		}
	}
	return qsParm;
}
