﻿// JScript File

//For LTrim Function
function Ltrim_string(objID)
{			
var j = 0,k=0;
if(objID.length>0)
{
	for(var i=0;i<objID.length && k<objID.length;i++)
	{
		if(objID.charAt(i)==" ")
		{
		j++;
		}
		else
		{
		k = objID.length;
		}
	}
	objID =objID.substring(j,objID.length);
}
	return objID;
}


//Blank Check
function CheckBlank(objID,strControlName)
{
   if (Ltrim_string(objID.value)=="")
   {
		alert(strControlName+": Cannot be left blank");
		objID.value="";
		objID.focus();
		return false;
	}
	return true;
}


//Allow only Numbers in TextBox
function CheckNumeric(objID,strControlName)
	{	
		if (objID.value!="")
		{
			var num=/[0-9]+/
			numflag=objID.value.match(num);	
			if(numflag !=objID.value){
			alert(strControlName+ ": should be Numeric only.")
			objID.focus();
 			objID.select();
			return false;
		}
	}
	return true;
}
//


function CheckAlphabets(objID,strControlName)
{
	var alpha=/[a-zA-Z]+/;
	alphaflag=objID.value.match(alpha);	
		if(alphaflag != objID.value)
		{
			alert(strControlName+ ": should be Alphabets only.")
			objID.focus();
 			objID.select();
			return false;
	}
	return true;
}

//function to check alphabets with space
function CheckAlphabetsWithSpace(objID,strControlName)
{
	var alpha=/[a-zA-Z ]+/;
	alphaflag=objID.value.match(alpha);	
		if(alphaflag != objID.value)
		{
			alert(strControlName+ ": should be Alphabets only.")
			objID.focus();
 			objID.select();
			return false;
	}
	return true;
}

//Validation For Drop-Down List
function CheckDropDown(objID,strControlName)
{
	   if(objID.options[0].selected=="true" || objID.selectedIndex == 0)
	   {
		alert(strControlName+ ": Select a proper option.");
		objID.focus();
		return false;
	}
	return true;
} 

//Check for Decimal Numbers
function CheckDecimal(objID,strControlName)
{	
	var iCount=0;
	Temp =objID.value;	
	if(Temp.length==0)
	{
		Temp = 0;
		return true;
	}
	var validchars = "1234567890.";
	for(var j=0;j<Temp.length && iCount < 2;j++)
	{
		if(validchars.indexOf(Temp.charAt(j)) == -1)
		{
		alert(strControlName+ ": should have Decimal values only");
			objID.focus();
 			objID.select();		
			return false;
		}
		else if(Temp.charAt(j)==".")
			iCount++;
	}
	if(iCount > 1)
	{
		alert(strControlName+ ": should have Decimal values only");
		objID.focus();
 		objID.select();	
		return false;
	}
	return true;
}

//For trimming String
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;
     }   

//Validation For Single EMail-Id
function CheckMail(objID,strControlName)
{

	var email =/[-a-zA-Z0-9_\.]+@[-a-zA-Z0-9]+\.[-a-zA-Z0-9\.]+/;
	var eflag = objID.value.match(email);
	if(eflag!=objID.value)
	{
		alert(strControlName+ ": Should be in proper format")
		objID.focus();
		objID.select();
		return false;
	}
	else if(objID.value.indexOf(".")==0)
	{
		alert(strControlName +": Should be valid Email")
		objID.focus();
		objID.select();
		return false;
    }

	var LastIndex = objID.value.lastIndexOf(".");
	var FirstIndex = objID.value.indexOf(".");
    
	if((LastIndex - FirstIndex) == 1 || (objID.value.length-1 == LastIndex)) // in case of ids like  abc@abc..abc and abc@abc.abc.
	{
	    alert(strControlName + ": should be valid Email")
	    objID.focus();
		objID.select();
		return false;
	}
	if(objID.value.indexOf("..") >= 1)  
	{
	    alert(strControlName + ": should be valid Email")
	    objID.focus();
		objID.select();
		return false;
	}
	return  true;
} 

//Validation For Phone No
function CheckPhone(objID,strControlName)
{
		var num=/[0-9\-\+\/\"("\")"\s]+/
		numflag=objID.value.match(num);	
		if (objID.value!="")
		{
		if(numflag != objID.value)
		{
			alert(strControlName+ ": should be valid Phone number")
			objID.focus();
 			objID.select();
			return false;
		}
	}
		return true;
} 



