﻿// JScript File


function Validate_Input(e,chkFor)
{
//alert(e.value);
if (chkFor=='Num')
return IsNumbers(e);
else if (chkFor=='Alpha')
return IsAlpha(e);
else if (chkFor=='AlphaNum')
return IsAlphaNum(e);
else if (chkFor=='Email')
return eCheck(e);
else if (chkFor=='IsValid')
return IsValid(e);
else if (chkFor=='IsValid1')
return IsValid(e);
}
function IsNumbers(e)
			{				
											
				        sText=trim(e.value);					
					
						var ValidChars = "0123456789.";
						var IsNumber=true;
						var Char;
						
				if 	(sText!="")
				{
						for (i = 0; i < sText.length && IsNumber == true; i++) 
						{ 
							Char = sText.charAt(i); 
							if (ValidChars.indexOf(Char) == -1) 
							{
								alert("Value should be numeric");
								e.focus();								
								IsNumber = false;
							}
							else
							{
								IsNumber = true;
							}
						}
				
				}
					return IsNumber;
			}

function eCheck(e)
		{				
			//var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
			//var emailExp =/^(\".*\"|[A-Za-z]\w*)@(\[\d{1,3}(\.\d{1,3}){3}]|[A-Za-z]\w*(\.[A-Za-z]\w*)+)$/;
			var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
			if(e.value !="")
			{
				if(e.value.match(emailExp))
				{
					return true;
				}
				else
				{
					alert('Invalid E-mail ID');
					e.focus();					
					return false;
				}
			}		
		}

function IsAlphaNum(e)
{
    var regex=/^[A-Z a-z 0-9]*$/g;
     
    // do the comparison, if we have a match
    if (e.value.match(regex))
    {
        return true;
    }
    else
    {
        alert('Enter alphanumeric characters only');
	    e.focus();					
	    return false;
    }

}

function IsAlpha(e)
{
    var regex=/^[A-Z a-z]*$/g;
     
    // do the comparison, if we have a match
    if (e.value.match(regex))
    {
        return true;
    }
    else
    {
        alert('Enter alphbets only');
	    e.focus();					
	    return false;
    }

}


