function salesforce_mapping_related_entity_fieldmap_push_value in Salesforce Suite 7.3
Value callback for related entity fieldmap type.
Parameters
array $fieldmap: Map of Drupal field to Salesforce field associations.
object $entity_wrapper: Entity wrapper object.
Return value
mixed The value to push.
1 string reference to 'salesforce_mapping_related_entity_fieldmap_push_value'
- salesforce_mapping_salesforce_mapping_fieldmap_type in modules/
salesforce_mapping/ includes/ salesforce_mapping.fieldmap_type.inc - Implements hook_salesforce_mapping_fieldmap_type().
File
- modules/
salesforce_mapping/ includes/ salesforce_mapping.fieldmap_type.inc, line 134 - Data and callbacks for fieldmap types.
Code
function salesforce_mapping_related_entity_fieldmap_push_value($fieldmap, $entity_wrapper) {
$value = NULL;
if (property_exists($entity_wrapper->{$fieldmap['drupal_field']['fieldmap_value']}, 'isEntityList')) {
$related_wrapper = $entity_wrapper->{$fieldmap['drupal_field']['fieldmap_value']}
->get(0);
}
else {
$related_wrapper = $entity_wrapper->{$fieldmap['drupal_field']['fieldmap_value']};
}
if ($related_entity = $related_wrapper
->value()) {
list($related_entity_id) = entity_extract_ids($related_wrapper
->type(), $related_entity);
$mapping_object = salesforce_mapping_object_load_by_drupal($related_wrapper
->type(), $related_entity_id);
if ($mapping_object) {
$value = $mapping_object->salesforce_id;
}
}
return $value;
}