// alib common object
function Alib() {};

//------------------------------------
//	retrieve target for event
//------------------------------------

Alib.prototype.getTarget = function(e) {
	var target;
	if (e.target) target = e.target;
	else if (e.srcElement) target = e.srcElement;
	if (target.nodeType == 3) // defeat Safari bug
		target = target.parentNode;

	return target;
}

//------------------------------------
//	retrieve related target for event
//------------------------------------

Alib.prototype.getRelatedTarget = function(e) {
	return (e.relatedTarget) ? e.relatedTarget : e.toElement;
}

Alib.prototype.addListener = function(obj, event, handler) {
	if (obj.addEventListener) {
		obj.addEventListener(event, handler, false);
	} else if (obj.attachEvent) {
		obj.attachEvent('on' + event, handler);
	} else {
		window.status = 'Please upgrade to more recent browser like ie6.0 or firefox.';
	}
}

/* warning, ie is choking on addStyleSheet */
Alib.prototype.addStyleSheet = function(title, href) {
	/*
	var head = document.getElementsByTagName('head')[0];
	var link = document.createElement('link')
	link.rel = 'stylesheet';
	link.type = 'text/css';
	link.title = '';
	link.href = href;

	head.appendChild(link);
	*/
	document.write('<link rel="stylesheet" href="'+href+'" type="text/css">');
}
 //Get URLParam from URL
Alib.prototype.getURLParam = function(param){
 	var _url = document.location.href.toLowerCase();
	var i = _url.indexOf('/'+param+'/');
	//if URL have URLrewrite style
	if(i>=0){
		_url = _url.substring(i+param.length+2,_url.length);
		i = _url.indexOf('/');
		if(i>=0){_url = _url.substring(0,i);return _url;}
	} else {
		//If URL have ? style
		i = _url.indexOf(param+'=');
		if(i>=0){
			_url = _url.substring(i+param.length+1,_url.length);
			i = _url.indexOf('&');
			if(i>=0)_url = _url.substring(0,i);
			return _url;
		}
	}
	return null;
};
var alib = new Alib();
