/*************Validation for DTCode/admin Login form*****************/
function hash() 
{
	var msg="";
	var i=1;
	var f_focus="";
 
//var str	
//str=document.adminform.password.value;

if(document.getElementById("login").value=="")
{
	if(i==1)
	{
		f_focus='login';
	}
	msg=msg+ i++ +(". Enter your Login. \n");
	document.getElementById("login").className ="errorfields";
}
else
{
	document.getElementById("login").className ="";
}

if(document.getElementById("password").value=="")
{
	if(i==1)
	{
		f_focus='password';
	}
	msg=msg+ i++ +(". Enter your Password. \n");
	document.getElementById("password").className ="errorfields";
}
else
{
	document.getElementById("password").className ="";
}


/*str = hex_md5(str);

var data
var key='<%=randamKey%>'

var pass
pass=key.concat(str);

pass = hex_md5(pass);


document.adminform.password.value=pass;*/

//alert(str);

document.adminform.target="_top"
document.adminform.method="post"
document.adminform.action="loginmd5.asp"
//document.adminform.submit()
	if(msg.length>0)
	{
		i=i-1;
		if(i!=1)
		{
			alert("The following " + i + " errors were found:\n" + msg);
		}
		else
		{
			msg = msg.replace("1.  ","");
			alert("One error was found:\n" + msg);
		}
		return false;
	}
	else
	{
		return true;
	}

}

/*************Validation for Rate the direct taxes code form (query1.asp)*****************/

function Validator()  
{  	
	var msg="";
	var i=1;
	var f_focus="";
  //var msg1='<%=flag%>'
  //var msg2=document.feedform.txtCaptcha.value;
  //msg1=msg1.toUpperCase();
 // msg2=msg2.toUpperCase();
  
if(document.getElementById("username").value=="")
{
	if(i==1)
	{
		f_focus='username';
	}
	msg=msg+ i++ +(". Name cannot be blank. \n");
	document.getElementById("username").className ="errorfields";
}
else
{
	document.getElementById("username").className ="";
}

	if(document.getElementById("username").value!="")
{
	if(!chkbadchar2(document.getElementById("username").value) || !chkchar2(document.getElementById("username").value))
	{
		if(i==1)
		{
			f_focus='username';
		}
		msg=msg+ i++ +(". Name cannot include numbers and special characters. \n");							
		document.getElementById("username").className ="errorfields";
	}
	else
	{
		document.getElementById("username").className ="";
	}
}

	if(document.getElementById("address").value!="")
{
	if(checkcharaddress(document.getElementById("address").value))
	{
		if(i==1)
		{
			f_focus='address';
		}
		msg=msg+ i++ +(". Address can only include [0-9a-zA-Z\.\'\-\,\:\(\)\/\&\;\?]. \n");							
		document.getElementById("address").className ="errorfields";
	}
	else
	{
		document.getElementById("address").className ="";
	}
}

if(document.getElementById("telephone").value!="")
{
	if(!chkbadchar2(document.getElementById("telephone").value) || !chkint(document.getElementById("telephone").value))
	{
		if(i==1)
		{
			f_focus='telephone';
		}
		msg=msg+ i++ +(". Telephone can only include [0-9\(\)\+\-]. \n");							
		document.getElementById("telephone").className ="errorfields";
	}
	else
	{
		document.getElementById("telephone").className ="";
	}
}

if(document.getElementById("email").value !='')
{
	if(!chkbadchar2(document.getElementById("email").value) || !chkmail(document.getElementById("email").value))
	{
		if(i==1)
		{
			f_focus='email';
		}
		msg=msg+ i++ +(". Email can only include [0-9a-z\@\_\-\.]. For example: jeff@abc.com. \n");							
		document.getElementById("email").className ="errorfields";
	}
	else
	{
		document.getElementById("email").className ="";
	}
} 
else if (document.getElementById("email").value == '')  
{  
	if(i==1)
	{
		f_focus='email';
	}
	msg=msg+ i++ +(". Email cannot be blank. \n");
	document.getElementById("email").className ="errorfields";	
} 
else
{
	document.getElementById("email").className ="";
}
 
if ((document.getElementById("radio19").checked) && (document.getElementById("reason").value== ''))
{
	if(i==1)
	{
		f_focus='radio19';
	}
	msg=msg+ i++ +(". Please specify the Reason for rating the Direct Taxes code as Not Satisfactory. \n");
	document.getElementById("reason").className ="errorfields";	
}
else
{
	document.getElementById("radio19").className ="";
}

if ((document.getElementById("radio19").checked)&& (document.getElementById("suggestion").value== ''))
{
	if(i==1)
	{
		f_focus='radio19';
	}
	msg=msg+ i++ +(". Please provide your suggestion for improvement for the Direct Taxes code. \n");
	document.getElementById("suggestion").className ="errorfields";	
}
else
{
	document.getElementById("radio19").className ="";
}

if(document.getElementById("captcha").value =="")
	{
		if(i==1)
		{
			f_focus='captcha';			
		}	
	  msg=msg+ i++ +(". Answer the security question. \n");	 	  
	  document.getElementById("captcha").className ="errorfields";			
	}
	else
	{
		document.getElementById("captcha").className ="";			
	}	
	
if(msg.length>0)
{
	i=i-1;
	if(i!=1)
	{
		alert("The following " + i + " errors were found:\n" + msg);
	}
	else
	{
		msg = msg.replace("1.  ","");
		alert("One error was found:\n" + msg);
	}
	return false;
}
else
{
	return true;
}

}  
function check_reason()
    {
	if(navigator.appName.indexOf("Microsoft") > -1)
	{
		var canSee = 'block'
    }
	else
	{
		var canSee = 'block';
    }
		document.getElementById("reasonfor").style.display = canSee;
		document.getElementById("reason").style.display = canSee;
		document.getElementById("suggestion").style.display = canSee;
	}
	
	function uncheck_reason()
    {
	if(navigator.appName.indexOf("Microsoft") > -1)
	{
		var canSee = 'block'
    }
	else
	{
		var canSee = 'block';
    }
		document.getElementById("reasonfor").style.display ='none';
		document.getElementById("reason").style.display = 'none';
		document.getElementById("suggestion").style.display = 'none';
	}