function IsValid1(e)
{
     
    var str=trim(e.value);   
    var invalidChars="";
    var IsValid=true;
    
       if (str.indexOf('&') != -1) 
    {   
     
     invalidChars=invalidChars + " &";
     IsValid=false;
    }
    
    if (str.indexOf('|') != -1) 
    {   
     
     invalidChars=invalidChars + " |";
     IsValid=false;
    }
    
   
   if (str.indexOf(';') != -1) 
    {
     invalidChars=invalidChars + " ;";
     IsValid=false;
    }
    
    if (str.indexOf('"') != -1) 
    {
      invalidChars=invalidChars + ' "';
      IsValid=false;
    }
    
    if (str.indexOf('--',0) != -1) 
    {   
      invalidChars=invalidChars + " --";
      IsValid=false;
    }
     if (str.indexOf('<%',0) != -1) 
    {     
      invalidChars=invalidChars + " <%";
      IsValid=false;
    }
     if (str.indexOf('%>',0) != -1) 
    {    
     invalidChars=invalidChars + " %>";
     IsValid=false;
    }
     if (str.indexOf('\\n',0) != -1) 
    {     
     invalidChars=invalidChars + " \\n";
     IsValid=false;
    }
     if (str.indexOf('\\N',0) != -1) 
    {   
     invalidChars=invalidChars + " \\N";
     IsValid=false;
    }
    
     if (str.indexOf('/*',0) != -1) 
    {   
     invalidChars=invalidChars + " /*";
     IsValid=false;
    }
    
     if (str.indexOf('*/',0) != -1) 
    {   
     invalidChars=invalidChars + " */";
     IsValid=false;
    }
    
     if (str.indexOf('#',0) != -1) 
    {   
     invalidChars=invalidChars + " #";
     IsValid=false;
    }
    
     if (str.indexOf('@',0) != -1) 
    {   
     invalidChars=invalidChars + " @";
     IsValid=false;
    }
     if (str.indexOf('%',0) != -1) 
    {   
     invalidChars=invalidChars + " %";
     IsValid=false;
    }
    
     if (str.indexOf('$',0) != -1) 
    {   
     invalidChars=invalidChars + " $";
     IsValid=false;
    }
    
     if (str.indexOf('^',0) != -1) 
    {   
     invalidChars=invalidChars + " ^";
     IsValid=false;
    }
    
     if (str.indexOf('~',0) != -1) 
    {   
     invalidChars=invalidChars + " ~";
     IsValid=false;
    }
    
    if (str.indexOf('!',0) != -1) 
    {   
     invalidChars=invalidChars + " !";
     IsValid=false;
    }
    
     if (str.indexOf('<',0) != -1) 
    {   
     invalidChars=invalidChars + "<";
     IsValid=false;
    }
       if (str.indexOf('>',0) != -1) 
    {   
     invalidChars=invalidChars + " >";
     IsValid=false;
    }
    
   if (str.indexOf('"',0) != -1) 
    {   
     invalidChars=invalidChars + ' "';
     IsValid=false;
    }
    
      if (str.indexOf('+',0) != -1) 
    {   
     invalidChars=invalidChars + ' +';
     IsValid=false;
    }
     if (str.indexOf('-',0) != -1) 
    {   
     invalidChars=invalidChars + ' -';
     IsValid=false;
    }
    
        if (str.indexOf('{',0) != -1) 
    {   
     invalidChars=invalidChars + ' {';
     IsValid=false;
    }
     if (str.indexOf('}',0) != -1) 
    {   
     invalidChars=invalidChars + ' }';
     IsValid=false;
    }
    if (str.indexOf('(',0) != -1) 
    {   
     invalidChars=invalidChars + ' (';
     IsValid=false;
    }
     if (str.indexOf(')',0) != -1) 
    {   
     invalidChars=invalidChars + ' )';
     IsValid=false;
    }
     if (str.indexOf('[',0) != -1) 
    {   
     invalidChars=invalidChars + ' [';
     IsValid=false;
    }
     if (str.indexOf(']',0) != -1) 
    {   
     invalidChars=invalidChars + ' ]';
     IsValid=false;
    }
    
     if (str.indexOf('?',0) != -1) 
    {   
     invalidChars=invalidChars + ' ?';
     IsValid=false;
    }
//     if (str.indexOf('*',0) != -1) 
//    {   
//     invalidChars=invalidChars + ' *';
//     IsValid=false;
//    }
//    
       if (str.indexOf('_',0) != -1) 
    {   
     invalidChars=invalidChars + ' _';
     IsValid=false;
    }
    
    if (IsValid==false)
    {
    alert("Special characters like" + invalidChars + " are not allowed" );
    e.focus();
    }
    return IsValid;

}

