function _salesforce_mapping_get_required_mapping_fields in Salesforce Suite 7.3
Helper to discover which fields required for mapping do not have values.
Parameters
array $form: FAPI form array.
array $form_state: Current state of the form.
Return value
array List of the labels of the fields that are required for mapping fields but currently do not have any values.
1 call to _salesforce_mapping_get_required_mapping_fields()
- salesforce_mapping_form in modules/
salesforce_mapping/ includes/ salesforce_mapping.admin.inc - Return a form for a Salesforce mapping entity.
File
- modules/
salesforce_mapping/ includes/ salesforce_mapping.admin.inc, line 1213 - Configuration page for creating and modifying a mapping.
Code
function _salesforce_mapping_get_required_mapping_fields(&$form, &$form_state) {
// Retreive the label of the fields from the form to keep these in sync and
// hopefully multilingual compliant.
$drupal_entity_type_label =& $form['drupal_entity']['drupal_entity_type']['#title'];
$drupal_bundle_label =& $form['drupal_entity']['drupal_bundle']['#title'];
$salesforce_object_type_label =& $form['salesforce_object']['salesforce_object_type']['#title'];
$fields = array(
$drupal_entity_type_label => _salesforce_mapping_get_default_value('drupal_entity_type', $form_state),
$drupal_bundle_label => _salesforce_mapping_get_default_value('drupal_bundle', $form_state),
$salesforce_object_type_label => _salesforce_mapping_get_default_value('salesforce_object_type', $form_state),
);
// Weed out fields that have a value to leave us only with those that don't
foreach ($fields as $label => $value) {
if (!empty($value)) {
unset($fields[$label]);
}
}
// Return only the labels.
return array_keys($fields);
}