/*function check_reason()  
{  
	if (document.getElementById("radio19").checked)
	{
		document.getElementById("reasonfor").style.display='block';
	}
	if ((document.feedform.radio16.checked)||(document.feedform.radio17.checked)||(document.feedform.radio18.checked))
	{		
		document.getElementById("reasonfor").style.display='none';
	}
	
}*/

/**************Validation for  MonthYear8 form************/
 function form_submit1()
{
	var msg="";
	var i=1;
	var f_focus="";

 
if(document.getElementById("month1").value=="")
{
	if(i==1)
	{
		f_focus='month1';
	}
	msg=msg+ i++ +(". Select a Month. \n");
	document.getElementById("month1").className ="errorfields";
}
else
{
	document.getElementById("month1").className ="";
}
//alert(document.getElementById("month1").value);


if(document.getElementById("year1").value=="")
{
	if(i==1)
	{
		f_focus='year1';
	}
	msg=msg+ i++ +(". Select a Year. \n");
	document.getElementById("year1").className ="errorfields";
}
else
{
	document.getElementById("year1").className ="";
}
//alert(document.getElementById("year1").value);

//document.form8.method="post"



	if(msg.length>0)
{
	i=i-1;
	if(i!=1)
	{
		alert("The following " + i + " errors were found:\n" + msg);
	}
	else
	{
		msg = msg.replace("1.  ","");
		alert("One error was found:\n" + msg);
	}
	return false;
}
else
{
	return true;
}
}

/**************Validation for  MonthYear18 form************/
 function form_1()
{
	var msg="";
	var i=1;
	var f_focus="";
if(document.getElementById("from_date").value=="")
{
	if(i==1)
	{
		f_focus='from_date';
	}
	msg=msg+ i++ +(". From Date cannot be blank. \n");
	document.getElementById("from_date").className ="errorfields";
}
else
{
	document.getElementById("from_date").className ="";
}


if(document.getElementById("from_date").value!="")
{
	if(validate(document.getElementById("from_date"))==true)
	{
		if(i==1)
	{
		f_focus='from_date';
	}
		msg=msg+ i++ +(". Please enter a valid from date in dd/mm/yyyy format. \n");		
	}
	document.getElementById("from_date").className ="";	
}


if(document.getElementById("to_date").value=="")
{
	if(i==1)
	{
		f_focus='to_date';
	}
	msg=msg+ i++ +(". To Date cannot be blank. \n");
	document.getElementById("to_date").className ="errorfields";
}
else
{
	document.getElementById("to_date").className ="";
}

if(document.getElementById("to_date").value!="")
{
	if(validate(document.getElementById("to_date"))==true)
	{
		if(i==1)
	{
		f_focus='to_date';
	}
		msg=msg+ i++ +(". Please enter a valid to date in dd/mm/yyyy format. \n");		
	}
	document.getElementById("to_date").className ="";	
}


	if(msg.length>0)
	{
		i=i-1;
		if(i!=1)
		{
			alert("The following " + i + " errors were found:\n" + msg);
		}
		else
		{
			msg = msg.replace("1.  ","");
			alert("One error was found:\n" + msg);
		}	
		return false;
	}
	else
	{
		return true;
	}
}


