// JavaScript Document
function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

function changeImages() {
	if (document.images && (preloadFlag == true)) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}
	}
}

var preloadFlag = false;
function preloadImages() {
	if (document.images) {
		nav_panel_01_over = newImage("/images/nav-panel_01-over.gif");
		nav_panel_02_over = newImage("/images/nav-panel_02-over.gif");
		nav_panel_03_over = newImage("/images/nav-panel_03-over.gif");
		nav_panel_04_over = newImage("/images/nav-panel_04-over.gif");
		nav_panel_05_over = newImage("/images/nav-panel_05-over.gif");
		nav_panel_06_over = newImage("/images/nav-panel_06-over.gif");
		nav_panel_07_over = newImage("/images/nav-panel_07-over.gif");
		nav_panel_08_over = newImage("/images/nav-panel_08-over.gif");
		nav_panel_09_over = newImage("/images/nav-panel_09-over.gif");
		nav_panel_10_over = newImage("/images/nav-panel_10-over.gif");
		nav_panel_11_over = newImage("/images/nav-panel_11-over.gif");
		preloadFlag = true;
	}
}

// JavaScript Document
addLoadEvent = function(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	}
	else {
		window.onload = function() {
			oldonload();
			func();
		}
	}
}
popupwindow = function(url,w,h){
	//sDumper(arguments); return false;
	try{nw.close();}catch(e){}
	window.open(url,'Popup','width='+w+',height='+h+',resizable=1,toolbar=0,menubar=0,scrollbars=yes,left=20,top=20');
	
	/*nw=*///nw.focus();
}
toggleinput=function(inp,def){if(inp.value == def) inp.value=""; else if (inp.value =='') inp.value=def;}
loadScript=function(url)		{
		   var e = document.createElement("script");
		   e.src = url;
		   e.type="text/javascript";
		   document.getElementsByTagName("head")[0].appendChild(e);
		}
		


cleanresults=function(res){
	/*	function cleanresults(res)-	
			needed on localhost for testing, coldfusion developers edition causes errors without
			not necessary for production environment */
	str='<META NAME=\"ColdFusionMXEdition\" CONTENT=\"ColdFusion DevNet Edition - Not for Production Use.\">';
	res = res.replace( str, '' );
	return res;
}		

document.write('<img src="/images/icons/spinner.gif" style="display:none;">');
updateHTML=function(id,url,ff){
			//Must serialize before reseting innerHTML since form may be inside the place being updated
			if(ff != null){
				var f=Form.serialize(ff);
			}else{
				var f='randval=xyz123';	
			}
			//$(id).innerHTML='Loading... <img src="/images/icons/spinner.gif">';
			
			var myAjax = new Ajax.Updater(
				id, 
				url, 
				{	method: 'get',
					parameters: 'randtime='+new Date().getTime(),
					evalScripts: true,
					postBody:f
				});
			//sDumper(myAjax);
}
//updateHTML2 - show a loading circle
updateHTML2=function(id,url,ff){
	$(id).innerHTML='One Moment Please... <img src="/images/icons/spinner.gif" width="16" height="16" style="width:16px; height:16px;">'; 
	updateHTML(id,url,ff);


}
updateHTMLPost=function(id,url,ff){
			
			//Must serialize before reseting innerHTML since form may be inside the place being updated
			if(ff != null){
				if(ff.indexOf("=") != -1){
					f=ff+'&randtime='+new Date().getTime();
				}else{
					var f=Form.serialize(ff);
					//alert(f);
				}
			}else{
				var f='randval=xyz123';	
			}
			//$(id).innerHTML='<center>One Moment Please... <img src="/images/icons/spinner.gif" width="16" height="16" style="width:16px; height:16px;"></center>';
			//alert(ff);
			var myAjax = new Ajax.Updater(
				id, 
				url, 
				{	method: 'post',
					parameters: 'randtime='+new Date().getTime(),
					evalScripts: true,
					postBody:f
				});
}
preloadPics=function(imglist){
	img=new Array();
	imglist.each( function(imgsrc,index){ img[index]=new Image(); img[index].src=imgsrc;   });
}
loadPic=function(picsrc){
	img=new Image();
	img.src=picsrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

/**
 * DHTML email validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */

echeck = function (str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid E-mail ID")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid E-mail ID")
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }

 		 return true					
	}

