﻿// JScript File
function AllowNumeric_Number(objevent,objValue,objSep)
    {
        retflag =false;
        if( objevent.which != null)
        {
            kc = objevent.which;
        }
        else if(objevent.keyCode != null)
        {
            kc = objevent.keyCode;
        }
        else if(objevent.charCode !=null)
        {
            kc = objevent.charCode;
        }
        
        if((kc == 0) || (kc ==  8) || (kc >= 48 && kc <= 57) || kc == 13)
        {    
        retflag = true;
           
        }
        else if(objSep.split(' ').join('')!='') 
        { 
            if(objSep.split(' ').join('') ==  String.fromCharCode(kc))
            {
                if(objSep.split(' ').join('')==".")
                {
                    if(objValue.indexOf('.')>=0)
                    {
                        retflag = false;
                    }
                    else
                    {
                        retflag = true;
                     }
                }
                else
                {
                    retflag = true;
                }
            }
            else
            {
                retflag = false;
            }
        }
        
        else
        {
           retflag = false;
        }
        if(retflag == false)
        {
            if(navigator.appName == "Microsoft Internet Explorer")
            {   event.which = null;
                event.charCode = null;
                event.keyCode = null ;
            }
           alert("Please Enter Number(s)...")
           return false;
        }
        else
        {
            return true;
        }
       
   }


function fn_AvoidSpecialChar(Field,objEvent)
{
    var kc;
    if(objEvent.which!=null)
    {
        kc=objEvent.which;
    }
    else if(objEvent.keyCode!=null)
    {
        kc=objEvent.keyCode;
    }
    else
    {
        kc=objEvent.charCode;
    }
    
    if((kc==0)||(kc==8)||(kc==9)||(kc==13)||(kc==32)||(kc>=48 && kc<=57)||(kc>=65 && kc<=90)||(kc>=97 && kc<=122))
    {
        return true;
    }
   
    return false;
   
}
function fn_CheckAddress(Field,objEvent)
{
    var kc;
    if(objEvent.which!=null)
    {
        kc=objEvent.which;
    }
    else if(objEvent.keyCode!=null)
    {
        kc=objEvent.keyCode;
    }
    else
    {
        kc=objEvent.charCode;
    }
    
    if((kc==0)||(kc==8)||(kc==9)||(kc==13)||(kc==32)||(kc==44)||(kc==45)||(kc>=48 && kc<=57)||(kc>=65 && kc<=90)||(kc>=97 && kc<=122))
    {
        return true;
    }
   
    return false;
   
}
function fn_CheckTelephoneNo(Field,objEvent)
{
    var kc;
    if(objEvent.which!=null)
    {
        kc=objEvent.which;
    }
    else if(objEvent.keyCode!=null)
    {
        kc=objEvent.keyCode;
    }
    else
    {
        kc=objEvent.charCode;
    }
    
    if((kc==0)||(kc==8)||(kc==9)||(kc==13)||(kc==32)||(kc==45)||(kc>=48 && kc<=57))
    {
        return true;
    }
   
   return false;
   
}
function fn_CheckMoblieNo(Field,objEvent)
{
    var kc;
    if(objEvent.which!=null)
    {
        kc=objEvent.which;
    }
    else if(objEvent.keyCode!=null)
    {
        kc=objEvent.keyCode;
    }
    else
    {
        kc=objEvent.charCode;
    }
    
    if((kc==0)||(kc==8)||(kc==9)||(kc==13)||(kc==32)||(kc>=48 && kc<=57))
    {
        return true;
    }
   
   return false;
   
}
//Check emailid in keypress event(all functional keys,space,enter,dot,0-9,@,A-Z,_,a-z)
//Browse Dependencies  
function fn_CheckEMailId(Field,objEvent)
{
    var kc;
    if(objEvent.which!=null)
    {
        kc=objEvent.which;
    }
    else if(objEvent.keyCode!=null)
    {
        kc=objEvent.keyCode;
    }
    else
    {
        kc=objEvent.charCode;
    }
               
    if((kc==0)||(kc==8)||(kc==9)||(kc==13)||(kc==46)||(kc >=48 && kc <=57)||(kc >=64 && kc <=90)||(kc==95)||(kc >=97 && kc <=122))
    {
	    return true;
    }        
    return false;
}
function fn_AllowNumeric(Field,objEvent)
{
    var kc;
    if(objEvent.which!=null)
    {
        kc=objEvent.which;
    }
    else if(objEvent.keyCode!=null)
    {
        kc=objEvent.keyCode;
    }
    else
    {
        kc=objEvent.charCode;
    }
    
    if((kc==0)||(kc==8)||(kc==9)||(kc==13)||(kc==32)||(kc==46)||(kc>=48 && kc<=57))
    {
        return true;
    }
   
    return false;
   
}
function fn_WordCount(Field,totCount)	
{	
    var txtcount=0;	
    txtctrl=document.getElementById(Field)
    if(txtctrl.value.split(' ').join(' ')!="" )	
    {	
        if((txtctrl.value.split(' ').join(' ').length)<totCount)	
        {	
            txtcount=(txtctrl.value.split(' ').join(' ').length);	
        }	
        else	
        {	
            alert("maximum "+totCount+" char is allowed"); 
            txtcount=(txtctrl.value.length);	
            txtctrl.value=txtctrl.value.substr(0,(totCount-1));
        }	
    }	
    else	
    {	
        txtcount=0;	
    }            	
    return true;	
}	

