﻿function RequiredElements(type)
{
    var bReturn = true;
    if(type == "products")
    {
        if($("#txtProdTitle").val() == "") 
        {
            bReturn = false
            $("#txtProdTitle").addClass('Error');
        }
        if($("#ddlMainCategory").val() == "")
        {
            bReturn = false
            $("#ddlMainCategory").addClass('Error');
        }
        if($("#txtStock").val() == "")
        {
            bReturn = false
            $("#txtStock").addClass('Error');
        }
        if($("#txtPrice").val() == "")
        {
            bReturn = false
            $("#txtPrice").addClass('Error');
        }
        if($("#XHTMLEditor1").val() == "")
        {
            bReturn = false
            $("#XHTMLEditor1").addClass('Error');
        }
        else $("#XHTMLEditor1").removeClass('Error');
    }    
    
    if(type == "SellingSalonFurniture")
    {
        if($("#txtName").val() == "") 
        {
            bReturn = false
            $("#txtName").addClass('Error');
            $('#SECInputtxtName').addClass('Error');
        }
        
        if($("#txtLocation").val() == "") 
        {
            bReturn = false
            $("#txtLocation").addClass('Error');
            $('#SECInputtxtLocation').addClass('Error');
        }
        
        if($("#txtTelephone").val() == "")
        {
            bReturn = false
            $("#txtTelephone").addClass('Error');
            $('#SECInputtxtTelephone').addClass('Error');
        }
        
        if($("#txtEmail").val() == "")
        {
            bReturn = false
            $("#txtEmail").addClass('Error');
            $('#SECInputtxtEmail').addClass('Error');
        }        
        
        if($("#txtEmail2").val() == "" || $("#txtEmail2").val() != $("#txtEmail").val())
        {
            bReturn = false
            $("#txtEmail2").addClass('Error');
            $('#SECInputtxtEmail2').addClass('Error');
        }
        else
        {
            $('#SECInputtxtEmail2').removeClass('Error');
        }
        
    }
    
    if(type == "Register")
    {
        if($("#txtName").val() == "") 
        {
            bReturn = false
            $("#txtName").addClass('Error');
            $('#SECInputtxtName').addClass('Error');
        }
        if($("#txtEmail").val() == "")
        {
            bReturn = false
            $("#txtEmail").addClass('Error');
            $('#SECInputtxtEmail').addClass('Error');
        }
        if($("#txtEmail2").val() == "")
        {
            bReturn = false
            $("#txtEmail2").addClass('Error');
            $('#SECInputtxtEmail2').addClass('Error');
        }
    }
    
    if(type == "Enquiry")
    {
        if($("#msg").val() == "" || $("#msg").hasClass("Error"))
        {
            bReturn = false
            $("#msg").addClass('Error');
        }
        
        if($("#telnum").val() == "" || $("#telnum").hasClass("Error"))
        {
            bReturn = false
            $("#telnum").addClass('Error');
        }
        
        if($("#email").val() == "" || $("#email").hasClass("Error"))
        {
            bReturn = false
            $("#email").addClass('Error');
        }
        
        if($("#capatcha_user2").val() != $("#capatcha2").val())
        {
            $("#capatcha_user").addClass('Error');
            bReturn = false
        }
    }
    
    if(type == "EmailLink")
    {
        if($("#emailfrom").val() == "" || $("#emailfrom").hasClass("Error"))
        {
            bReturn = false
            $("#emailfrom").addClass('Error');
        }
        
        if($("#emailto").val() == "" || $("#emailto").hasClass("Error"))
        {
            bReturn = false
            $("#emailto").addClass('Error');
        }
        
        if($("#emailto").val() == $("#emailfrom").val())
        {
            $("#emailto").addClass('Error');
            $("#emailfrom").addClass('Error');
            bReturn = false
        }
        
        if($("#capatcha_user").val() != $("#capatcha").val())
        {
            $("#capatcha_user").addClass('Error');
            bReturn = false
        }
        
    }
    
    $("#txtValidInput").val(bReturn);
    return bReturn;
}


function ValidateAll()
{
    //TODO: fix this function make sure checking correct elements only inputs,checkbox etc...
    var bReturn = true;
    if($("#txtValidInput").val() == "false") bReturn = false;
         
    $('#frmMain').children().each( 
      function(){
        if($(this).hasClass("Error")) bReturn = false;
      }
    );    
    return bReturn; 
}

function ValidateInputMaxLength(type,oObject,iLen)
{
    var bReturn =  $("#txtValidInput").val();
    if(type == "validRequiredVarcharFixedLength") bReturn = validRequiredVarcharFixedLength(oObject.value, iLen); 
            
    if(!bReturn) 
    {
        oObject.className = 'Error';
        $("#txtValidInput").val("false");
    }
    else 
        oObject.className = '';
   return bReturn;
}

