var browser_type=(navigator==null||navigator.userAgent==null)?'':navigator.userAgent.toLowerCase()
	,browser_ver=(navigator==null||navigator.appVersion==null)?'':navigator.appVersion
	,browser_verNum=parseInt(browser_ver)
	,is_opera=browser_type.indexOf('opera')!=-1
	,is_ie=!is_opera&&(browser_type.indexOf('msie')!=-1)
	,is_mozilla=!is_ie&&!is_opera&&((browser_type.indexOf('netscape')!=-1)||(browser_type.indexOf('mozilla')!=-1))&&(browser_verNum>=5)
	,is_ie3=is_ie&&(browser_verNum<4)
	,is_ie4=is_ie&&(browser_verNum==4)&&(browser_type.indexOf("msie 4")!=-1)
	,is_ie55=is_ie&&(browser_verNum==4)&&(browser_type.indexOf("msie 5.5")!=-1)
	,is_ie5=is_ie&&(browser_verNum==4)&&(browser_type.indexOf("msie 5")!=-1)&&!is_ie55
	,is_ie55p=is_ie&&!is_ie3&&!is_ie4&&!is_ie5
	,check_browser_transitions=is_ie55p&&(browser_type.indexOf('nt 4')==-1)
	,is_ie6p=is_ie&&!is_ie3&&!is_ie4&&!is_ie5&&!is_ie55
	,check_browser_shadows=is_ie6p
	,is_n6=(browser_type.indexOf('netscape6')!=-1)
	,has_slides=!is_n6
	,do_overlays=is_ie55p
	,do_hsel=is_ie
	,do_nccm=!is_opera
	,check_for_empting=!is_n6
	,check_aX=null
	,check_compatility=(is_ie&&(!is_ie6p||document.compatMode=="BackCompat"))||(is_opera&&document.compatMode=="QuirksMode")
	,check_animfps=30;
function AJ_oPtN(obj){
	return obj.offsetParent.tagName;
};

function AJAXtools_CheckforBrowserFilters(){
	try{
		document.body.filters;
		return true;
	}catch(dummy){
		return false;
	};
};

function AJAXtools_Contains(obj1,obj2){
	if(obj2==null||obj1==null){
		return false;
	};
	if(is_ie){
		return obj1.contains(obj2);
	};
	if(obj2==obj1){
		return true;
	}
	while(obj2.parentNode){
		obj2=obj2.parentNode;
		if(obj2==obj1){
			return true;
		};
	};
	return false;
};
function AJAXtools_InstantiateClientTemplate(qg34,Parent,DataItem){
	var arChunks=qg34.split("##");
	for(var i=1;i<arChunks.length;i+=2){
		arChunks[i]=eval(arChunks[i]);
	};
	return arChunks.join('');
};

function AJAXtools_EffectiveTransitionString(tid,customfil){
	switch(tid){
		case 0:
			return null;
		case 1:
			return customfil;
		case 2:
			return'progid:DXImageTransform.Microsoft.RandomDissolve()';
		case 3:
			return'progid:DXImageTransform.Microsoft.Fade()';
		case 4:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=CIRCLE)';
		case 5:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=CIRCLE,motion=in)';
		case 6:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=CROSS)';
		case 7:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=CROSS,motion=in)';
		case 8:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=DIAMOND)';
		case 9:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=DIAMOND,motion=in)';
		case 10:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=PLUS)';
		case 11:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=PLUS,motion=in)';
		case 12:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=SQUARE)';
		case 13:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=SQUARE,motion=in)';
		case 14:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=STAR)';
		case 15:
			return'progid:DXImageTransform.Microsoft.Iris(irisStyle=STAR,motion=in)';
		case 16:
			return'progid:DXImageTransform.Microsoft.Pixelate(MaxSquare=20)';
		case 17:
			return'progid:DXImageTransform.Microsoft.Wheel(spokes=2)';
		case 18:
			return'progid:DXImageTransform.Microsoft.Wheel(spokes=8)';
		case 19:
			return'progid:DXImageTransform.Microsoft.Wipe(GradientSize=1.0,wipeStyle=1)';
		case 20:
			return'progid:DXImageTransform.Microsoft.Wipe(GradientSize=1.0,wipeStyle=0,motion=reverse)';
		case 21:
			return'progid:DXImageTransform.Microsoft.Wipe(GradientSize=1.0,wipeStyle=0)';
		case 22:
			return'progid:DXImageTransform.Microsoft.Wipe(GradientSize=1.0,wipeStyle=1,motion=reverse)';
	};
	return null;
};
var AJAXtools_Utils_Loaded=true;




///////////////////////////////
// calendar //
function AJAXtools_IsStray(d){
	while(d!=null&&d!=document.documentElement){
		d=d.parentNode;
	};
	return d!=document.documentElement;
};
// calendar //
function AJAXtools_RemoveEventHandler(obj,eventName,durinter){
	if(obj.detachEvent){
		return obj.detachEvent("on"+eventName,durinter);
	}else if(obj.removeEventListener){
		obj.removeEventListener(eventName,durinter,false);
		return true;
	};
	return false;
};
// treeview //
function AJAXtools_IsMouseOnObject(obj,x,y){
	var xl=findGLobalX(obj)-window.document.body.scrollLeft+1
		,yt=findGLobalY(obj)-window.document.body.scrollTop+1
		,ow=xl+obj.offsetWidth-1
		,oh=yt+obj.offsetHeight-1;
	return((x>xl)&&(x<ow)&&(y>yt)&&(y<oh));
};
// navbar //
function AJAXtools_Quote(s){
	if(s==null) return'null'; else return'\''+s+'\'';
		
};

///////////////////////////////