var fwHideMenuTimer;

function verifyCompatibleBrowser(){ 
    this.ver=navigator.appVersion 
    this.dom=document.getElementById?1:0 
    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0; 
    this.ie4=(document.all && !this.dom)?1:0; 
    this.ie5p=(document.all && this.dom)?1:0; 
    this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
 
    this.ns4=(document.layers && !this.dom)?1:0; 
    this.bw=(this.ie5 || this.ie4 || this.ns4 || this.ns5) 
    return this 
} 
bw=new verifyCompatibleBrowser();

function getOffsetLeft(obj)
{
var o, offset;
	offset=0;
	for (o=obj;o.offsetParent;o=o.offsetParent)
	{
		if (!isNaN(o.offsetLeft)) offset = offset + o.offsetLeft;
	};
	return offset;
}

function getOffsetTop(obj)
{
var o, offset;
	offset=0;
	for (o=obj;o.offsetParent;o=o.offsetParent)
	{
		if (!isNaN(o.offsetTop)) offset = offset + o.offsetTop;
	};
	return offset;
}

function selectm(n) {
	img = new getObj(n)
	if (img.obj){
		newsrc = "/img/" + n + "_b.gif";
		img.obj.src = newsrc;
	}
	img = null;
}
function bover(n) {
	if (n=='b_'+'<%= selectedmi %>')
	{
		//alert(n);
		return true;
	};
	img = new getObj(n)
	if (img.obj){
		newsrc = "/img/" + n + "_a.gif";
		img.obj.src = newsrc;
	}
	img = null;
}
function bout(n) {
	if (n=='b_'+'<%= selectedmi %>')
	{
		//alert(n);
		return true;
	};
	img = new getObj(n)
	if (img.obj){
		newsrc = "/img/" + n + ".gif";
		img.obj.src = newsrc;
	}
	img = null;
}

agent = navigator.appName;
if (agent == "Microsoft Internet Explorer")
{
	ie=true; nn=false;
}
if (agent == "Netscape")
{
	ie=false; nn=true;
};
function getObj(name)
{
  if (document.getElementById)
  {
//	alert (document.images[name]);
//	alert (document.getElementById(name));
  	this.obj = document.getElementById(name);
	if (!this.obj) return null;
	this.style = document.getElementById(name).style;
  }
  else if (document.all)
  {
	this.obj = document.all[name];
	if (!this.obj) return null;
	this.style = document.all[name].style;
  }
  else if (document.layers)
  {
	this.obj = getObjNN4(document,name);
	if (!this.obj) return null;
	this.style = this.obj;
  }
}

function getObjNN4(obj,name)
{
	var x = obj.layers;
	if (obj.document)
	{
		var y = obj.document.images;
	}
	else
	{
		var y = obj.images;
	};
	var thereturn;
	var ss="";
	for (var i=0;i<y.length;i++)
	{
		if (y[i].name)
		{
			ss=ss+y[i].name+" , ";
			if (y[i].name == name)
			{
				return y[i];
			}; //if (y[i].name == name)
		};// if (y[i].name)
	}; // for i
	for (var i=0;i<x.length;i++)
	{
		if (x[i].id == name)
		{
		 	thereturn = x[i];
			return thereturn;
		}
		else
		{
			if (x[i].layers.length||x[i].document.images.length)
			{
				var tmp = getObjNN4(x[i],name);
			};
			if (tmp) thereturn = tmp;
		};
	};
	return thereturn;
};

function showDiv(which, x,y) {
		//alert(which);
		divobj= new getObj(which);
		if (divobj.obj.left) {divobj.obj.left=x}
		if (divobj.style.pixelLeft) {divobj.style.pixelLeft=x}
		if (divobj.obj.top) {divobj.obj.top=y}
		if (divobj.style.pixelTop) {divobj.style.pixelTop=y}
		if (bw.ns5){
			divobj.style.left = x + 'px';
			divobj.style.top = y + 'px';
		};
//		for (i=0; divobj.style.left!=x + 'px' || divobj.style.top!=y + 'px';i++);
//		alert(i);
//		window.setTimeout("divobj.style.visibility='visible';", 50);
		divobj.style.visibility='visible';
		divobj=null;
//        if (nn) document.layers[which].visibility = "show";
//        if (ie) document.all[which].style.visibility = "visible";
}

function hideDiv(which) {
		divobj= new getObj(which);
		divobj.style.visibility='hidden';
		divobj=null;
//        if (nn) document.layers[which].visibility = "hide";
//        if (ie) document.all[which].style.visibility = "hidden";
}

function FW_clearTimeout()
{
	if (fwHideMenuTimer) clearTimeout(fwHideMenuTimer);
	fwHideMenuTimer = null;
	fwDHFlag = false;
}
function FW_startTimeout(execS)
{
	fwStart = new Date();
	fwDHFlag = true;
	fwHideMenuTimer = setTimeout(execS, 500);
}

function fwDoHide()
{
	if (!fwDHFlag) return;
	var elapsed = new Date() - fwStart;
	if (elapsed < 500) {
		fwHideMenuTimer = setTimeout("fwDoHide()", 600-elapsed);
		return;
	}
	fwDHFlag = false;
	HideAllLayers();
	MM_swapImgRestore();
}

