var root = "/";

function isEmptyString(str){
  return !/\S/.test(str);
}

function containSpecialChar(str){
  var strRe='[~!@$%^&*()+\\\\|?:"\';><,.]';
  var re = new RegExp(strRe,"i");
  if(re.test(str)){
    return true;
  }
  else{
    return false;
  }
}

var valChars = '0123456789';
function ValidInt(str, min, max)
{
  for(var i=0; i<str.length; i++)
  {
     var ch = str.substring(i,i+1);
     if(valChars.indexOf(ch) == -1) return false;
  }

  if(isNaN(parseInt(str, 10)))
    return false;

  if(str < min || str > max)
    return false;

  return true;
}

function confirmSubmit() {
	return confirm("Are you sure you wish to continue?");
}

function changeSelect(objname, value) {
	var obj = document.getElementById(objname);
	var i;
	for(i=0;i<obj.length;i++) {
		if(obj.options[i].value == value) {
			obj.options[i].selected = "selected";
		};
	}
}

function checkmail(email){
	var emailfilter=/^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i;
	var returnval=emailfilter.test(email);
	
	if (returnval==false){
		//alert("Please enter a valid email address.");
	}
	return returnval
}

function confirmSubmit()
{
var agree=confirm("Are you sure you wish to continue?");
if (agree)
	return true ;
else
	return false ;
}

// This is to be used in ajax call to toggle a value and update the table cell
function toggle(tableName, columnName, columnValA, columnValB, IDcolumnName, IDcolumnVal, elementId) {

var opt = {
		method: 'post',
		postBody: 'table_name='+tableName+'&col_name='+columnName+'&col_vala='+columnValA+'&col_valb='+columnValB+'&id_col_name='+IDcolumnName+'&id='+IDcolumnVal,
		onSuccess: function(t) {
			if (t.responseText != columnValA && t.responseText != columnValB) {
				alert(t.responseText + 'ss');
			}
			else {
				//alert(t.responseText);
				//alert(document.getElementbyId(elementId).innerHTML + "---");
				document.getElementById(elementId).innerHTML=t.responseText;
				$(elementId).className = 'tg_' + t.responseText;
			}
		},
		on404: function(t) {
			alert('Error 404: location "' + t.statusText + '" was not found. ');
		},
		onFailure: function(t) {
			alert('Error ' + t.status + ' -- ' + t.statusText);
		} 
	}

	new Ajax.Request( root + 'ajax/toggle.php', opt);
}

// JavaScript Document
sfHover = function() {
	var sfEls = document.getElementById("menu").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" over";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" over\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);

