/*
 * The facebook_onload statement is printed out in the PHP. If the user's logged in
 * status has changed since the last page load, then refresh the page to pick up
 * the change.
 *
 * This helps enforce the concept of "single sign on", so that if a user is signed into
 * Facebook when they visit your site, they will be automatically logged in -
 * without any need to click the login button.
 *
 * @param already_logged_into_facebook  reports whether the server thinks the user
 *                                      is logged in, based on their cookies
 *
 */
function facebook_onload( already_logged_into_facebook )
{
	// user state is either: has a session, or does not.
	// if the state has changed, detect that and reload.
	FB.ensureInit( function()
	{
		FB.Facebook.get_sessionState().waitUntilReady( function( session )
		{
			var is_now_logged_into_facebook = session ? true : false;

			// if the new state is the same as the old (i.e., nothing changed)
			// then do nothing
			if( is_now_logged_into_facebook == already_logged_into_facebook )
			{
				return;
			}

			// otherwise, refresh to pick up the state change
			facebook_login();
		});
	});
}

function facebook_onlogin(refresh) {
	$.getJSON("/myplay/fblogin",
	        function(data){
	            if(data.error) {
	              alert(data.error);
	              return;
	            }
            $("#login-menu").html(data.loginmenu);
            $("#playfeed").html(data.playfeed);
  	        
  	        var playlistCount = $.cookie('playlist');
    
				    if(playlistCount) {
				      $("#main-menu .myplay a").html('Mitt Play ('+playlistCount+')');
				      $("#main-menu .myplay").addClass('active'); 
				    }
  	        
  	        // Change perhaps? Regexp the whole url, now we're assuming a certain no of slashes    
            strUrl = document.location.href;
            var Variables = strUrl.split("/");
   
            if (Variables[4] == 'register' || Variables[4] == 'login') {
                window.location="/myplay";
            }
            
            if (refresh) {
              window.location.reload();
            }
	        });
}

/*
 * Our <fb:login-button> specifies this function in its onlogin attribute,
 * which is triggered after the user authenticates the app in the Connect
 * dialog and the Facebook session has been set in the cookies.
 */
function facebook_onlogin_ready()
{
	// In this app, we redirect the user back to index.php. The server will read
	// the cookie and see that the user is logged in, and will deliver a new page
	// with content appropriate for a logged-in user.
	//
	// However, a more complex app could use this function to do AJAX calls
	// and/or in-place replacement of page contents to avoid a full page refresh.
	//refresh_page();
	//facebook_login();
	//alert('onlogin ready');
}

/*
 * Do a page refresh after login state changes.
 * This is the easiest but not the only way to pick up changes.
 * If you have a small amount of Facebook-specific content on a large page,
 * then you could change it in Javascript without refresh.
 */
function refresh_page()
{
	window.location = 'index.php';
}

function facebook_logout()
{
	FB.Connect.logout( function() { window.location="/myplay/logout"; });
}

function facebook_disconnect()
{
//	window.location="/?r=myplay/facebookDisconnect";
	FB.Connect.logout( function() { window.location="/myplay/facebookDisconnect"; });
}