﻿function changeFontSize(size) {
    if (size == 'normal') {
        document.body.style.fontSize = '62.5%';
        eraseCookie('fontSizeHB');
        createCookie('fontSizeHB', 'normal', 1);
    }
    else if (size == 'large') {
        document.body.style.fontSize = '83%';
        eraseCookie('fontSizeHB');
        createCookie('fontSizeHB', 'large', 1);
    }
}

function createCookie(name, value, days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        var expires = "; expires=" + date.toGMTString();
    }
    else var expires = "";
    document.cookie = name + "=" + value + expires + "; path=/";
}

function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for (var i = 0; i < ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) == ' ') c = c.substring(1, c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
    }
    return null;
}

function eraseCookie(name) {
    createCookie(name, "", -1);
}

function validateEmail(elementValue) {
    var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    return emailPattern.test(elementValue);
}

var callInProgress = false;

function ShowSendPageSpinner() {
    $("#TB_Send .content").hide();
    $("#TB_Send .footer").hide();
    $("#TB_Send .spinner").show();
}

function HideSendPageSpinner() {
    $("#TB_Send .spinner").hide();
    $("#TB_Send .content").show();
    $("#TB_Send .footer").show();
}

function ValidateSendPageInput() {
    var valid = true;

    var name = $("#TB_Send .name input").val();
    var email = $("#TB_Send .email input").val();

    if (name == '') {
        $("#TB_Send .name span.err").show();
        valid = false;
    }
    else {
        $("#TB_Send .name span.err").hide();
    }


    if (email == '' ) {
        $("#TB_Send .email span.err").show();
        valid = false;
    }
    else {
        if (validateEmail(email)) {
            $("#TB_Send .email span.err").hide();
        }
        else {
            $("#TB_Send .email span.err").attr("title", "Netfang ekki löglegt!").show();
            valid = false;
        }
    }

    return valid;
}

function SendPage() {

    if (!callInProgress && ValidateSendPageInput()) {

        ShowSendPageSpinner();

        var name = $("#TB_Send .name input").val();
        var email = $("#TB_Send .email input").val();
        var body = $("#TB_Send .body textarea").text();

        callInProgress = true;
        Hreinsibilar.Services.Contact.SendMail(name, email, body, SendPageComplete, SendPageFailed);
    }
}

function SendPageComplete(data, methodContext, methodName) {
    if (data != null) {
        if (data == 1) {//Success
            $("#TB_Send .field").hide();
            $("#TB_Send .controls").hide();
            $("#TB_Send .message p").text('Skilaboð send.').removeClass("err").parent("div.message").show();
        }
        else {//Failed
            $("#TB_Send .message p").text("Gat ekki sent skilaboð, reynið aftur síðar.").addClass("err").parent("div.message").show();
        }
    }
    else {//Error
        alert("Error: Sending page.");
    }

    //Hide the spinner
    HideSendPageSpinner();
    //Set the loading status to false
    callInProgress = false;

}

function SendPageFailed(exception, methodContext, methodName) {
    //Error

    alert("Error: Sending page.");

    //Hide the spinner
    HideSendPageSpinner();
    //Set the loading status to false
    callInProgress = false;
}