function CheckEmail(Field)
{
 var str= document.getElementById(Field).value; 
 if (str != "")
 {
   var pos;
   pos = (str).indexOf("@");
   if ( pos < 0 ) 
     { alert("Email should be host@somexyz.com");
       document.getElementById(Field).focus();
       return false;
     }
    else
    {
      if( (str).indexOf(".",pos) < 0 )  
       { alert("Email should be host@somexyz.com"); 
         document.getElementById(Field).focus();
         return false;
       }
       else
       {   
            return true; 
       }
    } 
 }
 return true;
}
//Valid Date Format for keydown and button client click event
function validateDate(fld) 
{
        
    var RegExPattern = /(?:0[1-9]|[12][0-9]|3[01])\/(?:0[1-9]|1[0-2])\/(?:19|20\d{2})/;
    var errorMessage = 'Please enter valid date as day,month and four digit year.\nYou may use a slash to separate the values.\nThe date must be a real date (ex: 31/01/2009)\n Format dd/mm/yyyy.';
    var txtdate=document.getElementById(fld).value;
    if((!document.getElementById(fld).disabled)&& txtdate.split(' ').join('')!="")
    {
        if (txtdate.match(RegExPattern) ||txtdate=="") 
        {
                return true;        
            } 
            else 
            {
                alert(errorMessage);
                document.getElementById(fld).focus();
                return false;
            } 
        }
    return true;
}
function datevalidatematex(element,id)
{
    if(id.split(" ").join("")!="" )
	{
	    sysDat= new Date()
		var hour        = sysDat.getHours();
		var minute      = sysDat.getMinutes();
		var second      = sysDat.getSeconds();
		var monthnumber = parseInt(sysDat.getMonth()) +1; 
		var monthday    = sysDat.getDate();
		var year        = sysDat.getYear();
		
	    var arr = new Array(2)
        var arr1 = new Array(2)
		var MM,DD,YYYY,sysDate,FDate
		
		arr = id.split("/")
		MM = arr[1]
		DD = arr[0]
		YYYY = arr[2]
		FDate   = id
		
		sysDate=monthday +"/" + monthnumber  + "/" + year
		arr1 = FDate.split("/")
		if(DD=="09")
		{
		    DD=9
		}
		if(DD=="08")
		{
		    DD=8
		}
		if(MM=="09")
		{
		    MM=9
        }
		if(MM=="08")
		{
		    MM=8
		}
		if(isNaN(MM) || (parseInt(MM) < 1 || parseInt(MM) > 12))
		{
		    element.focus();
			alert ("Y o u  S h o u l d  E n t e r  a  V a l i d  D a t e \n \n\tT h e  D a t e  F o r m a t  i s \n\n \t DD/MM/YYYY \n\n The Month Should be BETWEEN 1 to 12 \n \n Example   \t " + sysDate);
			element.select();
		}
		else if(isNaN(DD) || (parseInt(DD) < 1 || parseInt(DD) > 31) )
		{
		    element.focus();
			alert ("Y o u  S h o u l d  E n t e r  a  V a l i d  D a t e \n \ntT h e  D a t e  F o r m a t  i s \n\n \t DD/MM/YYYY  \n\n The Day Should be BETWEEN 1 to 28/29/30/31 \n \n Example   \t " + sysDate);
			element.select();
		}
		else if(isNaN(YYYY))
		{
		    element.focus();
		    alert ("yyyY o u  S h o u l d  E n t e r  a  V a l i d  D a t e \n\tT h e  D a t e  F o r m a t  i s \n\n \t DD/MM/YYYY  \n\n The Year Should be > 1999 \n \n Example   \t " + sysDate);
			element.select();
		}
		else if((parseInt(MM) == 4 || parseInt(MM) == 6 || parseInt(MM) == 9 || parseInt(MM) == 11 )  && parseInt(DD) == 31 )
		{
		    element.focus()
			alert("31 is an invalid Date in "+MM + "th Month")
			element.select()
		}
		else if(parseInt(MM) == 2 && (parseInt(DD) > 29) )
		{
		    element.focus()
			alert(DD +" is an invalid Date in "+MM + "nd Month")
			element.select()
		}
		else if(parseInt(MM) == 2 && parseInt(DD) == 29 && ((parseInt(YYYY)%4)!= 0))
		{
			element.focus()
			alert( YYYY + " is not a LEAP year \n 29 is not a valid date " )
			element.select()
		}
    }
}

