﻿var loginCallback = null;
var loginCallbackArgArray = null;
var loginDialog = null;

function openCenteredLoginDialog(url, height, width, name, parms) {
    var left = Math.floor((screen.width - width) / 2);
    var top = Math.floor((screen.height - height) / 2);
    var winParms = "top=" + top + ",left=" + left + ",height=" + height + ",width=" + width;
    if (parms) { winParms += "," + parms; }
    var win = window.open(url, name, winParms);
    //if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
    return win;
}

function doLoginOverlay(message, callback, argArray) {
    loginCallback = (callback != null) ? callback : null;
    loginCallbackArgArray = (argArray != null) ? argArray : null;

    isUserApproved(function (value) { isApproved = value; }, false);
    if (!isApproved) {
        var url = "/Login/LoginDialog.aspx?backurl=" + escape("/fb/fb-responce.htm");
        if (message != null) url += "&m=" + escape(message);
        loginDialog = openCenteredLoginDialog(url, 365, 685, 'MDILogin', 'status=yes,toolbar=no,menubar=no,location=no');
        setTimeout('waitLoginCompleted();', 200);
    } else {
        doAfterLogin();
    }
}

function waitLoginCompleted() {
    isUserApproved(function (value) { isApproved = value; }, false);
    if (isApproved) {
        loginDialog.close();
        doAfterLogin();
    } else {
        setTimeout('waitLoginCompleted()', 200);
    }
}

function doAfterLogin() {
    if (loginCallback != null) {
        if (loginCallbackArgArray != null)
            loginCallback.apply(window, loginCallbackArgArray);
        else
            loginCallback.apply(window);
    }
}
