You are here

function views_gantt_prepopulate_field in Views Gantt 7.2

Helper function for prepopulation fields on add form.

1 call to views_gantt_prepopulate_field()
views_gantt_form_alter in ./views_gantt.module
Implements hook_form_alter().

File

./views_gantt.module, line 436
Module file for Views Gantt

Code

function views_gantt_prepopulate_field($field_name, $value, &$form, $form_state) {
  if (!isset($form[$field_name])) {
    return FALSE;
  }
  if (isset($form[$field_name]['#language']) && !empty($form[$field_name]['#language'])) {
    $language = $form[$field_name]['#language'];
  }
  else {
    $language = LANGUAGE_NONE;
  }
  $widget = isset($form_state['field'][$field_name][$language]['instance']['widget']['type']) ? $form_state['field'][$field_name][$language]['instance']['widget']['type'] : '';
  if (empty($widget)) {
    return FALSE;
  }
  switch ($widget) {
    case 'options_select':
      $form[$field_name][$language]['#default_value'][0] = $value;
      break;
    case 'options_buttons':
      $form[$field_name][$language]['#default_value'] = $value;
      break;
    case 'node_reference_autocomplete':
      $form[$field_name][$language][0]['nid']['#default_value'] = $value;
      break;
    case 'entityreference_autocomplete':
      $node = node_load($value);
      $form[$field_name][$language][0]['target_id']['#default_value'] = $node->title . ' (' . $value . ')';
      break;
    case 'entityreference_autocomplete_tags':
      $node = node_load($value);
      $form[$field_name][$language]['#default_value'] = $node->title . ' (' . $value . ')';
      break;
  }
}