PDA

View Full Version : Capture additional information during Facebook registration - First, Last Name


sacobra
01-03-2012, 04:59 PM
Hello,

I have 2 custom profile fields - First & Last name. During Facebook registration, these details are also passed to the code since these are public.

I've been trying to enable Facebook auto-registration & have been trying to get these 2 field info also from the FB authentication response and store it in the custom fields without success.

Below is what I've tried. Could someone figure out what I need to do more to get this working.

In functions_facebook.php, changed the below code to
// the array we are going to return, populated with FB data
$profilefields = array(
'fbuserid' => '',
'fbname' => '',
'biography' => '',
'location' => '',
'interests' => '',
'occupation' => '',
'homepageurl' => '',
'birthday' => '',
'avatarurl' => '',
'fallback_avatarurl' => '',
'timezone' => ''
);this
// the array we are going to return, populated with FB data
$profilefields = array(
'fbuserid' => '',
'fbname' => '',
'biography' => '',
'location' => '',
'interests' => '',
'occupation' => '',
'homepageurl' => '',
'birthday' => '',
'avatarurl' => '',
'fallback_avatarurl' => '',
'timezone' => '',
'first_name' => '',
'last_name' => '',
);Also
$profilefields['fallback_avatarurl'] .= (!empty($fb_info['pic']) ? $fb_info['pic'] : '');

$profilefields['first_name'] .= (!empty($fb_info['first_name']) ? $fb_info['first_name'] : ''); //Added by Sumith
$profilefields['last_name'] .= (!empty($fb_info['last_name']) ? $fb_info['last_name'] : ''); //Added by Sumith

return $profilefields;
}
$profilefields['fallback_avatarurl'] .= (!empty($fb_info['pic']) ? $fb_info['pic'] : '');

$profilefields['first_name'] .= (!empty($fb_info['first_name']) ?

return $profilefields;
}Added 2 entires in table SETTINGS to enable the below in register.php - fb_userfield_first_name & fb_userfield_last_name

Added this

case $vbulletin->options['fb_userfield_first_name']:
$profilefield['data'] = $fb_profilefield_info['first_name'];
$fb_importform_skip_fields[] = 'first_name';
break;

case $vbulletin->options['fb_userfield_last_name']:
$profilefield['data'] = $fb_profilefield_info['last_name'];
$fb_importform_skip_fields[] = 'last_name';
break;After
case $vbulletin->options['fb_userfield_occupation']:
$profilefield['data'] = $fb_profilefield_info['occupation'];
$fb_importform_skip_fields[] = 'occupation';
break;However with these changes the first & last name are not getting populated in the custom fields.

Can anyone help me here.

Thanks.

sacobra
01-07-2012, 02:10 AM
Can anyone help?

sacobra
04-17-2012, 06:18 PM
How to populate custom profile fields during Facebook auto-registration?

In hook fb_auto_register added the following code:
$userdata->set_userfields(array('field5' => $info['first_name']), true, 'normal', true);This resulted in a redirect to fbdoredirect=1

Even this didn't help
$userdata->set_userfields(array('field5' => $info['first_name']), true, 'register', true);

Anyone here getting custom profile fields populated during Facebook auto-registration? :confused:

sacobra
04-27-2012, 06:29 AM
SOLVED.

The array is being requested as reference. So need to create the array and assign the array variable to the set_userfields method.