[Facebooker-talk] Stymied on FB Connect 'show permissions dialog'

vincent chu vincentchu at gmail.com
Mon Feb 2 03:23:47 EST 2009


Hi all --

I'm pretty stuck here trying to implement a feature using FB Connect.
The basic idea is for me to request an offline_access extended
permission, capture the updated session key, then save it to a user
object on my site. The strategy I've been using is as follows:

0) I embed a hidden form with a user id hash

1) I add a link "enable offline access". The link has an onclick call
to a javascript function 'add_fb_account()'

2) the js function 'add_fb_account' is really simple:

function add_fb_account() {
	FB.Connect.showPermissionDialog('offline_access', function(accepted)
{ document.getElementById('add_fb_user_form').submit(); } );
}

The idea is for the user to click the link, up pops the dialog, then a
form is passed to a controller which will associate the updated
session_key to the user stored int the user hash.

The problem is that the session_keys aren't updated until the next
time the user reloads a page with a call to FB.Facebook.init, which is
too late for my server-side code to capture a valid session_key. This
is because all of the server-side code that captures the session_key
is executed *before* the html-based javascript code that would update
the cookies. Very annoying!

I can't, for the life of me, figure out how to tell the
'showPermissionDialog' to update the session keys before submitting
the form. If I could figure this out, then the session_keys would be
updated by the javascript before redirecting to the form-controller
page, which would then execute the servier-side code to grab the
session key.

I feel like this is possible -- I'm looking for behavior similar to
the login-window where the session-key is set immediately after the
user logs in to FB Connect (before being passed to the next page).

Can anyone suggest anything?

Thanks,

Vince


More information about the Facebooker-talk mailing list