//*****************************************
//    LOGIN functions
//*****************************************

function ValidateLogin() {
    
    //clear all error highlights
    $('#form_login > *').removeClass("highlight_error");
    $("#errorbox").html("");
    
    // init vars
    var response = 0;
    var errorlist = new Array();

    if (valid_required($("input[name='email']").val())== false || valid_email($("input[name='email']").val())== false)  { errorlist.push("Please enter a valid Email Address "); $("input[name='email']").addClass("highlight_error"); } 
    if (valid_required($("input[name='password']").val())== false)                                                      { errorlist.push("Please enter a valid Password"); $("input[name='password']").addClass("highlight_error"); } 


    if (errorlist.length > 0) {
        // add content to error box
        $("#errorbox").append("<ul>");
        for(var i=0;i<errorlist.length;i++) {
            $("#errorbox ul").append("<li>"+errorlist[i]+"</li>");
        }
        return false;
    } else {
        // when it has passed all
        return true;
    }
}

function ValidateDetails() {
    //clear all error highlights
    $('#form_details > *').removeClass("highlight_error");
    $("#errorbox").html("");
    
    // init vars
    var response = 0;
    var errorlist = new Array();

    if (valid_required($("input[name='firstname']").val())== false)       { errorlist.push("Please enter a First Name "); $("input[name='firstname']").addClass("highlight_error"); } 
    if (valid_required($("input[name='surname']").val())== false)         { errorlist.push("Please enter a Surname "); $("input[name='surname']").addClass("highlight_error"); } 
    if (valid_required($("input[name='address1']").val())== false)        { errorlist.push("Please enter a Address Line1"); $("input[name='address1']").addClass("highlight_error"); } 
    if (valid_required($("input[name='town']").val())== false)            { errorlist.push("Please enter a Town"); $("input[name='town']").addClass("highlight_error"); } 
    if (valid_required($("input[name='county']").val())== false)          { errorlist.push("Please enter a County"); $("input[name='county']").addClass("highlight_error"); } 
    if (valid_postcode($("input[name='postcode']").val())== false)        { errorlist.push("Please enter a valid Postcode"); $("input[name='postcode']").addClass("highlight_error"); } 
    if (valid_required($("input[name='phone']").val())== false)           { errorlist.push("Please enter a valid Phone "); $("input[name='phone']").addClass("highlight_error"); } 


    if (errorlist.length > 0) {
        // add content to error box
        $("#errorbox").append("<ul>");
        for(var i=0;i<errorlist.length;i++) {
            $("#errorbox ul").append("<li>"+errorlist[i]+"</li>");
        }
        return false;
    } else {
        // when it has passed all
        return true;
    }
    
}

function ValidateRequest() {
    //clear all error highlights
    $('#form_request > *').removeClass("highlight_error");
    $("#errorbox").html("");
    
    // init vars
    var response = 0;
    var errorlist = new Array();

    if ($("input[name='plan']").fieldValue()<=0)                                { errorlist.push("Please choose a plan "); $("input[name='plan']").addClass("highlight_error"); } 
    if (valid_required($("textarea[name='reasons']").fieldValue())== false)     { errorlist.push("Please enter a reasons for the request "); $("textarea[name='reasons']").addClass("highlight_error"); } 

    if (errorlist.length > 0) {
        // add content to error box
        $("#errorbox").append("<ul>");
        for(var i=0;i<errorlist.length;i++) {
            $("#errorbox ul").append("<li>"+errorlist[i]+"</li>");
        }
        return false;
    } else {
        // when it has passed all
        return true;
    }
    
}

//*****************************************
//    Validation functions
//*****************************************


function valid_email(data) {
    var regex = /^[\w\-_]+(\.[\w\-_]+)*@[\w\-_]+(\.[\w\-_]+)+$/i;
    return regex.test(data);
}

function valid_telephone(data) {
    var regex = /^[\+]{0,2}\d{0,2}\s?\(?[\d\s]{1,5}\)?\s?[\d\s]{5,13}$/i;
    return regex.test(data);
}

function valid_postcode(data) {
    var regex = /[A-Z]{1,2}[0-9]{1,2}\s?[0-9][A-Z]{2}/i;
    return regex.test(data);
}

function valid_date(data) {
    var regex = /^[0-9]{2}\/[0-9]{2}\/[0-9]{4}$/i;
    return regex.test(data);
}

function valid_required(data) {
    if (data.length<=0) {
        return false;
    } else {
        return true;
    }
}

