You are here

function salesforce_mapping_salesforce_mapping_fieldmap_type in Salesforce Suite 7.3

Implements hook_salesforce_mapping_fieldmap_type().

File

modules/salesforce_mapping/includes/salesforce_mapping.fieldmap_type.inc, line 11
Data and callbacks for fieldmap types.

Code

function salesforce_mapping_salesforce_mapping_fieldmap_type() {
  $types = array(
    'property' => array(
      'label' => t('Properties'),
      'field_type' => 'select',
      'description' => t('Select a Drupal field or property to map to a Salesforce field. Related are left out and should be handled using another fieldmap type like tokens.'),
      'options_callback' => 'salesforce_mapping_property_fieldmap_options',
      'push_value_callback' => 'salesforce_mapping_property_fieldmap_push_value',
      'pull_value_callback' => 'salesforce_mapping_property_fieldmap_pull_value',
      'validation_callback' => 'salesforce_mapping_property_validation',
    ),
    'token' => array(
      'label' => t('Token'),
      'description' => t('Enter a token to map a Salesforce field..'),
      'field_type' => 'textfield',
      'push_value_callback' => 'salesforce_mapping_token_fieldmap_value',
    ),
    'constant' => array(
      'label' => t('Constant'),
      'description' => t('Enter a constant value to map to a Salesforce field.'),
      'field_type' => 'textfield',
      'push_value_callback' => 'salesforce_mapping_constant_fieldmap_value',
    ),
    'related_entity' => array(
      'label' => t('Related entities'),
      'field_type' => 'select',
      'description' => t('If an existing connection is found with the selected entity, the linked identifiers will be used.'),
      'options_callback' => 'salesforce_mapping_related_entity_fieldmap_options',
      'push_value_callback' => 'salesforce_mapping_related_entity_fieldmap_push_value',
      'pull_value_callback' => 'salesforce_mapping_related_entity_fieldmap_pull_value',
    ),
  );
  if (module_exists('relation_endpoint')) {
    $types['relation_endpoints'] = array(
      'label' => t('Relation endpoints'),
      'field_type' => 'select',
      'description' => t('Allows multiple Salesforce fields to be selected as endpoint values.'),
      'options_callback' => 'salesforce_mapping_relation_endpoints_fieldmap_options',
      'pull_value_callback' => 'salesforce_mapping_relation_endpoints_fieldmap_pull_value',
      'salesforce_multiple_fields' => TRUE,
    );
  }
  return $types;
}