XF 2.2 Breaking up with Facebook (disabling Connected Accounts)?

Joe Link

Well-known member
We've been considering disabling Connected Accounts for quite some time now. Facebook disabled our integration because we didn't respond to the app review process in time (our fault). Rather than having them review it, I'm thinking we might use this as an opportunity to end the relationship.

I'll be sending out an email to all connected account holders prior to disabling it, but I have some technical questions which will determine how it's communicated:
  1. What is the most elegant way to convert our 3,000+ Facebook-connected members?
  2. If we instruct them to use the lost password form to set a password, does it matter if we disable the integration beforehand?
  3. If we disable and re-enable the integration, do those accounts stay connected or does the integration need to be re-established?
  4. Anything else I might not be considering (from a technical/workflow standpoint)?
 

briansol

Well-known member
in for the read / joint effort on this one.

facebook just closed my account because i couldn't deal with the back and forth of them testing our integration. It's just not worth my time so i shut it off.

Unfortunately, we are not able to login with credentials provided (we need email and password). Please send us credentials of a test user that is already registered and linked to a Facebook account. This will help us review the Facebook Login functionality in your app. For more information about creating a test user, visit our Dev Docs: https://developers.facebook.com/docs/apps/test-users.

Thank you for your cooperation. Please respond to this email with any other questions about this request.


Facebook Developers Operations Team
over and over again.


no users have contacted me yet, but i want to know what happens too.
 
Last edited:

Kevin

Well-known member
facebook just closed my account because i couldn't deal with the back and forth of them testing our integration. It's just not worth my time so i shut it off.
Yeah, I'm contemplating the same thing for the same reason. At the moment we only have a few dozen accounts connected to FB and of them only about half are actually active.

Here's an old thread with @Mike saying that the impact would be that the accounts would need to go through the 'reset password' process but the thread dates back to XF 1.5 - I don't know if there is a more elegant way with XF 2.x to break away from FB (eg: maybe put them all in a special secondary group so we can email just that group to let them know they need to reset their password or something else).

 

briansol

Well-known member
Yeah, I'm contemplating the same thing for the same reason. At the moment we only have a few dozen accounts connected to FB and of them only about half are actually active.

Here's an old thread with @Mike saying that the impact would be that the accounts would need to go through the 'reset password' process but the thread dates back to XF 1.5 - I don't know if there is a more elegant way with XF 2.x to break away from FB (eg: maybe put them all in a special secondary group so we can email just that group to let them know they need to reset their password or something else).

that table doesn't exists in xf2...

here's a short snippit i ran to get users active since jan 1 2021 who are linked with fb.
accounts older than that, they probably need to reset their password anyway.


Code:
SELECT * FROM `xf_user_connected_account` a
left outer join xf_user u on u.user_id = a.user_id
where a.provider='facebook'
and u.last_activity > 1609477200
and u.user_state = 'valid'

i have 65 users to care about.
 

Kevin

Well-known member
i have 65 users to care about.
I think you may be able to pare that down if you check for the absence of a password. If (and that is always a big IF) I am right, you can join over to xf_user_authenticate and check the scheme_class. If the scheme is anything else then they set a local password.

Code:
select  
    xfU.username
    ,from_unixtime(xfU.last_activity) as Last_Activity

from 
    xf_user_connected_account as xfUCA
    left outer join xf_user as xfU 
        on xfUCA.user_id = xfU.user_id
    left outer join xf_user_authenticate as xfA
        on xfUCA.user_id = xfA.user_id
where 
    xfUCA.provider='facebook'
    and xfU.last_activity > unix_timestamp('2021-01-01 00:00:00')
    and xfU.user_state = 'valid'
    and xfA.scheme_class = 'XF:NoPassword'

order by 
    xfU.last_activity desc    
;
 

Wildcat Media

Well-known member
Funny, I got that same alert also. Then I realized that mine was for an older fb implementation that I hadn't used in years. My newer ones, set up maybe a year or two ago, remain untouched, for two different forums. It could be that the interrogation process for setting up newer connected accounts is more thorough--I recall I had little if any issues making these newer connections. Maybe that would be a solution--doing an end run around them by setting up a newer connected account through fb?

Their email request really bothered me, though (I had a similar message in my email alert):

Unfortunately, we are not able to login with credentials provided (we need email and password). Please send us credentials of a test user that is already registered and linked to a Facebook account.

No, I'm not setting them up with a test account, and how can I link a test account to an fb account that doesn't, and won't, exist? If this happens with my newer connected account setups, then I'm out. Of all the integrations I have set up, I'm not jumping through a lot of hoops for one company who is too large for their own good.
 
Top