/////////Checking:for phone number It also checks length and all possibilities
function PhoneCheck(objID,strControlName)
{
    if (objID.value != "")
    {
    var num=/[0-9\-\+\/\s]+/
	numflag=objID.value.match(num);	
	if (objID.value!="")
	{
		if((numflag != objID.value) || (objID.value.length<=6) || (objID.value.length>=18))
		{
			alert(strControlName+ ": should be valid Phone number")
			objID.focus();
 			objID.select();
			return false;
		}
		if((objID.value.indexOf("+-") >= 0) || (objID.value.indexOf("-+") >= 0) 
		    || (objID.value.indexOf("++") >= 0) || (objID.value.indexOf("--") >= 0))
		{
			alert(strControlName+ ": should be valid Phone number")
			objID.focus();
 			objID.select();
			return false;
		}
	}
	}
return true;
}

 


////////Checking:for mobile number with specified length
function MobileCheckLength(objControl,strControlName)
{
if(objControl.value.length>12||objControl.value.length<10||objControl.value.length==11)
{
alert(strControlName+ ":It should 10 or 12 digits number");
objControl.focus();
objControl.select();
return false;
}

return true;
}


///function to check mobile number

function CheckMobile(objID,strControlName)
{
    
		var num=/[0-9\+\-]+/
		numflag=objID.value.match(num);	
		if (objID.value!="")
		{
		if(numflag != objID.value){
			alert(strControlName+ ": should be valid Mobile number")
			objID.focus();
 			objID.select();
			return false;
			}
			}
		return true;
} 
	

////function to check specified length-length can be pass by passing values to the parameter

function LengthCheck(objControl,strControlName,strlength)
{
    if(objControl.value.length!=strlength)
    {
    alert(strControlName+": should be "+strlength+" digits number");
    objControl.focus();
    return false;
    }  
    return true;
}   



/////////Checking:for no single radio button is selected
function RadioCheck(objControl1,objControl2,strControlName)
{
    if(objControl1.checked==false&&objControl2.checked==false)
    {
    alert(strControlName+": select a proper choice");
    objControl1.focus();
    objControl1.select();
    return false;
    }
    
return true;
}

 ////returns the difference between 2 dates  dates should be in dd/mm/yyyy format
function findDateDifference(x1, x2)
{
    var ssdate = new String(x1.value);
    var ssdatee = new String(x2.value);
			
    var SDate= new Array(3);
    SDate = ssdate.split("/");
    var ssdate1 =new String(SDate[1] + "/" +  SDate[0] + "/" + SDate[2]);
	
    var SDate1= new Array(3);
    SDate1 = ssdatee.split("/");
    var ssdate2 =new String(SDate1[1] + "/" +  SDate1[0] + "/" + SDate1[2]);
	
    var one_day=1000*60*60*24;
				
    var objDate1=new Date(ssdate1);
    var objDate2=new Date(ssdate2);
    var diff = (objDate2.getTime()-objDate1.getTime())/one_day;
    if(parseInt( SDate1[2] % 4) > 0)
    {
        diff = parseInt(diff)+1;
    }
    return diff;
}
//Validation For Character Limit
function CheckCharLimit(objID,str,strControlName)
{
	charlength=Ltrim_string(objID.value).length;
		if(charlength < str){
			alert(strControlName+": should have atleast " +str+ " characters.")
			objID.focus();
 			objID.select();
			return false;
	}
	return true;
}

//Allow only specified special characters
function CheckSpecialChar(objID,strControlName,spstr)
{
var str=objID.value;
var validchars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890" + spstr;
for (var j=0;j<str.length;j++)
    {
    if(validchars.indexOf(str.charAt(j)) == -1)
	    {
		    alert(strControlName+ ": should not have any special characters")
		    objID.focus();
 		    objID.select();
		    return false;
	    }
	}
	return true;
} 

//Validation when for confirm password
function confpswdchk(pass, confpass,msg)
{
	if(confpass.value != pass.value){
		alert(msg);
		confpass.focus();
		confpass.select();
		return false;
	}
	return true;
}
//Check the TextBox Length
function charlencheck(objID,strControlName,NoOfCharacters)
{
	charlength=objID.value.length;
	if(objID.value!="")
	{
		if(charlength < NoOfCharacters)
		{
		alert(strControlName + " cannot be less than " + NoOfCharacters  + " characters!");
		objID.focus();
		objID.select();
		return false;
		}
	}
	return true;
}