function over(n,anchor_name) {
	var x,y,dx,dy;
	dx=-2;
	dy=18;
	if (bw.ns5) dy=0;
	HideAllLayers();
	anchor_obj= new getObj(anchor_name);
//	debugger;
	if (bw.ns4) {
		x=anchor_obj.obj.pageX+dx;
		y=anchor_obj.obj.pageY+dy;
	};
	if (bw.ie5p||bw.ie5||bw.dom) {
		x=getOffsetLeft(anchor_obj.obj)+dx;
//		y=getOffsetTop(anchor_obj.obj)+dy;
		y=130;
	}
//	alert('x: '+x+', y: '+y);
//	y=0;
	showDiv(n,x,y);
}

function out(n) {
	  hideDiv(n)
}
function HideAllLayers()
{
  FW_clearTimeout();
  for (i=0;i<names.length;i++)
  {
  	hideDiv(names[i]);
  };
}

function windowOpener(fileName, w, h, l, t){
	msgWindow=window.open(fileName,"winName","width="+w+",height="+h+",left="+l+",top="+t+",toolbar=0,directories=0,menubar=0,resizable=1,location=0,scrollbars=1,copyhistory=0");
}

function windowOpenerNotResize(fileName, w, h, l, t){
	msgWindow=window.open(fileName,"winName","width="+w+",height="+h+",left="+l+",top="+t+",toolbar=0,directories=0,menubar=0,resizable=0,location=0,scrollbars=0,copyhistory=0");
}

//This function checks the required field and makes sure that user input some data in those and it is not just empty spaces
function CheckReField(strFormName, strReqParam){
	var blnReturn = true;
	var errFields='';
	for (var i=0;i<eval(strFormName).length;i++){
		eval(strFormName).elements[i].style.backgroundColor='';
		//alert(eval(strFormName).req_textarea_4.innerHTML);
		if (eval(strFormName).elements[i].name.substr(0, strReqParam.length) == strReqParam)
			{
			var strTemp = Trim(eval(strFormName).elements[i].value);
			if (strTemp == '')
				{
    			blnReturn = false; errFields+=eval(strFormName).elements[i].name+';';
				}
  			}
			
		if (eval(strFormName).elements[i].name.substr(0, 6) == 'select') {
			if (eval(strFormName).elements[i].name.substr(eval(strFormName).elements[i].name.length-strReqParam.length, strReqParam.length) == strReqParam){
				var strTemp = Trim(eval(strFormName).elements[i].value);
				if (eval(strFormName).elements[i].options[eval(strFormName).elements[i].selectedIndex].innerHTML=='Please select'){
					blnReturn = false;  errFields+=eval(strFormName).elements[i].name+';';
					}
				}
			}
			
		if (eval(strFormName).elements[i].type=='checkbox' && eval(strFormName).elements[i].name.substr(0, strReqParam.length)==strReqParam) {
			checkboxLength=eval(strFormName+"."+eval(strFormName).elements[i].name+".length");
			var countDone=0;
			for(z=0;z<checkboxLength;z++) {
				if (eval(strFormName).elements[i].name.substr(0, strReqParam.length)!='req_'){
					var countNeeded=parseInt(eval(strFormName).elements[i].name.substr(strReqParam.length, 10));
					if (eval(strFormName+"."+eval(strFormName).elements[i].name+"["+z+"].checked")) {countDone+=1}
					if (countDone<countNeeded) {blnReturn=false; errFields+=eval(strFormName).elements[i].name+';';} //else {blnReturn=true}
					}
				else {
					if (!eval(strFormName+"."+eval(strFormName).elements[i].name+"["+z+"].checked")) {blnReturn=false; errFields+=eval(strFormName).elements[i].name+';';};}}
			}
			
		if (eval(strFormName).elements[i].name.substr(0, 5) == 'group') {
			if (eval(strFormName).elements[i].name.substr(eval(strFormName).elements[i].name.length-strReqParam.length, strReqParam.length) == strReqParam){
				groupLength=eval(strFormName+"."+eval(strFormName).elements[i].name+".length");
				var valFound=false;
				for(z=0;z<groupLength;z++) {
					groupCheck=(eval(strFormName+"."+eval(strFormName).elements[i].name+"["+z+"].checked"));
					if (groupCheck) {valFound=true;break;}
					}
				if(!valFound) {blnReturn = false;  errFields+=eval(strFormName).elements[i].name+';';}
				}
			}
		
		if (eval(strFormName).elements[i].type=='textarea' && eval(strFormName).elements[i].name.substr(0, strReqParam.length)==strReqParam) {
			var strTemp2 = document.all ? eval(strFormName).elements[i].innerHTML.length : eval(strFormName).elements[i].value;
			
			//alert(strTemp2);
			if (strTemp2 < 1)
				{
				blnReturn= false; errFields+=eval(strFormName).elements[i].name+';';
				}
			}
 	}
 
	if (blnReturn)
		{
 		//strFormName.submit();
		}
 	else
		{
  		if (errFields!='') {
			//alert(errFields);
			errFields=errFields.split(';'); 
			for (i=0; i<(errFields.length-1); i++) {try{fldId=eval('document.all.'+errFields[i]); fldId.style.backgroundColor='#FFCC66'; fldId.focus();} catch(e){} }
			}
  		alert('Please enter all highlighted (required) fields!'); return false
 		}
	}

//This function takes out all the spaces from a string from both sides and the middle and returns the result.
//It is used in conjunction with the above funtion to make sure the user simply didn't put it spaces in the input text field
function Trim(strInput){
 var strTrimmmed = '';
 for (var i = 0;i<strInput.length; i++){
  if (strInput.charCodeAt(i)!=32){
   strTrimmmed += strInput[i];
  }
 }
 return strTrimmmed;
}
