function tripal_bulk_loader_set_constants_form_validate
2.x tripal_bulk_loader.constants.inc | tripal_bulk_loader_set_constants_form_validate($form, $form_state) |
3.x tripal_bulk_loader.constants.inc | tripal_bulk_loader_set_constants_form_validate($form, $form_state) |
1.x tripal_bulk_loader.constants.inc | tripal_bulk_loader_set_constants_form_validate($form, $form_state) |
Validate that the values entered exist in the database if indicated in hte template array
Related topics
File
- tripal_bulk_loader/
includes/ tripal_bulk_loader.constants.inc, line 318 - Manages the constants form added to the tripal bulk loader node form
Code
function tripal_bulk_loader_set_constants_form_validate($form, $form_state) {
$template = unserialize($form_state['values']['template']);
$indexes = unserialize($form_state['values']['indexes']);
$op = $form_state['values'][$form_state['clicked_button']['#name']];
if (strcmp('Add Constant Set', $op) == 0) {
foreach ($indexes as $record_id => $array) {
foreach ($array as $field_id) {
if (isset($template[$record_id]['fields'][$field_id]['exposed_validate'])) {
if ($template[$record_id]['fields'][$field_id]['exposed_validate']) {
$result = chado_query(
'SELECT 1 as valid FROM {' . $template[$record_id]['table'] . '} WHERE ' . $template[$record_id]['fields'][$field_id]['field'] . '=:value',
array(':value' => $form_state['values'][$record_id . '-' . $field_id])
)->fetchField();
if (!$result) {
$msg = 'A ' . $form['exposed_fields']['new'][$record_id . '-' . $field_id]['#title'] . ' of "' . $form['exposed_fields']['new'][$record_id . '-' . $field_id]['#value'] . '" must already exist!';
form_set_error($record_id . '-' . $field_id, $msg);
}
else {
drupal_set_message(
t(
'Confirmed a %title of "%value" already exists.',
array(
'%title' => $form['exposed_fields']['new'][$record_id . '-' . $field_id]['#title'],
'%value' => $form['exposed_fields']['new'][$record_id . '-' . $field_id]['#value']
)
)
);
}
}
}
}
}
}
}