
function facebook_init(appid) {
    FB.init(appid, "/xd_receiver.htm");
    // enable facebook debug logging.
    /*
    FB.init({
        "debugLogLevel": 6,
        "apiKey": appid,
        "xdChannelUrl": "/xd_receiver.htm"

    });
    */
}

function isUserConnected() {
    FB.ensureInit(function() {
        FB.Connect.get_status().waitUntilReady(function(status) {
            var plugin = document.getElementById('SlFacebookApp');
            /*
            switch (status) {
            case FB.ConnectState.connected:
            alert("FB.ConnectState.connected");
            break;
            case FB.ConnectState.appNotAuthorized:
            alert("FB.ConnectState.appNotAuthorized");
            break;
            case FB.ConnectState.userNotLoggedIn:
            alert("FB.ConnectState.userNotLoggedIn");
            break;
            };
            */
            plugin.Content.FacebookLoginControl.GetStatus(status);            
        });
    });
}

function facebook_login() {
    FB.ensureInit(function() {
        FB.Connect.requireSession(facebook_onlogin, true);
    });
}

function facebook_logout() {
    FB.Connect.logout(facebook_onlogout);
}

function facebook_onlogin() {

    FB.Facebook.get_sessionState().waitUntilReady(function() {
        var session = FB.Facebook.apiClient.get_session();
        var plugin = document.getElementById('SlFacebookApp');
        plugin.Content.FacebookLoginControl.LoggedIn(session.session_key, session.secret, session.expires, session.uid);
    });
}

function facebook_onlogout() {
    var plugin = document.getElementById('SlFacebookApp');
    plugin.Content.FacebookLoginControl.LoggedOut();
}

function facebook_onpermission(accepted) {
    var plugin = document.getElementById('SlFacebookApp');
    plugin.Content.FacebookLoginControl.PermissionCallback(accepted);
}

function facebook_prompt_permission(permission) {
    FB.ensureInit(function() {
        FB.Connect.showPermissionDialog(permission, facebook_onpermission);
    });
}


