function sf_user_salesforce_form_submit in Salesforce Suite 6.2
Same name and namespace in other branches
- 5.2 sf_user/sf_user.module \sf_user_salesforce_form_submit()
File
- sf_user/
sf_user.module, line 412 - Integrates the core user object and profile module with the Salesforce API.
Code
function sf_user_salesforce_form_submit($form, &$form_state) {
switch ($form_state['values']['op']) {
// Export the user to Salesforce.
case t('Export user'):
case t('Export changes to Salesforce'):
if (sf_user_export($form_state['values']['uid'], $form_state['values']['name'], $form_state['values']['sfid'])) {
drupal_set_message(t('User successfully exported to Salesforce.'));
}
else {
drupal_set_message(t('An error occurred while exporting the user to Salesforce. Check the watchdog for more information.'), 'error');
}
break;
// Import changes from Salesforce.
case t('Import changes from Salesforce'):
if (sf_user_import($form_state['values']['sfid'], $form_state['values']['name'], $form_state['values']['uid'])) {
drupal_set_message(t('The user has been updated with values from Salesforce.'));
}
else {
drupal_set_message(t('An error occurred while importing the changes from Salesforce. Check the watchdog for more information.'), 'error');
}
break;
case $form_state['values']['link']:
if (!is_sfid($form_state['values']['sfid'])) {
drupal_set_message(t('Invalid SFID provided.'), 'error');
break;
}
salesforce_api_id_save('user', $form_state['values']['uid'], $form_state['values']['sfid'], $form_state['values']['fieldmap'], 'link');
break;
case $form_state['values']['unlink']:
case t('Unlink'):
if (!isset($form_state['storage']['confirm'])) {
$form_state['storage']['confirm'] = TRUE;
$form_state['rebuild'] = TRUE;
}
else {
unset($form_state['storage']['confirm']);
$account = $form_state['values']['account'];
salesforce_api_id_unlink(array(
'oid' => $account->uid,
'name' => $account->salesforce->name,
));
drupal_set_message(t('The user !uid has been unlinked from Salesforce record !sfid.', array(
'!uid' => $account->uid,
'!sfid' => $account->salesforce->sfid,
)));
}
break;
}
}