/* * 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 * */ var temp_check_facebook_login = false; var facebook_session_check = false; 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; facebook_session_check = is_now_logged_into_facebook; // 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; }*/ //alert(temp_check_facebook_login); if (is_now_logged_into_facebook == true && temp_check_facebook_login == false) { if(document.getElementById('facebook_connect_button') != null) { //document.getElementById('facebook_connect_button').innerHTML = 'Connect
Facebook
'; //document.getElementById('facebook_connect_button').innerHTML = 'Connect
Facebook
'; document.getElementById('facebook_connect_button').innerHTML = 'Connect
Facebook
'; } return; } //if(is_now_logged_into_facebook == true) return; // otherwise, refresh to pick up the state change refresh_page(); }); temp_check_facebook_login = true; }); var query = 'is_now_logged_into_facebook=' + facebook_session_check; $j.post(my_base_url+my_pligg_base+"/ajaxFacebookCheckStatus", query, function(result) { //alert(result); } ); } /* * Our 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(); } /* * 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(location) { if(location) //window.location = 'http://localhost/linkhayv2'; //window.location = 'http://dev.linkhay.com'; window.location = 'http://linkhay.com'; else { //window.location = 'http://localhost/linkhayv2/fbconnect/index'; //window.location = 'http://dev.linkhay.com/fbconnect/index'; window.location = 'http://linkhay.com/fbconnect/index'; } } /* * Prompts the user to grant a permission to the application. */ function facebook_prompt_permission(permission) { FB.ensureInit(function() { FB.Connect.showPermissionDialog(permission); }); } /* * Show the feed form. This would be typically called in response to the * onclick handler of a "Publish" button, or in the onload event after * the user submits a form with info that should be published. * */ function facebook_publish_feed_story(form_bundle_id, template_data) { // Load the feed form FB.ensureInit(function() { FB.Connect.showFeedDialog(form_bundle_id, template_data); //FB.Connect.showFeedDialog(form_bundle_id, template_data, null, null, FB.FeedStorySize.shortStory, FB.RequireConnect.promptConnect); // hide the "Loading feed story ..." div ge('feed_loading').style.visibility = "hidden"; }); } /* * If a user is not connected, then the checkbox that says "Publish To Facebook" * is hidden in the "add run" form. * * This function detects whether the user is logged into facebook but just * not connected, and shows the checkbox if that's true. */ function facebook_show_feed_checkbox() { FB.ensureInit(function() { FB.Connect.get_status().waitUntilReady(function(status) { if (status != FB.ConnectState.userNotLoggedIn) { // If the user is currently logged into Facebook, but has not // authorized the app, then go ahead and show them the feed dialog + upsell checkbox = ge('publish_fb_checkbox'); if (checkbox) { checkbox.style.visibility = "visible"; } } }); }); }