You are here

function getdirections_settings_validate in Get Directions 7.3

Same name and namespace in other branches
  1. 6.2 getdirections.admin.inc \getdirections_settings_validate()
  2. 7.2 getdirections.admin.inc \getdirections_settings_validate()
1 string reference to 'getdirections_settings_validate'
getdirections_settings_form in ./getdirections.admin.inc
Function to display the getdirections admin settings form

File

./getdirections.admin.inc, line 191
getdirections module administration functions.

Code

function getdirections_settings_validate($form, &$form_state) {
  if (!is_numeric($form_state['values']['getdirections_default']['to_width']) || $form_state['values']['getdirections_default']['to_width'] < 1) {
    form_set_error('getdirections_default][to_width', t('Width of To box must be a positive number'));
  }
  if (!is_numeric($form_state['values']['getdirections_default']['from_width']) || $form_state['values']['getdirections_default']['from_width'] < 1) {
    form_set_error('getdirections_default][from_width', t('Width of From box must be a positive number'));
  }
  if (isset($form_state['values']['getdirections_returnlink']['page_link'])) {
    if (empty($form_state['values']['getdirections_returnlink']['page_link'])) {
      form_set_error('getdirections_returnlink][page_link', t('Text of return link cannot be empty'));
    }
  }
  if (isset($form_state['values']['getdirections_returnlink']['user_link'])) {
    if (empty($form_state['values']['getdirections_returnlink']['user_link'])) {
      form_set_error('getdirections_returnlink][user_link', t('Text of return link cannot be empty'));
    }
  }
  if (isset($form_state['values']['getdirections_returnlink']['term_link'])) {
    if (empty($form_state['values']['getdirections_returnlink']['term_link'])) {
      form_set_error('getdirections_returnlink][term_link', t('Text of return link cannot be empty'));
    }
  }
  if (isset($form_state['values']['getdirections_returnlink']['comment_link'])) {
    if (empty($form_state['values']['getdirections_returnlink']['comment_link'])) {
      form_set_error('getdirections_returnlink][comment_link', t('Text of return link cannot be empty'));
    }
  }
  if (isset($form_state['values']['use_advanced']) && !$form_state['values']['use_advanced']) {
    $form_state['values']['advanced_alternate'] = 0;
    $form_state['values']['advanced_autocomplete'] = 0;
    $form_state['values']['advanced_autocomplete_bias'] = 0;
  }
  $list = array(
    'Map',
    'Satellite',
    'Hybrid',
    'Physical',
  );
  $found = 0;
  foreach ($list as $maptype) {
    if (isset($form_state['values']['getdirections_default']['maptype']) && $form_state['values']['getdirections_default']['maptype'] == $maptype && isset($form_state['values']['getdirections_default']['baselayers'][$maptype]) && $form_state['values']['getdirections_default']['baselayers'][$maptype]) {
      $found = 1;
      break;
    }
  }
  if (!$found) {

    // force a setting
    $form_state['values']['getdirections_default']['maptype'] = 'Map';
    $form_state['values']['getdirections_default']['baselayers']['Map'] = 1;
  }
  $reset = $form_state['values']['getdirections_paths']['reset'];
  unset($form_state['values']['getdirections_paths']['reset']);
  if ($reset) {
    $form_state['values']['getdirections_paths'] = getdirections_paths_get(TRUE);
  }
}