You are here

function support_pm_admin_project_form_validate in Support Ticketing System 6

Same name and namespace in other branches
  1. 7 support_pm/support_pm.admin.inc \support_pm_admin_project_form_validate()

Save new or updated project definition.

File

support_pm/support_pm.admin.inc, line 580

Code

function support_pm_admin_project_form_validate($form, &$form_state) {
  $path = $form_state['values']['path'];
  $projid = isset($form_state['values']['projid']) ? $form_state['values']['projid'] : 0;
  if ($path != preg_replace('/[^0-9a-zA-Z_-]/', '', $path)) {
    form_set_error('path', t('Path %path contains invalid characters.', array(
      '%path' => $path,
    )));
  }
  if (strtolower($path) == 'null') {
    form_set_error('path', t('The path %path is reserved by the system, please choose a different path.', array(
      '%path' => strtolower($path),
    )));
  }
  if ($path && $projid) {
    $projid = db_result(db_query("SELECT projid FROM {support_project} WHERE path = '%s' AND projid != %d", $path, $form_state['values']['projid']));
  }
  else {
    if ($path) {
      $projid = db_result(db_query("SELECT projid FROM {support_project} WHERE path = '%s'", $path));
    }
    else {
      $projid = NULL;
    }
  }
  if ($projid) {
    form_set_error('path', t('Path %path is already being used by another project.', array(
      '%path' => $path,
    )));
  }
}