function _sf_fieldmap_edit_get_unmapped_fields in Salesforce Suite 7.2
Helper function for populating the unmapped fields dropdown box.
1 call to _sf_fieldmap_edit_get_unmapped_fields()
- salesforce_api_fieldmap_edit_form in salesforce_api/
salesforce_api.admin.inc
File
- salesforce_api/
salesforce_api.admin.inc, line 841 - Contains the admin page callbacks for the Salesforce module, including forms for general settings and fieldmap administration.
Code
function _sf_fieldmap_edit_get_unmapped_fields($fields, $map) {
// Iterate over the Salesforce-side fields to sort them.
$default_fields = array();
$custom_fields = array();
foreach ($fields as $field_name => $data) {
if (strpos($field_name, '__c') !== FALSE) {
$custom_fields[$field_name] = $data;
}
else {
$default_fields[$field_name] = $data;
}
}
$custom_fields = _sf_subval_sort($custom_fields, 'label');
// Determine which fields haven't been set yet.
$unmapped_fields_default = array();
foreach ($default_fields as $key => $field) {
if (!isset($map->fields[$key])) {
$unmapped_fields_default[$key] = $field['label'];
}
}
if (count($custom_fields)) {
$unmapped_fields_custom = array();
foreach ($custom_fields as $key => $field) {
if (!isset($map->fields[$key])) {
$unmapped_fields_custom[$key] = $field['label'];
}
}
}
if (isset($unmapped_fields_custom)) {
$unmapped_fields = array(
'Default Fields' => $unmapped_fields_default,
'Custom Fields' => $unmapped_fields_custom,
);
}
else {
$unmapped_fields = array(
'Default Fields' => $unmapped_fields_default,
);
}
return $unmapped_fields;
}