﻿
var fbUser = {
    fbUserId: null,
    isLoggedIn: null,
    fbUserName: '',
    appPerms: null
};

var FBConnectRedirect = '';
//Develop:Shlomi[Shlomi] Date:02/01/2012 16:21:48 Ticket:fb bug:fb
function FacebookLogin() {

    FB.login(function (response) {
        if (response.authResponse) {
            FBConnectRedirect += FBConnectRedirect.indexOf("?") > -1 ? "&" : "?";
            FBConnectRedirect += "FBToken=" + response.authResponse.accessToken + '&UserID=' + response.authResponse.userID;
            window.location.href = DomainURL + "FBRegister/FBRegister.aspx" + FBConnectRedirect;

        } else {
            //console.log('User cancelled login or did not fully authorize.');
        }
    }, { scope: 'user_birthday,email' });

    return;

    FB.login(function (response) {

        if (response.session) {

            var perms = '';

            if (response.perms)
                perms = response.perms;

            createCookie("fbPerms", perms, 365);

            initPermissions();
            if (response.perms) {
                
                
                
                window.location.href = DomainURL + "FBRegister/FBRegister.aspx" + FBConnectRedirect;
            } else {
                //user clicked cancel - if we want a cancel action we can handle it here
            }
        }
    }, { perms: 'user_birthday,email' });
}


function initLogin() {
    fbUser.fbUserId = readFbCookie("uid");
    fbUser.isLoggedIn = (fbUser.fbUserId != null);
    initPermissions();
}

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 initPermissions() {
    fbUser.appPerms = readCookie("fbPerms");
    if (fbUser.appPerms == null) fbUser.appPerms = '';
}

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 readFbCookie(name) {
    var nameEQ = name + "=";

    var fbCookie = readCookie("fbs_" + apiKey);

    if (fbCookie != null) {

        if (fbCookie.length > 0)
            fbCookie = fbCookie.substring(1, fbCookie.length - 1);

        var ca = fbCookie.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;
}
