function tripal_stock_add_ONE_dbreference_form_submit
1.x tripal_stock-db_references.inc | tripal_stock_add_ONE_dbreference_form_submit($form, &$form_state) |
Implements hoook_form_submit(): Actually adds the db reference to the stock
Parameters
$form: An array describing the form that was rendered
$form_state: An array describing the current state of the form including user input
Related topics
File
- tripal_stock/
includes/ tripal_stock-db_references.inc, line 149 - @todo Add file header description
Code
function tripal_stock_add_ONE_dbreference_form_submit($form, &$form_state) {
// FIX: Sometimes on programatic submission of form (drupal_execute) values in the form state get lost
// however, the post values always seem to be correct
if (empty($form_state['values']['db_stock_id'])) {
$form_state['values']['db_stock_id'] = $form_state['clicked_button']['#post']['db_stock_id'];
}
// Only Create if valid
if ($form_state['values']['database'] > 0) {
// create dbxref
chado_query(
"INSERT INTO {dbxref} (db_id, accession, description) VALUES (%d, '%s', '%s')",
$form_state['values']['database'],
$form_state['values']['accession'],
$form_state['values']['db_description']
);
//create stock_dbxref
$dbxref = tripal_db_get_dbxref_by_accession($form_state['values']['accession'], $form_state['values']['database']);
if (!empty($dbxref->dbxref_id)) {
chado_query(
"INSERT INTO {stock_dbxref} (stock_id, dbxref_id) VALUES (%d, %d)",
$form_state['values']['db_stock_id'],
$dbxref->dbxref_id
);
drupal_set_message(t('Successfully Added Database Reference'));
}
else {
drupal_set_message(t('Database reference NOT successfully created...'), 'error');
} //end of if dbxref was created successfully
} //end of if valid db reference
}