function ValidateInput(type,oObject)
{
    var bReturn =  $("#txtValidInput").val();
    if(type == "validNumber") bReturn = ValidNumber(oObject.value);
    if(type == "validMoney") bReturn = ValidMoney(oObject.value);
    if(type == "ValidMoneySymbol") bReturn = ValidMoneySymbol(oObject.value);
    if(type == "validDropdown") bReturn = ValidDropdown(oObject.value);   
    if(type == "validFileType") bReturn = ValidFileType(oObject.value);       
    if(type == "validEmail") bReturn = ValidEmail(oObject.value); 
    if(type == "validTelephone") bReturn = ValidTelephone(oObject.value);
    if(type == "validPostcode") bReturn = ValidPostcode(oObject.value); 
    if(type == "validName") bReturn = ValidName(oObject.value); 
    if(type == "validVarchar") bReturn = validVarchar(oObject.value); 
    if(type == "validRequiredVarchar") bReturn = validRequiredVarchar(oObject.value);
    if(type == "validRepeatEmail") bReturn = validRepeatEmail(oObject.value);             
    if(!bReturn) 
    {
        oObject.className = 'Error';
        $("#txtValidInput").val("false");
    }
    else 
        oObject.className = '';
   return bReturn;
}

function ValidNumber(oObject)
{   
    if(isNaN(oObject)) return false; 
    return true;
}

function ValidMoney(oObject)
{   
    if(oObject.indexOf("$") != -1 || oObject.indexOf("£") != -1) oObject = oObject.substring(1,oObject.length);
    return ValidNumber(oObject);     
}

function ValidDropdown(oObject)
{   
    if(oObject == "" || oObject == "0") return false; 
    return true;
}

function validVarchar(oObject)
{
    return true;
}

function ValidEmail(oObject)
{
    if(oObject.indexOf("@") == -1 || oObject.indexOf(".") == -1 ) return false;
    return true;
}

function ValidTelephone(oObject)
{
    oObject = oObject.replace("(","");
    oObject = oObject.replace(")","");
    oObject = oObject.replace(" ","");
    
    if(oObject.length <6) return false;
    
    return ValidNumber(oObject);
}

function ValidPostcode(oObject)
{
    if(oObject.length <6) return false;
    return true;
}

function ValidFileType(oObject)
{
    var ValidFileTypes =  $("#ctl00_txtValidFileType").val();
        
    if(ValidFileTypes === undefined) ValidFileTypes = $("#txtValidFileType").val();
    
    var temp = new Array();
    var bVaildFileType =  false;
    
    if(ValidFileTypes != "" && ValidFileTypes.indexOf(",") != -1)
    {
        temp = ValidFileTypes.split(",");
        
        for(var i=0; i < temp.length; i++)
        {
            if(oObject.substr(oObject.lastIndexOf(".")).toLowerCase() == temp[i].toLowerCase()) 
            {
                bVaildFileType = true;
                break;
            }
        }    
    }
    return bVaildFileType;
}

function ValidName(oObject)
{
    if(oObject.length <3) return false;
    return true;
}

function ValidMoneySymbol(oObject)
{
    oObject = oObject.replace("%","");
    oObject = oObject.replace("+","");
    return ValidMoney(oObject);    
}

function validRequiredVarchar(oObject)
{
   if(oObject.length < 1) return false;
   return true;
}

function validCapatcha(oObject)
{
    var  Capatcha = $("#capatcha").val();
    if(oObject.value != Capatcha)
    {
        oObject.className = 'Error';
        $("#txtValidInput").val("false");
        return false;        
    }
    oObject.className = '';
    return true;
}
function validRequiredVarcharFixedLength(oObject,ilen)
{
   if(oObject.length > ilen) return false;
   return true;
}

function validRepeatEmail(oObject, EmailToCompare, divId)
{
    if(((oObject.value != $("#" + EmailToCompare).val()) && $("#" + EmailToCompare).val() != "") || oObject.length == 0) 
    {
        if(divId != "") $('#' + divId).addClass('Error');
        oObject.className = 'Error';
        return false;
    }
    if(divId != "") $('#' + divId).removeClass('Error');
    oObject.className = '';
    return true;
}


function validAgainstRepeatEmail(oObject, EmailToCompareAgainst, divId)
{
    if(oObject.value == $("#" + EmailToCompareAgainst).val()) 
    {
        if(divId != "") $('#' + divId).removeClass('Error');
        $("#" + EmailToCompareAgainst).removeClass('Error');
        return true;
    }
    else if($("#" + EmailToCompareAgainst).val().length >0)
    {
        if(divId != "") $('#' + divId).addClass('Error');
        $("#" + EmailToCompareAgainst).addClass('Error');
        return false
    }    
    return true;
}

function removeError(divId)
{
    if(divId != "") $('#' + divId).removeClass('Error');
}
