// JavaScript Document
function isBlank(objname,msg,divname)
{
//	if(trimAll(objname.value) == "")
	if(objname.value == "")

	{	
		_show(msg,divname);	
		return 1;
	}
	else
	{
		_hide(divname);
		return 0;
	}	
}

// function to check textarea is blank or not ----- function added by shreya on 02/02/09
function isTextareaBlank(objname,msg,divname)
{
	if(objname.value.length==0)

	{	
		_show(msg,divname);	
		return 1;
	}
	else
	{
		_hide(divname);
		return 0;
	}	
}
//function end.

function isCompare(objname,value,msg,divname)
{	
	if(trimAll(objname.value) == trimAll(value))
	{	
		_show(msg,divname);	
		return 1;
	}
	else
	{
		_hide(divname);
		return 0;
	}	
}

function ispwdcompare(objname1,objname2,msg,divname)
{
	if(trimAll(objname1.value) != trimAll(objname2.value))
	{
		_show(msg,divname);
		return 1;
	}
	else
	{
		_hide(divname);
		return 0;
	}
}

function isselectcheck(frmObj,msg,divname)
{
	var flag = 0;
	var strid = "0";
	
	for(i = 0; i < frmObj.elements.length; i++) 
	{		
		elm = frmObj.elements[i]
		if (elm.type == "checkbox"  && !isNaN(elm.id)) 
		{			
			if (elm.checked)
			{				
				if (flag==0)
				{					
					flag = 1;					
				}			
			}
		}
	}
	if (flag == 1)
	{
		_hide(divname);
		return 0;
	}
	else
	{
		_show(msg,divname);
		return 1;
		//alert("- Select at least one record.");
		//return false;
	}
}

function isselectradio(frmObj,msg,divname)
{
	var flag = 0;
	var strid = "0";
	
	for(i = 0; i < frmObj.elements.length; i++) 
	{		
		elm = frmObj.elements[i]
		if (elm.type == "radio"  && !isNaN(elm.id)) 
		{			
			if (elm.checked)
			{			
				flag = 1;	
				break;				
			}
		}
	}
	if (flag == 1)
	{
		_hide(divname);
		return 0;
	}
	else
	{	
		_show(msg,divname);
		return 1;
		//alert("- Select at least one record.");
		//return false;
	}
}




//code added by shreya for check list box is selected or not.
function isselectlistbox(frmObj,msg,divname)
{
	var flag = 0;
	var strid = "0";
	alert(frmObj);
	
	for(i = 0; i < frmObj.length; i++) 
	{		
		elm = frmObj.options[i];
		alert(elm);			
			if (elm.selected)
			{			
				flag = 1;	
				break;				
			}
		
	}
	if (flag == 1)
	{
		_hide(divname);
		return 0;
	}
	else
	{	
		_show(msg,divname);
		return 1;
		//alert("- Select at least one record.");
		//return false;
	}
}


//code end










function isEmail(objname,msg,divname)
{	
	if (objname.value != "")
	{			
		var valEmail = objname.value;
		var reg = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		//var reg = /^[a-z][a-z_0-9\-\.]+@[a-z_0-9\-\.]+\.[a-z]{2,4}$/i
		if(!reg.test(valEmail))
		{			
			_show(msg,divname);
			return 1;
		}
		else
		{				
			_hide(divname);		
			return 0;
		}	
	}
	else
	{
		_show(msg,divname);
		return 1;	
	}
}

function iscomboselect(objname,compare,msg,divname)
{	
	//alert("hi");
	//alert(objname);
	if(objname.value == compare)
	{
		//alert("return 1");
		_show(msg,divname);		
		return 1;
	}
	else
	{
		//alert("return 0");	
		_hide(divname);	
		return 0;
	}
}

function isselect(objname,name,msg,divname)
{	
	var fav_count = objname.elements[name].length;
	var is_checked = 0;	

	for (var i = 0; i < fav_count; i++) 
	{
		if(objname.elements[name][i].checked)
		{	
			is_checked++;
		}		
	}
	if(is_checked==0)
	{
		_show(msg,divname);	
		return 1;
	}
	else
	{		
		_hide(divname);
		return 0;
	}	
}

function isPhone(objname,msg,divname)
{
	if (trimAll(objname.value) != "")
	{
		if (isNaN(parseInt(trimAll(objname.value))) || parseInt(trimAll(objname.value)) < 0)
		{			
			_show(msg,divname);	
			return 1;
		}
		else
		{
			_hide(divname);
			return 0;
		}
	}
	else
	{
		return 0;
	}
}

function ischeckpwdlength(objname,msg,divname)
{	
	var newpass = trimAll(objname.value);
	if(newpass.length < 6)
	{		
		_show(msg,divname);
		return 1;
	}
	else
	{
		_hide(divname);
		return 0;
	}
}