bookmarksite = function(title, url){
		if (window.sidebar) { // Mozilla Firefox Bookmark
			window.sidebar.addPanel(title, url,"");
		} else if( window.external ) { // IE Favorite
			window.external.AddFavorite( url, title); }
		else if(window.opera && window.print) { // Opera Hotlist
			return true; }
}

function isenter(e){ //e is event object passed from function invocation
	var characterCode;// literal character code will be stored in this variable
	
	if(e && e.which){ //if which property of event object is supported (NN4)
		e = e
		characterCode = e.which //character code is contained in NN4's which property
	}
	else{
		e = event
		characterCode = e.keyCode //character code is contained in IE's keyCode property
	}
	
	if(characterCode == 13){ //if generated character code is equal to ascii 13 (if enter key)
		return true; 
	}
	else{
		return false; 
	}

}

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: "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();

/* (C) www.dhtmlgoodies.com, September 2005 This is a script from www.dhtmlgoodies.com. You will find this and a lot of other scripts at our website. Terms of use: You are free to use this script as long as the copyright message is kept intact. However, you may not redistribute, sell or repost it without our permission. Thank you! www.dhtmlgoodies.com Alf Magne Kalleland */
function showToolTip(e,text){
	if(document.all)e = event;
	var obj = document.getElementById('bubble_tooltip');
	var obj2 = document.getElementById('bubble_tooltip_content');
	obj2.innerHTML = text;
	obj.style.display = 'block';
	var st = Math.max(document.body.scrollTop,document.documentElement.scrollTop);
	if(navigator.userAgent.toLowerCase().indexOf('safari')>=0)st=0; 
	var leftPos = e.clientX - 100;
	if(leftPos<0)leftPos = 0;
	obj.style.left = leftPos + 'px';
	obj.style.top = e.clientY - obj.offsetHeight -1 + st + 'px';
}	
function hideToolTip()
{
	document.getElementById('bubble_tooltip').style.display = 'none';
	
}

replaceURL = function(key,value,url){//replace a key value in the url string if exists, or add it if not
	if(url != null){
		loc=url;
	}else{
		loc = window.location.href;
	}
	//;
	sep = loc.indexOf("?");
	hasquery = sep > -1 ? true : false;
	
	url = loc.substring(0,sep);
	query=loc.substring(sep+1);
	poundSign = query.indexOf("#");
	if(poundSign != -1) query = query.substring(0,poundSign);
		
	query = query.toQueryParams();
	//query=window.location.search.substring(1).toQueryParams();
	
	query[key]=value;
	qr = '';
	amp = false;
	for(key in query){
		amp = true;
		qr = qr + key + '=' + query[key] + '&'; 
	}
	if(amp) qr = qr.substring(0,qr.length-1);
	//sDumper(query);
	return url + '?' + qr;
}

wordcount = function(el){
	return $F(el).split(" ").length;
}
showspinner = function(id){
	$(id).innerHTML = '<img src="/images/icons/spinner.gif" valign="absbottom" height="13">';	
}
getspinner = function(){
	return '<img src="/images/icons/spinner.gif" valign="absbottom" height="13">';	
}
hidespinner = function(id){
	$(id).innerHTML='';	
}

refWindow=function(){
	window.location.href=window.location.href;
}

toggle = function(div){
	div = document.getElementById(div);
	if(div.style.display == 'block'){
		div.style.display = 'none';
	}else{
		div.style.display = 'block';	
	}
}

