﻿
//for required field validation
function CheckRequiredValidation(value)
{    
    if(AllTrim(value) == '')
        return false;
    else
        return true;    
}

//for regular expression validation
function CheckRegexValidation(regexExp, value)
{   
    var blnValid = true; 
    
    if(AllTrim(value) != '')
    {  
        var expFilter = RegExp(regexExp);               
        if (!expFilter.test(AllTrim(value)))
            blnValid = false;                             
    }        
    
    return blnValid;
}

//for any custom validation
function CheckCustomValidation(functionName, value)
{
    return functionName(AllTrim(value));      
}

//for range validation
function CheckRangeValidation( value, maxValue, minValue, type )
{
    var blnValid = false;
    
    if(AllTrim(value) != "")
    {
        switch(type.toUpperCase())
        {
            case "INTEGER":
                if(maxValue != "" && minValue != "")
                {
                    if(Number(AllTrim(value)) <= Number(maxValue) && Number(AllTrim(value)) >= Number(minValue))
                        blnValid = true;
                }
                if(maxValue != "" &&  minValue == "")
                {
                    if(Number(AllTrim(value)) <= Number(maxValue))
                        blnValid = true;
                }
                if(maxValue == "" &&  minValue != "")
                {
                    if(Number(AllTrim(value)) >= Number(minValue))
                        blnValid = true;
                }
            case "POSATIVEINTEGER":
                if(maxValue != "" && minValue != "")
                {
                    if(Number(AllTrim(value)) <= Number(maxValue) && Number(AllTrim(value)) >= Number(minValue))
                        blnValid = true;
                }
                if(maxValue != "" &&  minValue == "")
                {
                    if(Number(AllTrim(value)) <= Number(maxValue))
                        blnValid = true;
                }
                if(maxValue == "" &&  minValue != "")
                {
                    if(Number(AllTrim(value)) >= Number(minValue))
                        blnValid = true;
                }
                
                break;
            case "DECIMAL":
                if(maxValue != "" && minValue != "")
                {
                    if(Number(AllTrim(value)) <= Number(maxValue) && Number(AllTrim(value)) >= Number(minValue))
                        blnValid = true;
                }
                if(maxValue != "" &&  minValue == "")
                {
                    if(Number(AllTrim(value)) <= Number(maxValue))
                        blnValid = true;
                }
                if(maxValue == "" &&  minValue != "")
                {
                    if(Number(AllTrim(value)) >= Number(minValue))
                         blnValid = true;
                }
                
                break; 
            case "DATE":
                if(maxValue != "" && minValue != "")
                {
                    if(Date(AllTrim(value)) <= Date(maxValue) && Date(AllTrim(value)) >= Date(minValue))
                        blnValid = true;
                }
                if(maxValue != "" &&  minValue == "")
                {
                    if(Date(AllTrim(value)) <= Date(maxValue))
                        blnValid = true;
                }
                if(maxValue == "" &&  minValue != "")
                {
                    if(Date(AllTrim(value)) >= Date(minValue))
                        blnValid = true;
                }
                
                break;        
            default:
                    blnValid = true;
                break;  
        }    
    }
    else
    {
        blnValid = true;
    }
    
    return blnValid;
}

//All Trim
function AllTrim(strValue) 
{
    return strValue.replace(/^\s+|\s+$/g, '');
}

//Left Trim
function LTrim(strValue)
{
    return strValue.replace(/^\s+/, '');
}

//Right Trim
function RTrim(strValue) 
{
    return strValue.replace(/\s+$/, '');
}


