function tripal_pub_importer_setup_form_submit
2.x tripal_pub.pub_importers.inc | tripal_pub_importer_setup_form_submit($form, &$form_state) |
3.x tripal_chado.pub_importers.inc | tripal_pub_importer_setup_form_submit($form, &$form_state) |
1.x pub_importers.inc | tripal_pub_importer_setup_form_submit($form, &$form_state) |
File
- tripal_pub/
includes/ pub_importers.inc, line 476
Code
function tripal_pub_importer_setup_form_submit($form, &$form_state) {
$pub_import_id = $form_state['values']['pub_import_id'];
$num_criteria = $form_state['values']['num_criteria'];
$remote_db = $form_state['values']["remote_db"];
$days = trim($form_state['values']["days"]);
$loader_name = trim($form_state['values']["loader_name"]);
$disabled = $form_state['values']["disabled"];
$do_contact = $form_state['values']["do_contact"];
// set the session variables
$_SESSION['tripal_pub_import']['remote_db'] = $remote_db;
$_SESSION['tripal_pub_import']['days'] = $days;
$_SESSION['tripal_pub_import']['num_criteria'] = $num_criteria;
$_SESSION['tripal_pub_import']['loader_name'] = $loader_name;
$_SESSION['tripal_pub_import']['disabled'] = $disabled;
$_SESSION['tripal_pub_import']['do_contact'] = $do_contact;
$_SESSION['tripal_pub_import']['pub_import_id'] = $pub_import_id;
unset($_SESSION['tripal_pub_import']['criteria']);
for ($i = 1; $i <= $num_criteria; $i++) {
$search_terms = trim($form_state['values']["search_terms-$i"]);
$scope = $form_state['values']["scope-$i"];
$is_phrase = $form_state['values']["is_phrase-$i"];
$operation = $form_state['values']["operation-$i"];
$_SESSION['tripal_pub_import']['criteria'][$i] = array(
'search_terms' => $search_terms,
'scope' => $scope,
'is_phrase' => $is_phrase,
'operation' => $operation
);
}
// now perform the appropriate action for the button clicked
if ($form_state['values']['op'] == 'Test Importer') {
$_SESSION['tripal_pub_import']['perform_search'] = 1;
}
if ($form_state['values']['op'] == 'Save Importer' or
$form_state['values']['op'] == 'Save & Import Now') {
$record = array(
'name' => $loader_name,
'criteria' => serialize($_SESSION['tripal_pub_import']),
'disabled' => $disabled,
'do_contact' => $do_contact
);
// first check to see if this pub_import_id is already present. If so,
// do an update rather than an insert
$sql = "SELECT * FROM {tripal_pub_import} WHERE pub_import_id = %d";
$importer = db_fetch_object(db_query($sql, $pub_import_id));
if ($importer) {
// do the update
$record['pub_import_id'] = $pub_import_id;
if (drupal_write_record('tripal_pub_import', $record, 'pub_import_id')) {
unset($_SESSION['tripal_pub_import']);
drupal_set_message('Publication import settings updated.');
drupal_goto('admin/tripal/tripal_pub/import_list');
}
else {
drupal_set_message('Could not update publication import settings.', 'error');
}
}
else {
// do the insert
if (drupal_write_record('tripal_pub_import', $record)) {
unset($_SESSION['tripal_pub_import']);
drupal_set_message('Publication import settings saved.');
// if the user wants to do the import now then do it (may time out
// for long jobs)
if ($form_state['values']['op'] == 'Save & Import Now') {
tripal_pub_import_publications($record['pub_import_id']);
}
drupal_goto('admin/tripal/tripal_pub/import_list');
}
else {
drupal_set_message('Could not save publication import settings.', 'error');
}
}
}
if ($form_state['values']['op'] == 'Delete Importer') {
$sql = "DELETE FROM {tripal_pub_import} WHERE pub_import_id = %d";
$success = db_query($sql, $pub_import_id);
if ($success) {
drupal_set_message('Publication importer deleted.');
drupal_goto('admin/tripal/tripal_pub/import_list');
}
else {
drupal_set_message('Could not delete publication importer.', 'error');
}
}
}