function isZip(objname,msg,divname)
{
	if (objname.value != "")
	{
		var valZip = objname.value;
		var reg = /^\d{5}[- ]\d{4}|\d{5,6}$/;
		if(reg.test(valZip))	
		{
			_show(msg,divname);	
			return 1;
		}
		else
		{		
			_hide(divname);
			return 0;
		}
	}
	else
	{
		_show(msg,divname);	
		return 1;
	}
}

function datecompare(date1,date2)
{
	_a = datefrom = date1.split("/");
	_c = datefrom = date2.split("/");
	
	var date1 = new Date(_a[2],_a[1],_a[0]);
	var date2 = new Date(_c[2],_c[1],_c[0]);
	
	var date1Comp = date1.getTime(); // milliseconds
	var date2Comp = date2.getTime();	
	
	if (date1Comp > date2Comp)
	{	  
	  return false;		
	}
	else
	{	
		return true;
	}
}

function isimage(obj,msg,divname)
{
	if (obj.value.length>0)
	{
		if (obj.value.length>4)
		{
			var ext = obj.value.substring(obj.value.length-3,obj.value.length);
			if (ext == 'jpg' || ext == 'JPG' || ext == 'jpeg' || ext == 'JPEG' || ext == 'gif' || ext == 'GIF' || ext == 'png' || ext == 'PNG')
			{
				_hide(divname);
				return 0;
			}
			else
			{
				/*alert('hi');
				return false;*/
				_show(msg,divname);	
				return 1;
				//alert('- Upload only .jpg,.gif Or .png File')
				//obj.value="";								
				//return false;
			}
		}
		else
		{			
			_show(msg,divname);	
			return 1;
			//alert('- Upload only .jpg,.gif Or .png file')
			//obj.value="";			
			//return false;
		}
	}
}

// updated
function isDate(IsItReal,msg,divid)
{
	if (IsItReal.value != "")
	{
		var valDate = IsItReal.value;
		/*var reg = /^(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.]((19|20)[0-9][0-9]+)$/;*/
		var reg = /^((19|20)[0-9][0-9]+)[-](0[1-9]|1[012])[-](0[1-9]|[12][0-9]|3[01])$/;
		if(reg.test(valDate))
		{
			_hide(divid);
			return 0;
		}
		else
		{
			_show(msg,divid);	
			return 1;
		}
	}
	else
	{	
		_hide(divid);
		return 0;
	}
}

// updated
function IsNumeric(sText,msg,divid)
{
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;
   for (i = 0; i < sText.length && IsNumber == true; i++)
   {
      Char = sText.charAt(i);
      if (ValidChars.indexOf(Char) == -1)
	  {
       	_show(msg,divid);	
		return 1;
	  }
   }
   _hide(divid);
   return 0;
}

function _show(msg,objdiv)
{
	if(document.getElementById(objdiv))
	{
		document.getElementById(objdiv).innerHTML = msg;	
	}
}

function _hide(objdiv)
{
	if(document.getElementById(objdiv))
	{
		document.getElementById(objdiv).innerHTML = '';	
	}
}