function LTrim(str)
	
{
   var whitespace = new String(" \t\n\r");

   var s = new String(str);

   if (whitespace.indexOf(s.charAt(0)) != -1) {
          var j=0, i = s.length;
      while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
         j++;
      s = s.substring(j, i);
   }
   return s;
}
function RTrim(str)
{
   var whitespace = new String(" \t\n\r");

   var s = new String(str);

   if (whitespace.indexOf(s.charAt(s.length-1)) != -1) {

      var i = s.length - 1;     
      while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
         i--;
      s = s.substring(0, i+1);
   }

   return s;
}

	
function Trim(str)
{
   return RTrim(LTrim(str));
}

//Check decimal for keyup event and button client event 
function AllowDecimalValue(ids,realpart,decimalpart)
{
    user_input1 = document.getElementById(ids).value.split(' ').join('');      
    var Conversion_array;
    var DeciPart;
    var varPointYesNo;
    var x,i;
    x = user_input1.length;
    if(!document.getElementById(ids).disabled)
    {
       if(user_input1.indexOf('.')!=-1)
       {
           for(i=0;i<x;i++)
           {
               if( user_input1.charAt(i) == ".")
               {
                    varPointYesNo = "yes";
               }  
               else if(isNaN(user_input1))
               {              
                       alert("Only Numbers Are Allowed...!")
                       document.getElementById(ids).value="";
                       document.getElementById(ids).focus();
                       return false;
               }           
           }
           
           if(varPointYesNo=="yes")
           {
               Conversion_array = user_input1.split(".");
               if(user_input1.split(" ").join("") != 0 && Conversion_array.length != null)
               {
                   if(Conversion_array.length>2)
                   {
                        alert("Only One Decimal Point Is Allowed...!")
                        document.getElementById(ids).value=Conversion_array[0]+".";
                        document.getElementById(ids).focus();
                        return false;
                   }
                   DeciPart = Conversion_array[1];
                   if (DeciPart.length >decimalpart)
                   {
                       alert("Only "+decimalpart+" Decimal Digits Are Allowed...!")
                       document.getElementById(ids).value=Conversion_array[0] + "." + Conversion_array[1].substring(0,decimalpart);
                       document.getElementById(ids).focus();
                       return false;
                   }
               }
                   if(isNaN(Conversion_array[0]) && isNaN(Conversion_array[1]))
                   {              
                       alert("Only Numbers Are Allowed...!")
                       document.getElementById(ids).value="";
                       document.getElementById(ids).focus();
                       return false;
                   }
            }
        }
        else 
        {
            if(isNaN(user_input1))
            {              
                alert("Only Numbers Are Allowed...!")
                document.getElementById(ids).value="";
                document.getElementById(ids).focus();
                return false;
            }
            else if(x>realpart)
            {
                alert("Only "+realpart+" real part are allowed...!")
                document.getElementById(ids).value=document.getElementById(ids).value.substring(0,realpart);
                document.getElementById(ids).focus();
                return false;
            }
        }
    } 
return true;
}

