function executeGet(location, command)
{
	var targetControl = document.getElementById(location);
	
	targetControl.innerHTML = "";
	var objRequest = getRequest();
	if (objRequest == null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	}
	var url = command;
	url = url + "&sid=" + Math.random();
	objRequest.onreadystatechange = function()
	{
		if (objRequest.readyState == 4 || objRequest.readyState=="complete")
		{
			if (objRequest.status == 200) targetControl.innerHTML = objRequest.responseText;
			objRequest = null;
		}else{
			targetControl.innerHTML = "<span style='font-size:11px;font-family: Arial, Helvetica, sans-serif;color: #003399;letter-spacing: 1px;font-weight:bold;'>&nbsp;Loading...&nbsp;</span>";
		}
	};
	objRequest.open("GET",url,true);
	objRequest.send(null);
}
function executePost(location, command)
{
	var targetControl = document.getElementById(location);
	
	targetControl.innerHTML = "";
	var objRequest = getRequest();
	if (objRequest == null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	}
	var url = command;
	objRequest.onreadystatechange = function()
	{
		if (objRequest.readyState == 4 || objRequest.readyState=="complete")
		{
			if (objRequest.status == 200) 
			{
				targetControl.innerHTML = objRequest.responseText;
				execJS(targetControl);
			}
			objRequest = null;
		}else{
			targetControl.innerHTML = "<span style='font-size:11px;font-family: Arial, Helvetica, sans-serif;color: #003399;letter-spacing: 1px;font-weight:bold;'>&nbsp;Loading...&nbsp;</span>";
		}
	};
	objRequest.open("POST",url,true);
	objRequest.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	objRequest.send(null);
}
function getRequest()
{
	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;
}

var bSaf = (navigator.userAgent.indexOf('Safari') != -1);
var bOpera = (navigator.userAgent.indexOf('Opera') != -1);
var bMoz = (navigator.appName == 'Netscape');

function execJS(node) {
  var st = node.getElementsByTagName('SCRIPT');
  var strExec;
  for(var i=0;i<st.length; i++) {     
    if (bSaf) {
      strExec = st[i].innerHTML;
    }
    else if (bOpera) {
      strExec = st[i].text;
    }
    else if (bMoz) {
      strExec = st[i].textContent;
    }
    else {
      strExec = st[i].text;
    }
    try {
      eval(strExec.split("<!--").join("").split("-->").join(""));
    } catch(e) {
      alert(e);
    }
  }
}
function isInteger(value)
{
	return /^-?\d+$/.test(value);
}
function isDigit(value)
{   
	return /^\d$/.test(value);
}
function isEmail(value) 
{
	var s = value;
	if (isEmpty(s)) return false;
	if (/[^@]+@[^@]+/.test(s)) return true;
	return false;
}
function isDate(strYear, strMonth, strDay) 
{
	if (!isInteger(strYear) || !isInteger(strMonth) || !isInteger(strDay)) return false;
	
	var intYear = new Number(strYear);
	var intMonth = new Number(strMonth);
	var intDay = new Number(strDay);
	
	if (intYear < 0 || intMonth < 1 || intDay < 1) return false;
	if (intMonth > 12) return false;
	
	// checking february
	var isLeap = ((intYear % 4)==0);
	if (isLeap && (intMonth==2) && intDay > 29) return false;
	if (!isLeap && (intMonth==2) && intDay > 28) return false;
	
	// checking months
	if ((intDay > 31) && ((intMonth==1) || (intMonth==3) || (intMonth==5) || (intMonth==7) || (intMonth==8) || (intMonth==10) || (intMonth==12))) return false;
	if ((intDay > 30) && ((intMonth==4) || (intMonth==6) || (intMonth==9) || (intMonth==11))) return false;
	
	return true;
}
