// Define Account helper class
var Account = {
    logout: function() {
        Facebook.logout();
    }
}

// Define Facebook helper class
var Facebook = {
    loginUrl: './index:fbm_login.html',
    logoutUrl: './index:logout.html',
    
    // Initialise Facebook
    init: function(appId) {
    
        // Init FB SDK
        FB.init({
            appId: appId,
            cookie: true,
            status: true,
            xfbml: true
        });
        
        // Login functions
        FB.Event.subscribe('auth.login',function(response) {
            var session = FB.getSession();
            if(session !== null) {
                var request = new Request({
                    url: Facebook.loginUrl,
                    method: 'post',
                    data: 'session='+JSON.encode(session),
                    onSuccess: function(response) {
                        var o = JSON.decode(response);
                        if(o['error']) {
                            alert(o['error']);
                            FB.logout();
                        } else if(o['success']) {
                            window.location.reload(true);
                        } else {
                            alert('There was an error logging into the website');
                        }
                    }
                }).send();
            }
        });
        
    },
    
    // Logout of Facebook (if logged in) and website
    logout: function() {
        var session = FB.getSession();
        if(session !== null) { 
		//FB.logout();
		FB.logout(function() {
			window.location.href = Facebook.logoutUrl;
		});
	} else {
        	window.location.href = Facebook.logoutUrl;
    
	}
    }
}