function trimAll(sString)
{
	while (sString.substring(0,1) == '')
	{
		sString = sString.substring(1, sString.length);
	}
	
	while (sString.substring(sString.length-1, sString.length) == ' ')
	{
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}

function verifycode(code,value,msg,divname)
{
	if(trimAll(value) != code)
	{	
		_show(msg,divname);	
		return 1;
	}
	else
	{
		_hide(divname);
		return 0;
	}	
}
//code added by Khyati 06-07-2009 for pwd strenth
function testPassword(passwd)
{
var description = new Array();
description[0] = "<table border=0 cellpadding=0 cellspacing=0><tr><td align=right class=bold width=100>Strength:</td><td><table cellpadding=0 cellspacing=2 style=padding-left:8px;><tr><td height=15 width=30 bgcolor=#ff0000></td><td height=15 width=120 bgcolor=#dddddd></td></tr></table></td><td class=bold>Weakest</td></tr></table>";
description[1] = "<table border=0 cellpadding=0 cellspacing=0><tr><td align=right class=bold width=100>Strength:</td><td><table cellpadding=0 cellspacing=2 style=padding-left:8px;><tr><td height=15 width=60 bgcolor=#bb0000></td><td height=15 width=90 bgcolor=#dddddd></td></tr></table></td><td class=bold>Weak</td></tr></table>";
description[2] = "<table border=0 cellpadding=0 cellspacing=0><tr><td align=right class=bold width=100>Strength:</td><td><table cellpadding=0 cellspacing=2 style=padding-left:8px;><tr><td height=15 width=90 bgcolor=#ff9900></td><td height=15 width=60 bgcolor=#dddddd></td></tr></table></td><td class=bold>Medium</td></tr></table>";
description[3] = "<table border=0 cellpadding=0 cellspacing=0><tr><td align=right class=bold width=100>Strength:</td><td><table cellpadding=0 cellspacing=2 style=padding-left:8px;><tr><td height=15 width=120 bgcolor=#00bb00></td><td height=15 width=30 bgcolor=#dddddd></td></tr></table></td><td class=bold>Strong</td></tr></table>";
description[4] = "<table border=0 cellpadding=0 cellspacing=0><tr><td align=right class=bold width=100>Strength:</td><td><table cellpadding=0 cellspacing=2 style=padding-left:8px;><tr><td height=15 width=150 bgcolor=#00ee00></td></tr></table></td><td class=bold>Strongest</td></tr></table>";
description[5] = "<table border=0 cellpadding=0 cellspacing=0><tr><td align=right class=bold width=100>Strength:</td><td><table cellpadding=0 cellspacing=2 style=padding-left:8px;><tr><td height=15 width=150 bgcolor=#dddddd></td></tr></table></td><td class=bold>Begin Typing</td></tr></table>";

		var intScore   = 0
		var strVerdict = 0
		
		// PASSWORD LENGTH
		if (passwd.length==0 || !passwd.length)                         // length 0
		{
			intScore = -1
		}
		else if (passwd.length>0 && passwd.length<5) // length between 1 and 4
		{
			intScore = (intScore+3)
		}
		else if (passwd.length>4 && passwd.length<8) // length between 5 and 7
		{
			intScore = (intScore+6)
		}
		else if (passwd.length>7 && passwd.length<12)// length between 8 and 15
		{
			intScore = (intScore+12)
		}
		else if (passwd.length>11)                    // length 16 or more
		{
			intScore = (intScore+18)
		}
		
		
		// LETTERS (Not exactly implemented as dictacted above because of my limited understanding of Regex)
		if (passwd.match(/[a-z]/))                              // [verified] at least one lower case letter
		{
			intScore = (intScore+1)
		}
		
		if (passwd.match(/[A-Z]/))                              // [verified] at least one upper case letter
		{
			intScore = (intScore+5)
		}
		
		// NUMBERS
		if (passwd.match(/\d+/))                                 // [verified] at least one number
		{
			intScore = (intScore+5)
		}
		
		if (passwd.match(/(.*[0-9].*[0-9].*[0-9])/))             // [verified] at least three numbers
		{
			intScore = (intScore+5)
		}
		
		
		// SPECIAL CHAR
		if (passwd.match(/.[!,@,#,$,%,^,&,*,?,_,~]/))            // [verified] at least one special character
		{
			intScore = (intScore+5)
		}
		
																 // [verified] at least two special characters
		if (passwd.match(/(.*[!,@,#,$,%,^,&,*,?,_,~].*[!,@,#,$,%,^,&,*,?,_,~])/))
		{
			intScore = (intScore+5)
		}
	
		
		// COMBOS
		if (passwd.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/))        // [verified] both upper and lower case
		{
			intScore = (intScore+2)
		}

		if (passwd.match(/(\d.*\D)|(\D.*\d)/))                    // [FAILED] both letters and numbers, almost works because an additional character is required
		{
			intScore = (intScore+2)
		}
 
																  // [verified] letters, numbers, and special characters
		if (passwd.match(/([a-zA-Z0-9].*[!,@,#,$,%,^,&,*,?,_,~])|([!,@,#,$,%,^,&,*,?,_,~].*[a-zA-Z0-9])/))
		{
			intScore = (intScore+2)
		}
	
	
		if(intScore == -1)
		{
		   strVerdict = description[5];
		}
		else if(intScore > -1 && intScore < 16)
		{
		   strVerdict = description[0];
		}
		else if (intScore > 15 && intScore < 25)
		{
		   strVerdict = description[1];
		}
		else if (intScore > 24 && intScore < 35)
		{
		   strVerdict = description[2];
		}
		else if (intScore > 34 && intScore < 45)
		{
		   strVerdict = description[3];
		}
		else
		{
		   strVerdict = description[4];
		}
	
	document.getElementById("Words").innerHTML= (strVerdict);	
}
//end of code.

// code added by shreya

/*function ValidateDate(CtrlSDate,CtrlEDate,dn)
    {
    var SDate = CtrlSDate;    	
    var EDate =  CtrlEDate;
       
          
    var alertReason1 =  'End Date must be greater than or equal to  Start Date.' 
    
	
    var endDate = new Date(EDate);    	
    
	alert("check end date");
	alert(endDate);
	var startDate= new Date(SDate);
     
    if(startDate > endDate)
    {
	    _show(alertReason1,dn);
	    return 1;
    }
   
}*/