//Do not allow only Numbers in TextBox
function CheckUserName(objID,strControlName)
	{	
		if (objID.value!="")
		{
			var num=/[0-9]+/
			numflag=objID.value.match(num);	
			if(numflag ==objID.value){
			alert(strControlName+ ": should be AlphaNumeric.")
			objID.focus();
 			objID.select();
			return false;
		}
	}
	return true;
}
//
//Allow AlphaNumeric characters
function CheckAlphaNumeric(objID,strControlName)
{
	var alpha=/[a-zA-Z0-9\'\-\/&\s]+/;
	alphaflag=objID.value.match(alpha);	
		if(alphaflag != objID.value)
		{
			alert(strControlName+ ": should be AlphaNumeric characters only.")
			objID.focus();
 			objID.select();
			return false;
	}
	else
	{
	return true;
	}
}

//Allow only specified special characters
function CheckSpaceChar(objID,strControlName)
{
var str=objID.value;
var validchars = " ";
for (var j=0;j<str.length;j++)
if(validchars.indexOf(str.charAt(j)) == 0)
	{
		alert(strControlName+ ": should not have any spaces.")
		objID.focus();
 		objID.select();
		return false;
	}
	return true;
} 
// Check the Login Name & Password for not being same.
function ChkPwdAndLoginName(password,login)
 {  
    if(password.value.toLocaleLowerCase() == login.value.toLocaleLowerCase())
    {
       alert("Password and User Name cannot be same.");
       password.focus();
       password.select();
       return false;
    }
    return true;
 }
 
 //For PMS=Check while adding Transaction 
  function QuantityCheck(objID,name)
    {

        if(objID.value == 0)
        {
            alert(name + ": Cannot be zero");
            objID.focus();
            objID.select();
            return false;
        }
        return true;
    }
    
    function decimalNoCheck(objID,noOfDecimalDigits,MaxNo,objName)
    {
     var val1 = objID.value.indexOf(".");
     var val2 = eval(objID.value.length) - eval(val1)-1;
	    if(val1 !="-1")
	    {
	        if(val1 > MaxNo)
            {
                alert(objName + " cannot be more than " + MaxNo + " digits before decimal!");
                objID.focus();
			    objID.select();
                return false;  
            }
		    if(val2 > noOfDecimalDigits)
		    {
			    alert( objName +" can be " + noOfDecimalDigits + " decimals only!");
			    objID.focus();
			    objID.select();
			    return false;
		    }
	    }
	    else
	    {
	        if(objID.value.length > MaxNo)
		    {
		        alert(objName + " cannot be more than " + MaxNo + " digits!");
		        objID.focus();
		        objID.select();
		        return false;
		    }
	    }
	    return true;
    }
    
    
function ClearText(objID,DefaultName)
    {
	    var textname = document.getElementById(objID);
	    if (textname.value == DefaultName)
	        textname.value="";
	   // document.getElementById(objID).focus();
   }
   
function FillText(objID,DefaultName)
{
    var textname=document.getElementById(objID);
	if (textname.value == "")
	    textname.value = DefaultName;
}


function SetTab(objbtnID,event)
{
	var valbtn=document.getElementById(objbtnID);	
	if(event.keyCode==13)
	{
	    valbtn.focus();
	    valbtn.click();
	    return false;
	}
}

function CheckSTDCode(objID1,objID2,objID,strControlName,strControlName1)
{
        
        if (objID1.value != "")
        {
            if (objID2.value == "")
            {
                alert(strControlName+ ": Cannot be left blank")
                objID2.focus();
 			    objID2.select();
                return false;
            }
            if (Ltrim_string(objID2.value) !="")
		    {
		    if (objID2.value.length < 3)
		    {
			    alert(strControlName+ ": Should be atleast 3 Digit")
			    objID2.focus();
 			    objID2.select();
			    return false;
		    }
            }
            if (objID.value == "")
            {
                alert(strControlName1+ ": Cannot be left blank")
                objID.focus();
 			    objID.select();
                return false;
            }
           if (Ltrim_string(objID.value) !="")
		    {
		    if (objID.value.length < 6)
		    {
			    alert(strControlName1+ ": Should be atleast 6 Digit")
			    objID.focus();
 			    objID.select();
			    return false;
		    }
            }
        }
		return true;
}

function CheckCountry(objID,strControlName)
{
        if (objID.value != "")
        {
		var num=/[0-9\+\-]+/
		numflag=objID.value.match(num);	
		if (objID.value!="")
		{
		if(numflag != objID.value){
			alert(strControlName+ ": should be valid number")
			objID.focus();
 			objID.select();
			return false;
			}
			}
			}
		return true;
		
} 

function CheckSTD(objID,strControlName)
{
        if (objID.value != "")
        {
		var num=/[0-9\+]+/
		numflag=objID.value.match(num);	
		if (objID.value!="")
		{
		if(numflag != objID.value){
			alert(strControlName+ ": should be valid number")
			objID.focus();
 			objID.select();
			return false;
			}
			}
			}
		return true;
		
} 
