﻿// JScript File




function checkAll(arr)
{    
    var Arr = arr;
    var resultStr = "";
    var isValidate=false;
    for(var i=0; i<Arr.length;i++)
    {
        switch(Arr[i][1])
        {
            case 'text':
            {
                isValidate = validateEmptyString(document.getElementById(Arr[i][0]).value);
                if(!isValidate) resultStr += Arr[i][2]+" is empty or invalid \n";
            }
            break;
            case 'tag':
            {    
                    var objEditor = document.getElementById(Arr[i][0]);
                 if(document.all){                           
                     isValidate = validateTagString(objEditor.innerText);
                     if(!isValidate) resultStr += Arr[i][2]+" is empty or invalid \n";
                 }
                 else{
                     isValidate = validateTagString(objEditor.textContent.Replace('\n',''));
                     if(!isValidate) resultStr += Arr[i][2]+" is empty or invalid \n";
                 }
                /*
                if(document.all && document.frames[Arr[i][0]].document.frames[0])
                {                    
                    isValidate = validateTagString(document.frames[Arr[i][0]].document.frames[0].document.body.innerText);
                    if(!isValidate) resultStr += Arr[i][2]+" is empty \n";
                }
                else if(document.getElementById(Arr[i][0]))
                {
                    var obj=document.getElementById(Arr[i][0]);                    
                    var txt=obj.contentWindow.FCK.EditorDocument.body.innerHTML;
                    isValidate = validateTagString(txt);
                    if(!isValidate) resultStr += Arr[i][2]+" is empty \n";
                } 
                */                                        
            }
            break;
            case 'positiveInt':
            {
                isValidate = validatePositiveInt(document.getElementById(Arr[i][0]).value);
                if(!isValidate) resultStr += Arr[i][2]+" is not numeric \n";
            }            
            break;
            case 'date':
            {
                isValidate = validateDateAsDDMMYYYY(document.getElementById(Arr[i][0]).value);
                if(!isValidate) resultStr += Arr[i][2]+" is not dateformat \n";
            }   
            break;
            case 'money':
            {
                isValidate = validateMoney(document.getElementById(Arr[i][0]).value);
                if(!isValidate) resultStr += Arr[i][2]+" is not moneyformat \n";
            }               
            break;
            case 'email':
            {
                isValidate = validateEmail(document.getElementById(Arr[i][0]).value);
                if(!isValidate) resultStr += Arr[i][2]+" is not emailformat \n";
            }               
            break;
            case 'realnumber':
            {
                isValidate = validateRealNumber(document.getElementById(Arr[i][0]).value);
                if(!isValidate) resultStr += Arr[i][2]+" is not realnumber \n";
            }   
            break;
            case 'password':
            {
                isValidate = validatePassword(document.getElementById(Arr[i][0]).value);
                if(!isValidate) resultStr += Arr[i][2]+" is not a valid password \n";
            } 
            break;
        }
    
    }
return resultStr;

}
function validatePositiveInt(inputStr)
{
    var result = false;
    var filter = /^\d+$/;
    
    if (filter.test(inputStr) || inputStr == "")
    {
        result = true;
    }
    else
    {
        result = false;
    }
    
    return result;
}
//----------------------------------------------------------------------------------------
function validateEmail(inputStr)
{
    var result = false;
    var filter = /^([a-zA-Z0-9]{1,})([_\.\-a-zA-Z0-9]{0,})([a-zA-Z0-9_]{1,})\@([a-zA-Z0-9\-]+\.)+([a-zA-Z0-9]{2,4})/;
    
    if (filter.test(inputStr))
    {
        result = true;
    }
    else
    {
        result = false;
    }
    
    return result;
}
//----------------------------------------------------------------------------------------
function validateMoney(inputStr)
{
    var result = false;
    var filter = /^\d+(?:\.\d{0,2})?$/ ;//   /(\d{1,3})(,\d{2})/;
    
    if (filter.test(inputStr) || inputStr == "" )
    {
        result = true;
    }
    else
    {
        result=false;
    }
    
    return result;
}
//----------------------------------------------------------------------------------------
function validateDateAsDDMMYYYY(inputStr)
{
    var result = false;
    var filter = /(0[1-9]|[12][0-9]|3[01])[\/](0[1-9]|1[012])[\/](19|20)\d\d/;
    
    if (filter.test(inputStr))
    {
        result = true;
    }
    else
    {
        result = false;
    }
    
    return result;
}
//----------------------------------------------------------------------------------------
function validateGSMNumber(inputStr)
{
    var result = false;
    var filter = /(\(5\d{2}\) )([1-9][0-9]{2} )(\d{4})/;
    
    if (filter.test(inputStr))
    {
        result = true;
    }
    else
    {
        result = false;
    }
    
    return result;
}
//----------------------------------------------------------------------------------------
function validateRealNumber(inputStr)
{
    var result = false;
    var filter = /^([-]|[.]|[-.]|[0-9])[0-9]*[.]*[0-9]+$/;
    
    if (filter.test(inputStr))
    {
        result = true;
    }
    else
    {
        result = false;
    }
    
    return result;
}
//----------------------------------------------------------------------------------------
function validateEmptyString(inputStr)
{
    var result = false;
    var filter = /^\s*|\s*$/g;
    var resultExp = /^[a-zA-Z0-9\s*]{2,}/;
    
    inputStr = inputStr.replace(filter, '');
    
    if (resultExp.test(inputStr))
    {
        result = true;
    }
    else
    {
        result = false;    
    }
    
    return result;
}
//----------------------------------------------------------------------------------------
function validatePassword(inputStr)
{
    var resultVal = false;
    var filter = /^\s*|\s*$/g;
    var resultExp = /^[a-zA-Z0-9\s*]{6,}/;
    
    inputStr = inputStr.replace(filter, '');
    
    if (resultExp.test(inputStr))
    {
        resultVal = true
    }
    else
    {
        resultVal = false;
    }
    
    return resultVal;
}
function validateTagString(inputStr)
{
    var result = false;
    var filter1 = /^\s*|\s*$/g;
   
    var reg2 = new RegExp(' ','g')
    inputStr=inputStr.replace(reg2,'') 
    
     var reg = new RegExp('&nbsp;','g')  
    inputStr=inputStr.replace(reg,'')
           
    var inputStr = inputStr.replace(filter1, '');
    
    if (inputStr != '<p></p>' && inputStr.length > 1)
    {
        result = true;
    }
    else
    {
        result = false;    
    }
    
    return result;
}