function form_submit(form18)
{
	var bretVal = form_1()
	if (bretVal==true)
	{
		return true;
	}	
	return false;
}


/********************** Month Year 14 Form *********************/

/******************** BudgetQuery Form **********************/
function Validator1()
{		
	var msg="";
	var i=1;	
	var captcha;
	var captchaans=document.getElementById("captcha").value;
	var f_focus="";
	
   if(document.getElementById("username").value=="")
	{
		if(i==1)
		{
			f_focus='username';
		}
		msg=msg+ i++ +(". Name cannot be blank. \n");
		document.getElementById("username").className ="errorfields";
	}
	else
	{
		document.getElementById("username").className ="";
	}

	if(document.getElementById("username").value!="")
{
	if(!chkbadchar2(document.getElementById("username").value) || !chkchar2(document.getElementById("username").value))
	{
		if(i==1)
		{
			f_focus='username';
		}
		msg=msg+ i++ +(". Name cannot include numbers and special characters. \n");							
		document.getElementById("username").className ="errorfields";
	}
	else
	{
		document.getElementById("username").className ="";
	}
}


	if(document.getElementById("address").value!="")
{
	if(checkcharaddress(document.getElementById("address").value))
	{
		if(i==1)
		{
			f_focus='address';
		}
		msg=msg+ i++ +(". Address can only include [0-9a-zA-Z\.\'\-\,\:\(\)\/\&\;\?]. \n");							
		document.getElementById("address").className ="errorfields";
	}
	else
	{
		document.getElementById("address").className ="";
	}
}

if(document.getElementById("telephone").value!="")
{
	if(!chkbadchar2(document.getElementById("telephone").value) || !chkint(document.getElementById("telephone").value))
	{
		if(i==1)
		{
			f_focus='telephone';
		}
		msg=msg+ i++ +(". Telephone can only include [0-9\(\)\+\-]. \n");							
		document.getElementById("telephone").className ="errorfields";
	}
	else
	{
		document.getElementById("telephone").className ="";
	}
}

if(document.getElementById("email").value !='')
{
	if(!chkbadchar2(document.getElementById("email").value) || !chkmail(document.getElementById("email").value))
	{
		if(i==1)
		{
			f_focus='email';
		}
		msg=msg+ i++ +(". Email can only include [0-9a-z\@\_\-\.]. For example: jeff@abc.com. \n");							
		document.getElementById("email").className ="errorfields";
	}
	else
	{
		document.getElementById("email").className ="";
	}
} 
else if (document.getElementById("email").value == '')  
{  
	if(i==1)
	{
		f_focus='email';
	}
	msg=msg+ i++ +(". Email cannot be blank. \n");
	document.getElementById("email").className ="errorfields";	
} 
else
{
	document.getElementById("email").className ="";
}

if(document.getElementById("topic").value =="")
	{
		if(i==1)
		{
			f_focus='topic';			
		}	
	  msg=msg+ i++ +(". Select a Topic. \n");	 	  
	  document.getElementById("topic").className ="errorfields";			
	}
	else
	{
		document.getElementById("topic").className ="";			
	}
	
if(document.getElementById("feedback").value =="")
	{
		if(i==1)
		{
			f_focus='feedback';			
		}	
	  msg=msg+ i++ +(". Please enter your feedback. \n");	 	  
	  document.getElementById("feedback").className ="errorfields";			
	}
	else
	{
		document.getElementById("feedback").className ="";			
	}
	
if(document.getElementById("feedback").value !='')
{
	if(splcharcheck(document.getElementById("feedback").value))
	{
		if(i==1)
		{
			f_focus='feedback';
		}
		msg=msg+ i++ +(". Feedback can only include [0-9a-zA-Z]. \n");							
		document.getElementById("feedback").className ="errorfields";
	}
	else
	{
		document.getElementById("feedback").className ="";
	}
} 

if(document.getElementById("captcha").value =="")
	{
		if(i==1)
		{
			f_focus='captcha';			
		}	
	  msg=msg+ i++ +(". Answer the security question. \n");	 	  
	  document.getElementById("captcha").className ="errorfields";			
	}
	else
	{
		document.getElementById("captcha").className ="";			
	}	
	

	
if(msg.length>0)
	{
		i=i-1;
		if(i!=1)
		{
			alert("The following " + i + " errors were found:\n" + msg);
		}
		else
		{
			msg = msg.replace("1.  ","");			
			alert("One error was found:\n" + msg);
		}
		
		return false;
	}
	else
	{		
		return true;
	}	
}


