// required: http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php/en_US

FB.init(project_settings.FACEBOOK_API_KEY, project_settings.ROOT_URL + "socgraph/facebook/xdreceiver/");

function facebook_ready() {
    url = project_settings.ROOT_URL + 'socgraph/facebook/check_permissions'
    var permissions = "email,offline_access,read_stream,publish_stream,read_mailbox"
    $.ajax({
            type: "GET",
            url: url,
            cache: false,
            dataType: "json",
            success: function(data) {
                if (data != "") {
                    FB.Connect.showPermissionDialog(data,
                        function (perms) {
                            window.location.href = project_settings.ROOT_URL + "socgraph/facebook/callback";
                        }, true
                    );
                } else {
                    window.location.href = project_settings.ROOT_URL + "socgraph/facebook/callback";
                }
            },
            error: function(data) {
                FB.Connect.showPermissionDialog(permissions,
                    function (perms) {
                        window.location.href = project_settings.ROOT_URL + "socgraph/facebook/callback";
                    }, true
                );
            },
            complete: function() {
            }
        });
}

function facebook_login() {
    FB.Connect.requireSession(null, onCancel);
    FB.Facebook.get_sessionWaitable().waitUntilReady(facebook_ready);
}

function onCancel() {
    $.prompt.close();
}

$(document).ready(function() {
    $("#facebook-login-button").click(function() {
        $.prompt(gettext("Waiting for Facebook..."), {
            buttons: {}
        });
        facebook_login();
        return false;
    });
});

