	function initFacebook() {
		FB_RequireFeatures(["Connect"], function() {
			FB.Facebook.init(apiKey, 'xd_receiver.html',
			{ "ifUserConnected"    : statusChangeHandler,
			"ifUserNotConnected" : statusChangeHandler }
		);                          
	});
	}
	
	/*
	function getSessionKey() {		
		var sess = FB.Facebook.apiClient.get_session();
		var ret = {};
		if (sess) {
			ret.fb_sig_session_key = sess.session_key;
						
			ret.fb_sig_ss = sess.secret;
			ret.fb_sig_user = sess.uid;
			ret.fb_sig = sess.sig;
			ret.fb_sig_api_key = apiKey;
		}
		return ret;
	}
	*/
	
	function statusChangeHandler() {
		var swf = getSWF();
		var sess = FB.Facebook.apiClient.get_session();
		var skey = null;
		
		if(sess) skey = sess.session_key;
		
		swf.loginFacebook(skey);
	}
	
	function platformLoaded() {
		initFacebook();
	}
	
	function connect() {
		FB.ensureInit(function() {
			FB.Connect.get_status().waitUntilReady(function(status) {
				switch(status) {
				case FB.ConnectState.connected:
					statusChangeHandler();
					break;
				case FB.ConnectState.appNotAuthorized:
				case FB.ConnectState.userNotLoggedIn:
					FB.Connect.requireSession(statusChangeHandler,null,true);
					break;
				}
			});
		});
	}
	
	function sendPublicMessage(target,msg) {
		FB.Connect.streamPublish('',{},null,target);
	}
	
	function streamPublish(message,attachment,actions,target,prompt) {
		FB.Connect.streamPublish(message,attachment,actions,target,prompt);
	}
