window . onerror = null;
var valid = true;
/*******************************************************/
function redirectTo(loc)
{
	location.href = loc;
}
/**********************************************************/

function removeBElm(parntNode,ChldNode){
  var para = document.getElementById(parntNode);
  var boldElm = document.getElementById(ChldNode);
  var removed = para.removeChild(boldElm);
  return removed;
}
/***********************************************************/

function validateRegForm(ctrls,errclass,passlen)
{
	var firstCtrl = null;
	var retVal = true;
	var glue = "Enter ";
	var ctrlArray = ctrls.split(",");
	for(ctrl=0; ctrl<ctrlArray.length; ctrl++)
	{
		c = document.getElementById(ctrlArray[ctrl]);
		s = ctrlArray[ctrl]+"_span";
		
		if(c.type == 'select-one' || c.type == 'file'){
			
			glue = "Select ";
			if(ctrlArray[ctrl] == "dd" ||ctrlArray[ctrl] == "mm" ||ctrlArray[ctrl] == "yy"){
				
				ctrlName = " Date of Birth";
			}else{
				ctrlName = ctrlArray[ctrl];
			}
		}else{
			glue = "Enter ";
			ctrlName = ctrlArray[ctrl];
		}
		
		prnt = c.parentNode;
		elm = document.getElementById("span_"+c.id);
		if(elm && elm != "undefined"){
			try{
				prnt.removeChild(elm);
			}catch(e){}
		}
		elm = document.createElement("span");
		elm.id = "span_"+c.id;
		
		
		prnt.appendChild(elm);
		
		elm.className = "";
		elm.innerHTML = "";
		if(c.value.trim() == ""){
			if(!firstCtrl){
				firstCtrl = c;
			}
//			alert(ctrlArray[ctrl]);
			retVal = false;
			elm.className = errclass;
			ctrlName = ctrlName.replace("_"," ");
			char = ctrlName.charAt(0).toUpperCase();
			elm.innerHTML = glue+char+ctrlName.substr(1,ctrlName.length);
			
		}
		
	}
	if(!retVal){
		firstCtrl.focus();
		return false;
	}
	passArray = getElementsByType('password');
	if(passArray != ""){
	//alert(cntrl + " >> "+document.getElementById(cntrl).src);
		if(passArray[1]){
			c = passArray[0];
			prnt = c.parentNode;
			elm = document.getElementById("span_"+c.id);
			if(elm && elm != "undefined"){
				try{
					prnt.removeChild(elm);
				}catch(e){}
			}
			elm = document.createElement("span");
			elm.id = "span_"+c.id;
			elm.innerHTML = "";
			elm.ClassName = null;
			prnt.appendChild(elm);
			
			if(passArray[0].value.length < passlen){
				elm.className = errclass;
				elm.innerHTML = "Password should be minimum "+passlen+" characters";
				retVal = false;
				firstCtrl = c;
			}
			
			if(retVal){
				elm.className = null;
				elm.innerHTML = "";
				if((passArray[0].value.trim() != "") && passArray[0].value != passArray[1].value){
					passArray[0].value = "";
					passArray[1].value = "";
					elm.className = errclass;
					elm.innerHTML = "Password and confirm password dosen't match"
					retVal = false;
					firstCtrl = c;
				}
			}
		}
	}
	if(document.getElementById("email") && document.getElementById("email") != "undefined"){
			c = document.getElementById("email");
			prnt = c.parentNode;
			elm = document.getElementById("span_"+c.id);
			if(elm && elm != "undefined"){
				try{
					prnt.removeChild(elm);
				}catch(e){}
			}
			elm = document.createElement("span");
			elm.id = "span_"+c.id;
			elm.innerHTML = "";
			elm.ClassName = null;
			prnt.appendChild(elm);
		
		if(!validateEmail(document.getElementById("email").value)){
			elm.className = errclass;
			elm.innerHTML = "Invalid Email";
			retVal = false;
			firstCtrl = c;
		}
	}
	if(!retVal){
		firstCtrl.focus();
	}
//	return false;
	return retVal;
}

/*********************************************************************************************/
function returnSelectedCheckboxes(xclude)
{

   selectedCtrls = "";
   ctrlsArray = getElementsByType("checkbox");

   for (i=0; i<ctrlsArray.length; i++)
   {
	   if(ctrlsArray[i].checked && (ctrlsArray[i].name != xclude || ctrlsArray[i].id != xclude) )
	   {
		 if(ctrlsArray[i].name)
		 {
		 	selectedCtrls += "'" + ctrlsArray[i].name + "',";
		 }
		 else
		 {
			 selectedCtrls += "'" + ctrlsArray[i].id + "',";
		 }
	   }
   }
   if(selectedCtrls.length == 0)
   {
	   alert("Please select at leaset one record");
	   return false;
   }
   else
   {
   		selectedCtrls = selectedCtrls.substring(0,selectedCtrls.length-1);
   		return selectedCtrls;
   }
   
}

