You are here

function course_signup_confirmation_form_validate in Course 7.2

Validate callback for code form.

File

modules/course_signup/course_signup.module, line 473

Code

function course_signup_confirmation_form_validate(&$form, &$form_state) {
  if (!flood_is_allowed('course_signup_code', 30, 60, $GLOBALS['user']->uid)) {
    drupal_set_message(t('Sorry, you are doing that too many times. Please wait 1 minute and try again.'), 'error');
    return;
  }
  flood_register_event('course_signup_code', 60, $GLOBALS['user']->uid);
  if (!($nid = _signup_check_code($form_state['values']['code']))) {
    form_error($form['code'], t('The code you entered is not valid.'));
    $form['code']['#value'] = '';
    return;
  }
  $node = node_load($nid);
  $tokens['node'] = $node;
  module_load_include('inc', 'signup', 'scheduler');
  $start_date = signup_sms_get_unix_start($node);
  $open = $start_date + $node->signup_sms->open;
  $close = $start_date + $node->signup_sms->close;
  if (REQUEST_TIME > $close) {
    form_error($form['code'], _signup_sms_get_message('closed', $tokens));
  }
  if (REQUEST_TIME < $open) {
    form_error($form['code'], _signup_sms_get_message('not_open', $tokens));
  }
}