var accessToken;
var extendedPerms;
var swfName = "flashContent";

function onSessionChangeHandler(response)
{
	if (response.session) 
	{
		accessToken = response.session.access_token;
		onLoginSuccessHandler();
	} 
	else 
	{
		// alert("The user has logged out, and the cookie has been cleared");
	}
}

function FB_logout()
{
	FB.logout(onLogout) ;
}

function onLogout()
{
	flashCallBack("FB_onLogout");
}

function FB_login(perms)
{
	extendedPerms = perms;
	FB.getLoginStatus(onStatusResponseHandler);
	  
}

function onStatusResponseHandler(response)
{
	if(response.session)
	{
		onLoginSuccessHandler();	
	}
	else
	{
		FB.login(onLoginCallback, {perms:extendedPerms});	
	}
}

function onLoginCallback(response)
{
	// alert("login callback");
}

function FB_callMethod(data)
{
	var method = String(data[0]);
	
	switch(data.length)
	{
		case 1:
			FB.api(method, methodResponse);
		break;
		case 2:
			FB.api(method, data[1], methodResponse);
		break;
		case 3:
			FB.api(method, data[1], data[2], methodResponse);
		break;
		case 4:
			FB.api(method, data[1], data[2], data[3], methodResponse);
		break;
	}
	
}

function methodResponse(response)
{
	flashCallBack("FB_methodResponse", response);	
}

function onLoginSuccessHandler()
{
	//alert("onLoginSuccessHandler()");
	flashCallBack("FB_onLoginSuccess", accessToken);
}

function notLoggedHandler()
{
	//alert("notLoggedHandler()");
	flashCallBack("FB_notLogged");
}

function flashCallBack ( func ) 
{
	//console.log("flashCallBack - func = " + func);
	try{
		if( arguments.length > 1 )
		{
			document[swfName][func]( Array.prototype.slice.call(arguments).slice(1)[0]);
		}else{
			document[swfName][func]();
		}
	}
	catch(e)
	{
	
	}	
	
}

function FB_loginStatus()
{
	//alert("FB_loginStatus(), FB = "+FB.getLoginStatus);
	FB.getLoginStatus(statusCallback);
}

function statusCallback(response)
{
	//alert("callback");
	if(response.session)
		onLoginSuccessHandler();	
	else
		notLoggedHandler();	
}



function share()
{
	FB.ui(
	{
		 method: 'stream.publish',
		 message: '',
		 attachment: {name: 'Make It Great with Office 2010', caption: '', description: "",  href: 'http://www.makeitgreat2010.com/'},
		 action_links: [{ text: 'Watch', href: 'http://www.makeitgreat2010.com/' }],
		 user_message_prompt: 'Make It Great with Office 2010'
	}
	
	);
}