String.prototype.trim = function() {
	return this.replace(/^\s+|\s+$/g,"");
}
String.prototype.ltrim = function() {
	return this.replace(/^\s+/,"");
}
String.prototype.rtrim = function() {
	return this.replace(/\s+$/,"");
}
/***************************************************************************/
function getElementsByType(ctype){
	j = 0;
	
	p = Array();
	ctrlsArray = document.getElementsByTagName("input");

	for (i=0; i<ctrlsArray.length; i++)
	{
		if(ctrlsArray[i].type == ctype)
		{
			p[j++] = ctrlsArray[i];
		}
	}

	return p;
}
/******************************************************************************/
// Setting the selected index of combo box just pass the combobox and value

function selectComboOption(cntrl,val)
 {
	 var selindex = 0;
	 if(val != "")
		 {
			 for(i = 0; i < cntrl.options.length; i++)
                {
                		 	
                	if(cntrl.options[i].value == val || cntrl.options[i].text == val)
                	{
                		selindex = i;
                		
                		break;
                	}
                }	
	         cntrl.selectedIndex = selindex;
		}
   }

function selectComboOptionById(cid,val)
{
	cntrl = document.getElementById(cid);
	 var selindex = 0;
	 if(val != "")
		 {
			 for(i = 0; i < cntrl.options.length; i++)
                {
                		 	
                	if(cntrl.options[i].value == val || cntrl.options[i].text == val)
                	{
                		selindex = i;
                		
                		break;
                	}
                }	
	         cntrl.selectedIndex = selindex;
		}
   }
/************************************************************************************/
function toggleSelect(v)
{

	ctrlArray = getElementsByType("checkbox");
//	alert(ctrlArray);
	if(v)
	{	
		for(i=0; i<ctrlArray.length; i++)
		{
			ctrlArray[i].checked = true;
		}
	}
	else
	{	
		for(i=0; i<ctrlArray.length; i++)
		{
			ctrlArray[i].checked = false;
		}
	}
}
/***********************************************************************************/
function toggleCheckbox(x)
{
	//alert(x);
	ctlArray = getElementsByType("checkbox");
	flag = false;
	for(i=0; i<ctlArray.length; i++)
	{
		//alert(ctlArray[ctl].name);		
		if(ctlArray[i].checked == false  && ctlArray[i].name != x.name)
		{
			flag = true;
		}
	}

if(!flag)
	x.checked = true;
else
	x.checked = false;
}
/******************************************************************************/
function resetTextBoxes(fldString)
{
	fldArray = fldString.split(",");
	for(i=0; i<fldArray.length; i++)
	{
		
		document.getElementById(fldArray[i]).value = "";
		//alert(document.getElementById(fldArray[i]).value);
		
	}
	return false;
}
/***************************************************************************************/
var activeTrs = new Array();
function assignColor(tr,oldColor,newColor)
{
	if(activeTrs[tr.rowIndex])
	{
		tr.bgColor = oldColor;
		activeTrs[tr.rowIndex] = 0;
	}
	else
	{
		tr.bgColor = newColor;
		activeTrs[tr.rowIndex] = 1;
	}

}
function mouseOutColor(tr,oldColor,newColor)
{

	if(activeTrs[tr.rowIndex])
		tr.bgColor = newColor;
	else
		tr.bgColor = oldColor;
}
/*****************************************************************************************/
function validateEmail(val){
	if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(val)))
	return false;
	return true;
}
/*************************************************************************/
function validateEmails(c,errclass,omit){
	if((omit == 1) && (c.value.trim() == "")){
		return true;
	}
		var prnt = c.parentNode;
		var elm = document.getElementById("span_"+c.id);
		if(elm && elm != "undefined"){
			try{
				prnt.removeChild(elm);
			}catch(e){}
		}
		elm = document.createElement("span");
		elm.id = "span_"+c.id;
		elm.innerHTML = "";
		elm.ClassName = null;
		prnt.appendChild(elm);
		if(!validateEmail(c.value)){
			elm.className = errclass;
			elm.innerHTML = "Invalid Email";
			return false;
		}
	
	return true;
}
/*************************************************************************/
function selectCheckBox(ctrl,val,matchValue){
	if(val == matchValue){
		ctrl.checked = true;
	}
}
function selectCheckBoxById(cid,val,matchValue){
	ctrl = document.getElementById(cid);
	if(val == matchValue){
		ctrl.checked = true;
	}
}
/******************************************************************************/
Array.prototype.IndexOf = function(elm){
 	for(i=0; i<this.length; i++){
		if(this[i] == elm){
			return i;
		}
	}
	return -1;
}