function IsValid(e)
{
//     alert('ajshs');
    var str=trim(e.value);   
    var invalidChars="";
    var IsValid=true;
    
    if (str.indexOf('&') != -1) 
    {   
     
     invalidChars=invalidChars + " &";
     IsValid=false;
    }
    
 if (str.indexOf('|') != -1) 
    {   
     
     invalidChars=invalidChars + " |";
     IsValid=false;
    }
    if (str.indexOf(';',0) != -1) 
    {
     invalidChars=invalidChars + " ;";
     IsValid=false;
    }   

    
    if (str.indexOf('--',0) != -1) 
    {   
      invalidChars=invalidChars + " --";
      IsValid=false;
    }
     if (str.indexOf('<%',0) != -1) 
    {     
      invalidChars=invalidChars + " <%";
      IsValid=false;
    }
     if (str.indexOf('%>',0) != -1) 
    {    
     invalidChars=invalidChars + " %>";
     IsValid=false;
    }
     if (str.indexOf('\\n',0) != -1) 
    {     
     invalidChars=invalidChars + " \\n";
     IsValid=false;
    }
     if (str.indexOf('\\N',0) != -1) 
    {   
     invalidChars=invalidChars + " \\N";
     IsValid=false;
    }
    
      if (str.indexOf('/*',0) != -1) 
    {   
    
     invalidChars=invalidChars + " /*";
     IsValid=false;
    }
    
     if (str.indexOf('*/',0) != -1) 
    {   
     invalidChars=invalidChars + " */";
     IsValid=false;
    }
    
      if (str.indexOf('#',0) != -1) 
    {   
     invalidChars=invalidChars + " #";
     IsValid=false;
    }
    
     if (str.indexOf('@',0) != -1) 
    {   
     invalidChars=invalidChars + " @";
     IsValid=false;
    }
     if (str.indexOf('%',0) != -1) 
    {   
     invalidChars=invalidChars + " %";
     IsValid=false;
    }
    
     if (str.indexOf('$',0) != -1) 
    {   
     invalidChars=invalidChars + " $";
     IsValid=false;
    }
    
     if (str.indexOf('^',0) != -1) 
    {   
     invalidChars=invalidChars + " ^";
     IsValid=false;
    }
    
     if (str.indexOf('~',0) != -1) 
    {   
     invalidChars=invalidChars + " ~";
     IsValid=false;
    }
    
    if (str.indexOf('!',0) != -1) 
    {   
     invalidChars=invalidChars + " !";
     IsValid=false;
    }
    
       if (str.indexOf('<',0) != -1) 
    {   
     invalidChars=invalidChars + "<";
     IsValid=false;
    }
       if (str.indexOf('>',0) != -1) 
    {   
     invalidChars=invalidChars + " >";
     IsValid=false;
    }
       
   if (str.indexOf('"',0) != -1) 
    {   
     invalidChars=invalidChars + ' "';
     IsValid=false;
    }
    
       if (str.indexOf('+',0) != -1) 
    {   
     invalidChars=invalidChars + ' +';
     IsValid=false;
    }
     if (str.indexOf('-',0) != -1) 
    {   
     invalidChars=invalidChars + ' -';
     IsValid=false;
    }
    
        if (str.indexOf('{',0) != -1) 
    {   
     invalidChars=invalidChars + ' {';
     IsValid=false;
    }
     if (str.indexOf('}',0) != -1) 
    {   
     invalidChars=invalidChars + ' }';
     IsValid=false;
    }
    if (str.indexOf('(',0) != -1) 
    {   
     invalidChars=invalidChars + ' (';
     IsValid=false;
    }
     if (str.indexOf(')',0) != -1) 
    {   
     invalidChars=invalidChars + ' )';
     IsValid=false;
    }
     if (str.indexOf('[',0) != -1) 
    {   
     invalidChars=invalidChars + ' [';
     IsValid=false;
    }
     if (str.indexOf(']',0) != -1) 
    {   
     invalidChars=invalidChars + ' ]';
     IsValid=false;
    }
    
     if (str.indexOf('?',0) != -1) 
    {   
     invalidChars=invalidChars + ' ?';
     IsValid=false;
    }
//     if (str.indexOf('*',0) != -1) 
//    {   
//     invalidChars=invalidChars + ' *';
//     IsValid=false;
//    }
    
          if (str.indexOf('_',0) != -1) 
    {   
     invalidChars=invalidChars + ' _';
     IsValid=false;
    }
    //alert(IsValid);
    if (IsValid==false)
    {
    alert("Special characters like" + invalidChars + " are not allowed" );
    e.focus();
    }
    return IsValid;

}


function trim(s)
{
	var l=0; var r=s.length -1;
	while(l < s.length && s[l] == ' ')
	{	l++; }
	while(r > l && s[r] == ' ')
	{	r-=1;	}
	return s.substring(l, r+1);
}

