function salesforce_api_fieldmap_edit_form_submit in Salesforce Suite 5.2
Same name and namespace in other branches
- 6.2 salesforce_api/salesforce_api.admin.inc \salesforce_api_fieldmap_edit_form_submit()
- 7 salesforce_api/salesforce_api.admin.inc \salesforce_api_fieldmap_edit_form_submit()
- 7.2 salesforce_api/salesforce_api.admin.inc \salesforce_api_fieldmap_edit_form_submit()
File
- salesforce_api/
salesforce_api.admin.inc, line 309 - Contains the admin page callbacks for the Salesforce module, including forms for general settings and fieldmap administration.
Code
function salesforce_api_fieldmap_edit_form_submit($form_id, $form_values) {
// Load the fieldmap from the database.
$map = salesforce_api_fieldmap_load($form_values['fieldmap_index']);
// Reset the fields array on the fieldmap.
$map['fields'] = array();
// Get the object definition for the target object.
if ($map['action'] == 'import') {
$object = salesforce_api_fieldmap_objects_load('drupal', $map['drupal']);
}
else {
$object = salesforce_api_fieldmap_objects_load('salesforce', $map['salesforce']);
}
// Loop through all the fields on the object.
foreach (array_keys($object['fields']) as $field) {
// If a field has been mapped to this field on the form...
if (!empty($form_values[$field])) {
// Add the association to the fieldmap's fields array.
$map['fields'][$field] = $form_values[$field];
}
}
// Save the updated fieldmap.
salesforce_api_fieldmap_save($map);
// Display a message and return to the admin page.
drupal_set_message(t('The changes have been saved.'));
return SALESFORCE_PATH_FIELDMAPS;
}