// JavaScript Document

var intMsgText = [0];
var intMsgId = [0];
var modal;

/*----------------------------------------------------------------------------
						GLOBAL CLIENTSIDE FUNCTIONS
   ----------------------------------------------------------------------------*/



function addIntMsg (msg, id) {
	intMsgText.push(msg);
	intMsgId.push(id);
}

function clearIntMsg() {
	var retText = "";
	for (var i=1; i<intMsgId.length; i++) {
		var t = document.getElementById(intMsgId[i]);
		if (t) {
			t.className = "";
		}
	}
	if (document.getElementById("errorTag")) {
		document.getElementById("errorTag").innerHTML = "";
	}
	if (document.getElementById("errorBox")) {
			document.getElementById("errorBox").style.visibility = "hidden";
	}
	
	intMsgText.length = 1;
	intMsgId.length = 1;
}

function showIntMsg() {
	var retText = "";
	for (var i=1; i<intMsgId.length; i++) {
		var t = document.getElementById(intMsgId[i]);
		if (t) {
			t.className = "errorTag";
		}
		retText += "<p>"+intMsgText[i]+"</p>";
	}
	if (retText.length>0) {
		if (document.getElementById("errorTag")) {
			document.getElementById("errorTag").innerHTML = retText;
		}
		if (document.getElementById("errorBox")) {
			document.getElementById("errorBox").style.visibility = "visible";
		}
	}
}


function onPageLoaded() {
	modal = document.getElementById("modal");
	onPageResized();
	showIntMsg();
	try {
		pageInit();
		//removeCheckBoxBorders();
	} catch(e) {
	}
}

function removeCheckBoxBorders() {
	var el = document.getElementsByTagName("input");
	for (i=0;i<el.length;i++) {
		var type = el[i].getAttribute("type");
		if((type=="checkbox")||(type=="radio")) {
			el[i].style.border = "none";
		}
	}
}

function onPageResized() {
	var height = document.documentElement.scrollHeight;
	document.getElementById("frameBlobs").style.top = String(height-88) + "px";
	
	var width=Math.floor(document.documentElement.scrollWidth/2);
	modal.style.left = width + "px";
	//alert(modal.offsetWidth);
	
	try {
		pageResize();
	} catch(e) {
	}
	
	

	
}

function setOpacity(target, value) {
	target.style.opacity = value/100;
	target.style.filter = 'alpha(opacity=' + value + ')';
}

function showModal(visible) {
	var mback = document.getElementById("modalBack");

	if (visible) {
		visible = "block";
	} else {
		visible = "none"
	}
	mback.style.display = visible;
	
	if (self.innerHeight) {
		var height = self.innerHeight/2;
	} else {
		var height = document.documentElement.clientHeight/2;
	}
	modal.style.top = String(height-50) + "px";

}


var buttonEnable = new Object();

function buttonOver (sender) {
	if (buttonEnable[sender.id]==undefined) {
		buttonEnable[sender.id]=true;
	}
	if (!buttonEnable[sender.id]==false) {
		sender.style.cursor = "pointer";
		sender.className = "buttonOver";	
	} else {
		sender.style.cursor = "default";
	}
}

function buttonOut (sender) {
	if (!buttonEnable[sender.id]==false) {
		sender.className = "button";	
	}
}
function buttonClicked (formTag, sender) {
	if (sender) {
		if (!buttonEnable[sender.id]==false) {
			var d=document.getElementById("formTag");
			if (!d) {
				d=document.forms[0];
			}
			d.submit();
		}
	} else {
		var d=document.getElementById("formTag");
		if (!d) {
			d=document.forms[0];
		}
		d.submit();	
	}
}

function buttonEnabled (sender, value) {
	//alert(sender.name);
	if (value) {
		sender.className = "button";
	} else {
		sender.className = "buttonDisabled";
	}
	buttonEnable[sender.id]=value;
}

function openHelp (targetAnchor, url) {
	if (!url) {
		try {
			url=helpPage;
		} catch (e) {
			url="/help/index.asp?helpPage=" + self.location.pathname + "&anchor=" + targetAnchor ;
		}
	}
	
	url+="#"+targetAnchor;
	var helpWindow=window.open(url,"Hire2day_help", 'width=540,height=400,menubar=no,resizeable=no,scrollbars=yes,status=no,titlebar=no,toolbar=no,location=no');
	
	
}
function openPopUp (url) {
	var popUp=window.open(url,"Hire2day_popUp", 'width=540,height=400,menubar=no,resizeable=no,scrollbars=yes,status=no,titlebar=no,toolbar=no,location=no');
	
	
}

function toCurrency (num, noDec) {
	num = Number(num);
	if (isNaN(num)) {
		num=0;
	}
	
	var decimals = num-Math.floor(num);
	var int = String(Math.floor(num));
	var ret="";
	while (int.length>0) {
		if (ret) {
			ret = int.substring(int.length-3) + "." +ret;
		} else {
			var ret = int.substring(int.length-3);
		}
		int = int.substring(0,int.length-3);
	}
	
	if (!noDec) {
		ret += "," + String(Math.round(decimals*10)+"00").substring(0,2);
	}
	
	return ret;
}

function fromCurrency (num) {
	var ret = String(num).split(".").join("");
	ret = ret.split(",").join(".");
	ret = ret.split("-").join("");
	ret=Number(ret);
	if (isNaN(ret)) {
		return 0;
	} else {
		return ret;
	}
}

function fromCurrencyOrNumber (num) {
	var ret = Number(num);
	if (isNaN(ret)) {
		ret = fromCurrency(num);
	}
	return ret;
}

function submitenter(myfield,e) {
	var keycode;
	if (window.event) keycode = window.event.keyCode;
	else if (e) keycode = e.which;
	else return true;
	
	if (keycode == 13) {
	   myfield.form.submit();
	   return false;
	} else {
	   return true;
	}
}

function isNumberKey(evt) {
 var charCode = (evt.which) ? evt.which : event.keyCode
 if (charCode > 31 && (charCode < 48 || charCode > 57))
	return false;

 return true;
}

function getCheckedValue(radioObj) {
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}

function track (id, targetUrl, navigate, blank) {
	var xmlHttp = _getXmlHttpObject();
	var url="/includes/_track.asp?id=" + id + "&targetUrl=" + targetUrl + "&rnd=" + (new Date()).valueOf();
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);	
	if (navigate) {
		if (blank) {
			var myRef = window.open(targetUrl,String('hire2day' + Math.floor(Math.random()*10000)),'');
		} else {
			self.location = targetUrl;
		}
	}
}

function _getXmlHttpObject() {
	var xmlHttp = null;
	try {
		// Firefox, Opera 8.0+, Safari
		xmlHttp = new XMLHttpRequest();
	}
	
	catch (e) {
		// Internet Explorer
		try {
		  xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e) {
		  xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	  return xmlHttp;
}


