//Local Variable with Flash Content id. default = flashcontent
var as_swf_name = settings.SWF_NAME; //"flashcontent";
var status = 0;

//Initialize Facebook
function fbInit(pAsSwfName,pApi_key,pReceiver){
   as_swf_name = pAsSwfName;
   FB.init(pApi_key,pReceiver);
}

//JavaScript Connect methods
function login(){  
	//alert('[login]');
   FB.Connect.requireSession( onLoginHandler );
}

function logout(){    
   FB.Connect.logout( onLogoutHandler );
}

function is_logged_in() {
	FB.Connect.get_status().waitUntilReady( onStatusHandler );
}


//Event Handlers
function onLoginHandler(){
   flashCallBack( "onLogIn" );
}
function onLogoutHandler(){
   flashCallBack( "onLogOut" );
}

function onStatusHandler( status ){
	flashCallBack( "onStatusHandler", status );
}

//Method to dispatch an Event to Flash
function flashCallBack ( func ) {
   if( arguments.length > 1 ){
       document[as_swf_name][func]( Array.prototype.slice.call(arguments).slice(1)[0]);
   }else{
       document[as_swf_name][func]();
   }
}


// FLASS OBJ
function flashObj() {
	return swfobject.getObjectById("flashcontent") ;
}

// Examples:
// var sql = "SELECT pic_square FROM user WHERE uid = 100000188544105";
function queryFB(sql,id) {
	FB.Facebook.apiClient.fql_query(sql, function(result, ex) {
		flashObj().onSQLComplete(result,id);
	});
}
