﻿var authenticationCookieOperationCompletedCount = 0;

function triggerButtonClick(buttonClassIdentifier) {
    $("#irfrAuthRede").remove();
    $('.' + buttonClassIdentifier).trigger('click');
}

function authenticationCookieOperationCompleted(callbackTriggerButtonClassIdentifier) {
    ++authenticationCookieOperationCompletedCount;

    if (authenticationCookieOperationCompletedCount >= initiativeHostArray.length) {
        triggerButtonClick(callbackTriggerButtonClassIdentifier);

        authenticationCookieOperationCompletedCount = 0;
    }
}

function authenticationCookieOperationCompletedCallbackFunction(callbackFunction) {
    ++authenticationCookieOperationCompletedCount;

    if (authenticationCookieOperationCompletedCount >= initiativeHostArray.length) {
        callbackFunction();

        authenticationCookieOperationCompletedCount = 0;
    }
}


function loginSingleSignOnAndCallback(login, password, callbackTriggerButtonClassIdentifier) {
    if (validate(login, password)) {
        for (var x = 0; x < initiativeHostArray.length; x++) {
            var url = initiativeHostArray[x] + "/auth.htm?u=" + login + "&amp;p=" + password;
            $('#authDiv').append("<iframe width='0' id='irfrAuthRede' height='0' src='" + url + "'></iframe>");
        }
        setTimeout(function () { triggerButtonClick(callbackTriggerButtonClassIdentifier); }, 3000);
    }
    return false;
}

function validate(login, password) {
    if (login == '') {
        ModalBox.Show({ Title: "Informe o campo email.", Width: 300, Error: true });
        return false;
    }
    else {
        var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$/;
        if (!emailPattern.test(login)) {
            ModalBox.Show({ Title: "Email inválido.", Width: 300, Error: true });
            return false;
        }
        else if (password == '') {
            ModalBox.Show({ Title: "Informe o campo senha.", Width: 300, Error: true });
            return false;
        }
    }

    return true;
}

function logoutSingleSignOnAndCallback(callbackTriggerButtonClassIdentifier) {
    logoutSingleSignOn();
    setTimeout(function () { triggerButtonClick(callbackTriggerButtonClassIdentifier) }, 3000);
    return false;
}
function logoutSingleSignOn() {
    for (var x = 0; x < initiativeHostArray.length; x++) {
        var url = initiativeHostArray[x] + "/auth.htm?l=true";
        $('#authDiv').append("<iframe width='0' id='irfrAuthRede' height='0' src='" + url + "'></iframe>");
    }
    return false;
}

function logoutSingleSignOnAndCallbackFunction(callbackFunction) {
    logoutSingleSignOn();
    setTimeout(function () { callbackFunction(); }, 3000);
    $("#irfrAuthRede").remove();
    return false;
}

function closeCustomPopupFancybox(popupUrl) {
    if (popupUrl != null && popupUrl != undefined && popupUrl != '') {
        $(parent.document)[0].location.href = popupUrl;
    }
    else {
        $(parent.document)[0].location.reload();
    }

    parent.$.fancybox.close();
}