function check_pass_complexity(e,type)
		{
//            alert('alksdjaskjd');
		    var pass = e.value;
		  
			var lowercaseletter = /[a-z]/.test(pass);
			var uppercaseletter = /[A-Z]/.test(pass);
			var digit 	= /\d/.test(pass);
				
			var low_security    = lowercaseletter || uppercaseletter || digit;
			var med_security    = (lowercaseletter && uppercaseletter) || (lowercaseletter && digit) || (digit && uppercaseletter);
			var high_security   = lowercaseletter && uppercaseletter && digit;
			var higher_security = high_security && pass.length >= 8;
            var strongness=0;
			//alert(pass);
			//alert(low_security);
			//alert(med_security);
			//alert(high_security);
			//alert(higher_security);
					
			if ( low_security )
			{
				//alert("weak");
				//document.getElementById('weak').style.backgroundColor = 'red';
				document.getElementById('weak').style.backgroundColor = '#00FF66';
				strongness=1;
				//return false;
			}
			if ( med_security )
			{	
				//alert("good");
				//document.getElementById('weak').style.backgroundColor = 'yellow';
				document.getElementById('good').style.backgroundColor = '#33CC66';
				strongness=2;
				//return false;
			}
			if ( high_security )
			{
				//alert("strong");
				//document.getElementById('weak').style.backgroundColor = 'green';
				document.getElementById('strong').style.backgroundColor = '009966';
				strongness=3;
				//return false;
			}
			if ( higher_security )
			{
				//alert("strong");
				//document.getElementById('weak').style.backgroundColor = 'green';
				document.getElementById('verystrong').style.backgroundColor = '006600';
				strongness=4;
				
				//return true;
			}
			if (pass !="" && type=='Submit')
			{
			   if( document.getElementById('verystrong').style.backgroundColor == '#006600')
			    return true;
			}
			else if (pass =="")
			{
			document.getElementById('weak').style.backgroundColor="";
			document.getElementById('good').style.backgroundColor="";
			document.getElementById('strong').style.backgroundColor="";
			 document.getElementById('verystrong').style.backgroundColor="";
			}
			else return true;
		}

function CountLeft(field, count, max) 
         {
//        alert( (field).Value + "|" + document.getElementById(count).innerHTML);
        lblCount = document.getElementById(count);
        txt =  document.getElementById(field);
//        alert((txt.value));
        field1= txt.value;// document.getElementById(field).value;
        count=count.value; //document.getElementById(count).value;
             // if the length of the string in the input field is greater than the max value, trim it  
//            alert(field1.length);
             pmax = max;
            if (field1.length > max)
            { //field = field.substring(0, max); 
                 alert('Maximum length exceeded.');
//                 txt.value= txt.value.substring(0,txt.value.toString().length-2);
                 
                if(event.keyCode==8 || event.keyCode==35)
                {
                    //lblCount.innerHTML='Pending Characters ' +  parseFloat(  pmax - (field1.length-1)); 
                    return true;
                }
                else
                {
                   txt.value= txt.value.toString().slice(1,max);
                    //lblCount.innerHTML='Pending Characters ' + parseFloat(max - field1.length);
                    return false;
                }
            }
            else 
                 {
                   // calculate the remaining characters   
                   if(event.keyCode==8 || event.keyCode==35)
                   {                  
                    lblCount.innerHTML='Pending Characters ' +  parseFloat(  pmax - (field1.length-1)); 
                   }
                    else
                    {
                    //alert(max + ":" + field1.length);
                    lblCount.innerHTML='Pending Characters ' + parseFloat(max - field1.length); 
                    }
                 }
                 
//                 alert(txt.value.toString().length);
            } 
            
            
   function ValidMaxLength(ctl,length )
   {
      var str=trim(ctl.value); 
//     alert(str);
     
     var ctlname = ctl;
     if (str.length > parseFloat(length))
     {
     alert('Text should be less than ' + length);
     ctl.value =(str.toString().slice(1,length));
     focus(ctl);
     }
   }