diff --git a/sites/all/modules/fb/fb.js b/sites/all/modules/fb/fb.js
index 024d1a6..37595f4 100644
--- a/sites/all/modules/fb/fb.js
+++ b/sites/all/modules/fb/fb.js
@@ -39,8 +39,15 @@ if (typeof(window.fbAsyncInit) != 'undefined') {
   debugger;
 };
 
-// This function called by facebook's javascript when it is loaded.
-// http://developers.facebook.com/docs/reference/javascript/
+/**
+ * This function called by facebook's javascript when it is loaded.
+ * http://developers.facebook.com/docs/reference/javascript/
+ *
+ * This function has grown complex trying to handle various
+ * permutations of facebook's APIs.  The FB functions that take a
+ * callback (i.e. FB.getLoginStatus and FB.api) are often never called
+ * back.  So, to work around that, there may be some redundant calls.
+ */
 window.fbAsyncInit = function() {
 
   if (Drupal.settings.fb) {
@@ -99,6 +106,8 @@ FB_JS.initFinal = function(response) {
 
   FB_JS.eventSubscribe();
 
+  FB_JS.showConnectedMarkup(); // Make sure this called even when FB callbacks are not called.
+
   FB.XFBML.parse();
 }
 
@@ -310,7 +319,7 @@ FB_JS.ajaxEvent = function(event_type, request_data) {
     }
 
     // In case cookies are not accurate, always pass in signed request.
-    if (FB._oauth) {
+    if (typeof(FB.getAuthResponse) != 'undefined') {
       response = FB.getAuthResponse();
       if (response) {
         request_data.signed_request = response.signedRequest;