/********** Common Function **************/

function giveWarning(messageAreaID,messageStr)
{
    warningBoxNode = document.getElementById(messageAreaID);
    document.getElementById(messageAreaID).style.visibility = "visible";
    warningBoxNode.textContent = messageStr;
    warningBoxNode.innerHTML = messageStr;
    return;
}

function setVisibility(id,visibility,text,fieldval,fieldid)
{	
	if(fieldval == ""){
            document.getElementById(id).style.display = "inline";
	        giveWarning(id,text);
            document.getElementById(fieldid).className="errorfields";
        }
      else{
     document.getElementById(id).style.display = visibility;	
	 giveWarning(id,text);	 
	 document.getElementById(id).className='';
     }
	
}


function chktreasurer1(field,id,messageAreaID,messageStr){
if(!chkbadchar2(field) || !chkchar2(field)){
document.getElementById(id).className='errorfields';
document.getElementById(messageAreaID).style.visibility = "visible";
document.getElementById(messageAreaID).innerHTML = messageStr;
document.getElementById(messageAreaID).className='red';
}else{
document.getElementById(id).className='';
document.getElementById(messageAreaID).className='';
}
}

function chktreasurer2(field,id,messageAreaID,messageStr){
if(!chkbadchar2(field) || !chkint(field)){
document.getElementById(id).className='errorfields';
document.getElementById(messageAreaID).style.visibility = "visible";
document.getElementById(messageAreaID).innerHTML = messageStr;
document.getElementById(messageAreaID).className='red';
}else{
document.getElementById(id).className='';
document.getElementById(messageAreaID).className='';
}
}

function chktreasurer3(field,id,messageAreaID,messageStr){
if(splcharcheck(field)){
document.getElementById(id).className='errorfields';
document.getElementById(messageAreaID).style.visibility = "visible";
document.getElementById(messageAreaID).innerHTML = messageStr;
document.getElementById(messageAreaID).className='red';
}else{
document.getElementById(id).className='';
document.getElementById(messageAreaID).className='';
}
}

function chktreasurer4(field,id,messageAreaID,messageStr){
if(chkchar2(field) || !chknoslash(field)){
document.getElementById(id).className='errorfields';
document.getElementById(messageAreaID).style.visibility = "visible";
document.getElementById(messageAreaID).innerHTML = messageStr;
document.getElementById(messageAreaID).className='red';
}else{
document.getElementById(id).className='';
document.getElementById(messageAreaID).className='';
}
}


function IsEmpty(aTextField) {
   if ((aTextField.value==null)) {
      return true;
   }
   else { return false; }
}

function splcharcheck(cha)
{
	for (var i = 0; i < cha.length; i++) {
	var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
	if (iChars.indexOf(cha.charAt(i)) != -1) 
	{			
		return true;
	}
	}
	return false;
}


function chkaddressvalid(field,id,messageAreaID,messageStr){
if(checkcharaddress(field)){
document.getElementById(id).className='errorfields';
document.getElementById(messageAreaID).style.visibility = "visible";
document.getElementById(messageAreaID).innerHTML = messageStr;
document.getElementById(messageAreaID).className='red';
}else{
document.getElementById(id).className='';
document.getElementById(messageAreaID).className='';
}
}
	
function checkcharaddress(cha)
{
	for (var k=0;k<cha.length;k++)
	{
		var iChars = "!@#$%^*+=[]\\\,{}|\"<>_";
		if (cha.indexOf(iChars[k]) != -1)
		{
			return true;
		}
	}
	return false;	
}	

function chktelephonevalid(field,id,messageAreaID,messageStr){
if(checktelephone(field) || chkchar2(field) || chksplcharald(field)){
document.getElementById(id).className='errorfields';
document.getElementById(messageAreaID).style.visibility = "visible";
document.getElementById(messageAreaID).innerHTML = messageStr;
document.getElementById(messageAreaID).className='red';
}else{
document.getElementById(id).className='';
document.getElementById(messageAreaID).className='';
}
}


