function isEmpty(mytext) {
	var re = /^\s{1,}$/g; //match any white space including space, tab, form-feed, etc.
	if ((mytext.length==0) || (mytext==null) || ((mytext.search(re)) > -1)) {
		return true;
	}
	else {
		return false;
	}
}

function isNumber(numString) {
	var reNumber = /^\d+.?\d*$/;	
	if(numString.search(reNumber) == -1)
		return false;
	else
		return true;
}

function formSelectIsEmpty(selectObject) {
	if (selectObject.selectedIndex < 0 || isEmpty(selectObject.options[selectObject.selectedIndex].value)) {
		return true;
	} else {
		return false;
	}
}

function setSelectedItem(selectObject, selectedValue) {
	for (i=0; i < selectObject.length; i++) {
		if(selectObject.options[i].value == selectedValue) {
			selectObject.selectedIndex = i;
			break;
		}
    }
}

function formCheckBoxIsEmpty(checkObject) {
	var total = 0;
	if(checkObject.length) {
		var max = checkObject.length;
		for (var idx = 0; idx < max; idx++) {
			if (eval("checkObject[" + idx + "].checked") == true) {
				total += 1;
			}
		}
	} else if (eval("checkObject.checked") == true) {
		total += 1;
	}
		
	if (total == 0) {
		return true;
	} else {
		return false;
	}
}


function initApaweb() {
		if (document.getElementById) {
			var xmlHttp = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
		}

		if (xmlHttp) {
			var url = "/apaweb/css/ie.css?d=" + new Date();
			var el = document.getElementById("fudge");
			xmlHttp.onreadystatechange = function() {
				if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
				 	el.innerHTML = xmlHttp.responseText + url;
				}
			}
			xmlHttp.open("GET", url , true);
			xmlHttp.send(null);
		}
}
/*** Ajax stuff ***/

// Example: ajaxManager('load_page', 'basic.xml', 'idOfTheContainer', 'waiting message');
//			ajaxManager('load_page', 'thepage.jsp?param1=1&param2=2', 'textAreaId', 'please wait...');
function ajaxManager() {
	var args = ajaxManager.arguments;
	switch (args[0]) {
		case "load_page":
			if (document.getElementById) {
				var xmlHttp = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
			}
			var el = document.getElementById(args[2]);
			el.innerHTML = args[3];
			if (xmlHttp) {
				xmlHttp.onreadystatechange = function() {
					if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
						el.innerHTML = xmlHttp.responseText;
						// Finding any javascript element in the response, and execute them
						var re = /<script\b.*?>(.*?)<\//ig;
						var match;
						while (match = re.exec(el.innerHTML)) {
							eval(match[1]);
						}
					}
				}
			xmlHttp.open("GET", args[1], true);
			xmlHttp.send(null);
			}
			break;		
		// Example: ajaxManager('document.write', 'ajax.jsp');
		case "document.write":
			if (document.getElementById) {
				var xmlHttp = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
			}
			if (xmlHttp) {
				xmlHttp.onreadystatechange = function() {
					if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
						document.write(xmlHttp.responseText);
						// Finding any javascript element in the response, and execute them
						var re = /<script\b.*?>(.*?)<\//ig;
						var match;
						while (match = re.exec(xmlHttp.responseText)) {
							eval(match[1]);
						}						
					}
			}
			xmlHttp.open("GET", args[1], true);
			xmlHttp.send(null);
		}
		break;
// Example: ajaxManager('change2places', 'ajax.jsp', 'div1', 'waiting message1', 'div2', 'waiting message2');
		case "change2places":
			if (document.getElementById) {
				var xmlHttp = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
			}
			var element1 = document.getElementById(args[2]);
			element1.innerHTML = args[3];
			var element2 = document.getElementById(args[4]);
			if(args[5])
				element2.innerHTML = args[5];
			
			if (xmlHttp) {
				xmlHttp.onreadystatechange = function() {
					if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
						var arrayResult = xmlHttp.responseText.split("ZZZsplitterZZZ")
						element1.innerHTML = arrayResult[0];
						element2.innerHTML = arrayResult[1];
						// Finding any javascript element in the response, and execute them
						var re = /<script\b.*?>(.*?)<\//ig;
						var match;
						while (match = re.exec(xmlHttp.responseText)) {
							eval(match[1]);
						}
					}
			}
			xmlHttp.open("GET", args[1], true);
			xmlHttp.send(null);
		}
		break;
	}
}

function isEmail(str) {
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    return false
		 }

 		 return true					
}

function chooseTab(url, position, max) {
	var element1 = document.getElementById("messagebox");
	element1.src = url;
	for (i=1; i <= max; i++) {
		var node = document.getElementById("tab" + i);
		if(node != null){
			if(position == i)
				node.className = "tab1";
			else
				node.className = "tab2";
		}
	}
}