<!--
	var BrowserDetect = {
		init: function () {
			this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
			this.version = this.searchVersion(navigator.userAgent)
				|| this.searchVersion(navigator.appVersion)
				|| "an unknown version";
			this.OS = this.searchString(this.dataOS) || "an unknown OS";
		},
		searchString: function (data) {
			for (var i=0;i<data.length;i++)	{
				var dataString = data[i].string;
				var dataProp = data[i].prop;
				this.versionSearchString = data[i].versionSearch || data[i].identity;
				if (dataString) {
					if (dataString.indexOf(data[i].subString) != -1)
						return data[i].identity;
				}
				else if (dataProp)
					return data[i].identity;
			}
		},
		searchVersion: function (dataString) {
			var index = dataString.indexOf(this.versionSearchString);
			if (index == -1) return;
			return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
		},
		dataBrowser: [
			{
				string: navigator.userAgent,
				subString: "Chrome",
				identity: "Chrome"
			},
			{ 	string: navigator.userAgent,
				subString: "OmniWeb",
				versionSearch: "OmniWeb/",
				identity: "OmniWeb"
			},
			{
				string: navigator.vendor,
				subString: "Apple",
				identity: "Safari"
			},
			{
				prop: window.opera,
				identity: "Opera"
			},
			{
				string: navigator.vendor,
				subString: "iCab",
				identity: "iCab"
			},
			{
				string: navigator.vendor,
				subString: "KDE",
				identity: "Konqueror"
			},
			{
				string: navigator.userAgent,
				subString: "Firefox",
				identity: "Firefox"
			},
			{
				string: navigator.vendor,
				subString: "Camino",
				identity: "Camino"
			},
			{		// for newer Netscapes (6+)
				string: navigator.userAgent,
				subString: "Netscape",
				identity: "Netscape"
			},
			{
				string: navigator.userAgent,
				subString: "MSIE",
				identity: "Explorer",
				versionSearch: "MSIE"
			},
			{
				string: navigator.userAgent,
				subString: "Gecko",
				identity: "Mozilla",
				versionSearch: "rv"
			},
			{ 		// for older Netscapes (4-)
				string: navigator.userAgent,
				subString: "Mozilla",
				identity: "Netscape",
				versionSearch: "Mozilla"
			}
		],
		dataOS : [
			{
				string: navigator.platform,
				subString: "Win",
				identity: "Windows"
			},
			{
				string: navigator.platform,
				subString: "Mac",
				identity: "Mac"
			},
			{
				string: navigator.platform,
				subString: "Linux",
				identity: "Linux"
			}
		]
	 
	};
	BrowserDetect.init();
	 
	// this routine adds the function getElementById to an old browser
	if (!document.getElementById)
		{
			document.getElementById = function(strID)
				{
					if (document.layers) return document[strID];
					if (document.all) return document.all[strID];
					return null; // expect the unexpected
				}
		}
	function setFocus(elem){
		var ELEMENT=document.getElementById(elem);
		try{ELEMENT.focus();}catch(e){}
		try{ELEMENT.select();}catch(e){}
		}
	
	var noAjax=-1;
	var ajaxResponse='Testing...';
	var MAXIMUM_WAITING_TIME=45000;	
	
	function ajaxCheck()
		{
			if(noAjax==0){return true;}
			if(noAjax==1){return false;}
			if(!doACheck()){return false;}
			return true;
		}
	
	function doACheck() {
		var xmlhttp;
		var requestTimer=0;
		/*@cc_on @*/			
		/*@if (@_jscript_version >= 5)			
			try {xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");} catch (e) {try {xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");}catch(E){xmlhttp = false;}}			
		@else			
			xmlhttp = false;			
		@end @*/
	
		if (!xmlhttp && typeof XMLHttpRequest!='undefined') 
			{
				try {xmlhttp = new XMLHttpRequest();}catch (e) 
					{ 
					try { xmlhttp = new ActiveXObject('Msxml2.XMLHTTP'); } catch (e) { 
						try { xmlhttp = new ActiveXObject('Microsoft.XMLHTTP'); } catch (e) 
							{
							xmlhttp = false;noAjax=1;ajaxResponse='AJAX UNAVAILABLE';return false;
							}
						}
					}
			}
		if ( !callInProgress(xmlhttp))
			{
				if (xmlhttp) {
					xmlhttp.open("GET","acheck.htm",true);
					requestTimer = setTimeout(function(){xmlhttp.abort();return false;}, MAXIMUM_WAITING_TIME);
					xmlhttp.onreadystatechange = handleResponse;
					xmlhttp.send(null);
					} 
				else {noAjax=1;ajaxResponse='AJAX UNAVAILABLE';return false;}
			}
		function handleResponse(){if (xmlhttp.readyState!=4) {return;}clearTimeout(requestTimer);ajaxResponse=xmlhttp.responseText;noAjax=0;return true;}
		function callInProgress(xmlhttp){try{switch (xmlhttp.readyState) {case 1, 2, 3:return true;break;default:return false;break;}}catch(e){return false;}}
		return true;
	}	
		function is_int(event) {
			var Key = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
			if(Key == 13 || Key==8 || Key==9 || Key==37 || Key==39) return true;
			for(i=48;i<=57;i++){
					if(Key == i) return true;
			}
			return false;
		}

		function is_curr(event) {
			var Key = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
			if(Key == 13 || Key==8 || Key==9 || Key==46 || Key==37 || Key==39) return true;
			if(Key>47 && Key<58) return true;
			return false;
		}

	function ajaxCheck()
		{
			if(noAjax==0){return true;}
			if(noAjax==1){return false;}
			if(!doACheck()){return false;}
			return true;
		}
	
function findPos(obj,obj2)
	{
		var posX = obj.offsetLeft;
		var posY = obj.offsetTop;
		while(obj.offsetParent)
			{
				posX=posX+obj.offsetParent.offsetLeft;
				posY=posY+obj.offsetParent.offsetTop;
				if(obj==document.getElementsByTagName('body')[0]){break}
				else{obj=obj.offsetParent;}
			}
		obj2.style.left=posX;
		obj2.style.top=posY+20;
	}
function findPosTL(obj,obj2)
	{
		var posX = obj.offsetLeft;
		var posY = obj.offsetTop;
		while(obj.offsetParent)
			{
				posX=posX+obj.offsetParent.offsetLeft;
				posY=posY+obj.offsetParent.offsetTop;
				if(obj==document.getElementsByTagName('body')[0]){break}
				else{obj=obj.offsetParent;}
			}
		obj2.style.left=posX;
		obj2.style.top=posY;
	}

function ClearOptions(OptionList) 
	{
   // Always clear an option list from the last entry to the first
   for (x = OptionList.length; x >= 0; x--) 
		{
			OptionList[x] = null;
		}
	}

function AddToOptionList(OptionList, OptionValue, OptionText)
	{
   // Add option to the bottom of the list
   OptionList[OptionList.length] = new Option(OptionText, OptionValue);
	}
function ValidateCurrency(ov)
	{
	var vcTMP='';
	var vcCTR=0;
	for(x=0;x<ov.length;x++)
		{
			if(ov.substr(x,1)=='.'){vcCTR++;if(vcCTR<2){vcTMP+=ov.substr(x,1);}}
			else{vcTMP+=ov.substr(x,1);}
		}
	if(vcTMP.length==0 || vcTMP=='.'){vcTMP=0}
	return vcTMP;
	}

// --> 