function chkspldate(cha)
{
	for (var k=0;k<cha.length;k++)
	{
		var iChars = "\"!@#$%^&*()=[]\\\';,.{}|:<>_?";
		if (cha.indexOf(iChars[k]) != -1)
		{
			return true;
		}
	}
	return false;	
}


function checktelephone(cha)
{
	for (var k=0;k<cha.length;k++)
	{
		var iChars = "!@#$%^&*()=[]\\\';,./{}|\":<>_?";
		if (cha.indexOf(iChars[k]) != -1)
		{
			return true;
		}
	}
	return false;	
}

function chkemailvalid(field,id,messageAreaID,messageStr){
if(checkemail(field) || (!chkmail(field))){
document.getElementById(id).className='errorfields';
document.getElementById(messageAreaID).style.visibility = "visible";
document.getElementById(messageAreaID).innerHTML = messageStr;
document.getElementById(messageAreaID).className='red';
}else{
document.getElementById(id).className='';
document.getElementById(messageAreaID).className='';
}
}


function checkemail(cha)
{
	for (var k=0;k<cha.length;k++)
	{
		var iChars = " !#$%^&*()=[]\\\';,/{}|\":<>?";
		if (cha.indexOf(iChars[k]) != -1)
		{
			return true;
		}
	}
	return false;	
}

function chkmail(str) 
{
	var at="@";
	var dot=".";
	var lat=str.indexOf(at);
	var lstr=str.length;
	var ldot=str.indexOf(dot);
	
	if (str.indexOf(at)==-1)
	{
	  // alert("Invalid E-mail ID");
	   return false;
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr)
	{
	   //alert("Invalid E-mail ID");
	   return false;
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr)
	{
		//alert("Invalid E-mail ID");
		return false;
	}

	 if (str.indexOf(at,(lat+1))!=-1)
	 {
		//alert("Invalid E-mail ID");
		return false;
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot)
	 {
		//alert("Invalid E-mail ID");
		return false;
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
		//alert("Invalid E-mail ID")
		return false
	 }
	
	 if (str.indexOf(" ") != -1)
	 {
		//alert("Invalid E-mail ID");
		return false;
	 }

	 return true;					
}


function chkint(str) 
{
	alphabets=" 0123456789";

	for(i=0;i<str.length;i++)
	{
		if(alphabets.indexOf(str.charAt(i)) == -1)
		{
			//alert ("Value entered is not numeric, Please Re-Enter");
			return false;
		}
	}	 
	
	return true;
}

function chkchar2(str)
{
	alphabets="abcdefghijklmnopqrstuvwxyz";
	
	for(i=0;i<str.length;i++)
	{
		if(alphabets.indexOf(str.toLowerCase().charAt(i)) == -1)
		{
			//alert ("Invalid characters found,Correct the information provided in the text box/area where the cursor blink.");
			return false;
		}
	}
	return true;
}

function chkbadchar2(str)
{
  	badch = new Array("select","drop","--","insert","delete","<",">","#","(",")","{","}","[","]","+","!","~","%","$","^","*");
	
	for (var k=0;k<10;k++)
	{
		if (str.toLowerCase().indexOf(badch[k]) != -1)
		{
			//alert ("Invalid characters found,Correct the information provided in the text box/area where the cursor blink.");
			return false;
		}
	}
	return true;	
}

function chksplcharald(str)
{
	alphabets="_.?@$%/\&*,;:'(){}[]`~!^| \t\r\n";
	
	for(i=0;i<str.length;i++)
	{
		if(alphabets.indexOf(str.toLowerCase().charAt(i)) == -1)
		{
			//alert ("Invalid characters found,Correct the information provided in the text box/area where the cursor blink.");
			return false;
		}
	}
	return true;
}

function chknoslash(str)
{
	alphabets=" 0123456789/";

	for(i=0;i<str.length;i++)
	{
		if(alphabets.indexOf(str.charAt(i)) == -1)
		{
			//alert ("Value entered is not numeric, Please Re-Enter");
			return false;
		}
	}	 
	
	return true;
}	


function validate(isField){

splitDate = isField.value.split("/");
if (splitDate[2] && splitDate[2].length == 2){splitDate[2] = "20"+splitDate[2]}
refDate = new Date(splitDate[1]+"/"+splitDate[0]+"/"+splitDate[2]);
if (splitDate[1] < 1 || splitDate[1] > 12 || refDate.getDate() != splitDate[0] || splitDate[2].length != 4 || (!/^20/.test(splitDate[2])))
	{
		isField.className ="errorfields";
		return true;
	}
	return false;
}