function salesforce_api_fieldmap_options in Salesforce Suite 7.2
Same name and namespace in other branches
- 5.2 salesforce_api/salesforce_api.module \salesforce_api_fieldmap_options()
- 6.2 salesforce_api/salesforce_api.module \salesforce_api_fieldmap_options()
- 7 salesforce_api/salesforce_api.module \salesforce_api_fieldmap_options()
Returns an array of fieldmaps for use as options in the Forms API.
Parameters
$drupal_entity: Filters the fieldmaps by Drupal object.
$drupal_bundle: Filters the fieldmaps by Drupal bundle.
$salesforce: Filters the fieldmaps by Salesforce object.
$automatic: Optional: Filter the fieldmaps to only pull those marked automatic.
Return value
A FAPI options array of all the matching fieldmaps.
2 calls to salesforce_api_fieldmap_options()
- sf_entity_salesforce_form in sf_entity/
sf_entity.module - Displays the Salesforce synchronization form.
- sf_entity_salesforce_form_access in sf_entity/
sf_entity.module - Access callback for the Salesforce tab on entities.
File
- salesforce_api/
salesforce_api.module, line 869 - Defines an API that enables modules to interact with the Salesforce server.
Code
function salesforce_api_fieldmap_options($drupal_entity = NULL, $drupal_bundle = NULL, $salesforce = NULL, $automatic = NULL) {
$options = array();
// This does not need to not be optimized for performance since it's only an admin interface.
$maps = salesforce_api_salesforce_fieldmap_load_all();
foreach ($maps as $map) {
if ($drupal_entity && $map->drupal_entity != $drupal_entity) {
continue;
}
if ($drupal_bundle && $map->drupal_bundle != $drupal_bundle) {
continue;
}
if ($salesforce && $map->salesforce != $salesforce) {
continue;
}
if (is_array($map)) {
$map = (object) $map;
}
// Setup some replacement args for the label.
$args = array(
'@drupal' => salesforce_api_fieldmap_object_label('drupal', $map->drupal_entity, $map->drupal_bundle),
'@salesforce' => salesforce_api_fieldmap_object_label('salesforce', 'salesforce', $map->salesforce),
);
$options[$map->name] = t('Drupal @drupal to Salesforce @salesforce', $args);
}
return $options;
}