//karthick
function AllowDecimalValues(ids)
{
    user_input1 = document.getElementById(ids).value.split(' ').join('');      
    var Conversion_array;
    var DeciPart;
    var Repart;
    var varPointYesNo;
    var x,i;
    x = user_input1.length;
    if(!document.getElementById(ids).disabled)
    {
       if(user_input1.indexOf('.')!=-1)
       {
           for(i=0;i<x;i++)
           {
               if( user_input1.charAt(i) == ".")
               {
                    varPointYesNo = "yes";
               }  
               else if(isNaN(user_input1))
               {              
                    alert("Only Numbers Are Allowed...!")
                    document.getElementById(ids).value="";
                    document.getElementById(ids).focus();
                    return false;
               }           
           }
           
           if(varPointYesNo=="yes")
           {
               Conversion_array = user_input1.split(".");
               if(parseFloat(user_input1.split(" ").join(""))!= 0.0 && Conversion_array.length != null)
               {
                   if(Conversion_array.length>2)
                   {
                        alert("Only One Decimal Point Is Allowed...!")
                        document.getElementById(ids).value=Conversion_array[0]+".";
                        document.getElementById(ids).focus();
                        return false;
                   }
                   if(isNaN(Conversion_array[0]) && isNaN(Conversion_array[1]))
                   {              
                       alert("Only Numbers Are Allowed...!")
                       document.getElementById(ids).value="";
                       document.getElementById(ids).focus();
                       return false;
                   }
                   DeciPart = Conversion_array[1];
                   Repart= Conversion_array[0];
                   if(DeciPart==null || DeciPart.split(" ").join("")=="")
                   {
                        document.getElementById(ids).value=Conversion_array[0];
                   }
                  
                   if(DeciPart.length>2)
                   {
                        alert("Only two digits are allowed after the decimal");
                        document.getElementById(ids).focus();
                        return false;
                   }
                   
               }
               else
               {
                    alert("Please Enter the Value")
                    document.getElementById(ids).focus();
                    return false; 
               }    
            }
        }
        else 
        {
            if(isNaN(user_input1))
            {              
                alert("Only Numbers Are Allowed...!")
                document.getElementById(ids).value="";
                document.getElementById(ids).focus();
                return false;
            }
            if(parseInt(user_input1)==0)
            {
                alert("Please Enter the Value")
                document.getElementById(ids).focus();
                return false; 
            }
            if((x>2)&& (parseInt(user_input1)>100))
            {
                alert("Greater than 100 not allowed...!"); 
                //document.getElementById(ids).value=Conversion_array[0] + "." + "00";
                document.getElementById(ids).focus();
                return false;
            }
        }
        
        if(parseFloat(user_input1)>100)
        {
            alert("Greater than 100 not allowed...!"); 
            //document.getElementById(ids).value=Conversion_array[0] + "." + "00";
            document.getElementById(ids).focus();
            return false;
        }
        
    } 
return true;
}


function fn_CheckEMailIds(x,mcode,icode)
{
        if(mcode!=null)
        {
           aa=mcode;
        }
        else
        {
           aa=icode;
        }               
        if((aa==0)||(aa==8)||(aa==13)||(aa==46)||(aa >=48 && aa <=57)||(aa >=64 && aa <=90)||(aa==95)||(aa >=97 && aa <=122))
        {
	        return true;
        }        
        return false;
}

function ValidateEmailId(Element)
    {
        var j=new RegExp();
        if (Trim(document.getElementById(Element).value) !="")
        {
            j.compile("([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4})"); 
            if (!j.test(document.getElementById(Element).value))
            { 
                alert("Email should be host@somexyz.com"); 
                document.getElementById(Element).focus();
                return false; 
            } 
        }
        return true; 
    }
 


// to allow "-"
function fn_AvoidSpecialChars(Field,objEvent)
{
    var kc;
    if(objEvent.which!=null)
    {
        kc=objEvent.which;
    }
    else if(objEvent.keyCode!=null)
    {
        kc=objEvent.keyCode;
    }
    else
    {
        kc=objEvent.charCode;
    }
    
    if((kc==0)||(kc==8)||(kc==9)||(kc==13)||(kc==32)||(kc>=48 && kc<=57)||(kc>=65 && kc<=90)||(kc>=97 && kc<=122)||(kc==45))
    {
        return true;
    }
   
    return false;
   
}
