You are here

function salesforce_mapping_object_form_save_mapping_submit in Salesforce Suite 7.3

Implements hook_form_submit().

1 string reference to 'salesforce_mapping_object_form_save_mapping_submit'
salesforce_mapping_object_form in modules/salesforce_mapping/includes/salesforce_mapping_object.admin.inc
Implements hook_form().

File

modules/salesforce_mapping/includes/salesforce_mapping_object.admin.inc, line 131

Code

function salesforce_mapping_object_form_save_mapping_submit($form, &$form_state) {
  $mapping_object = $form_state['salesforce_mapping_object'];
  if (is_null($mapping_object)) {
    $mapping_object = entity_create('salesforce_mapping_object', array(
      'entity_id' => $form_state['values']['entity_id'],
      'entity_type' => $form_state['values']['entity_type'],
      'last_sync' => time(),
    ));
  }
  $mapping_object->salesforce_id = $form_state['values']['salesforce_id'];

  // @todo this would be sensible but causes a DB explosion:
  // $mapping_object->last_sync->set(NULL);
  $mapping_object->last_sync_message = t('Mapping object edited via the UI.');
  $mapping_object->last_sync_status = SALESFORCE_MAPPING_STATUS_SUCCESS;
  $mapping_object->last_sync_action = $form_state['values']['submit'] == 'Update mapping' ? 'relink' : 'created';
  $mapping_object->entity_updated = REQUEST_TIME;
  $mapping_object
    ->save();
  drupal_set_message(t('Salesforce mapping object has been saved.'));
  $uri = $mapping_object
    ->uri();
  $form_state['redirect'] = $uri['path'];
}