function tripal_stock_add_ONE_property_form_submit

1.x tripal_stock-properties.inc tripal_stock_add_ONE_property_form_submit($form, &$form_state)

Related topics

File

tripal_stock/includes/tripal_stock-properties.inc, line 125
@todo Add file header description

Code

function tripal_stock_add_ONE_property_form_submit($form, &$form_state) {

  // if there is a property add it (only won't be a property if clicked next step w/ no property)
  if ($form_state['values']['prop_type_id'] != 0) {
    //determine the rank for this property
    $max_rank = get_max_chado_rank('stockprop', 
    array('stock_id' => array('type' => 'INT', 'value' => $form_state['values']['prop_stock_id']),
      'type_id' => array('type' => 'INT', 'value' => $form_state['values']['prop_type_id'])));
    if ($max_rank == -1) {
      $rank = 0;
    }
    else {
      $rank = $max_rank + 1;
    }

    chado_query(
    "INSERT INTO {stockprop} (stock_id, type_id, value, rank) VALUES (%d, %d, '%s', %d)", 
    $form_state['values']['prop_stock_id'], 
    $form_state['values']['prop_type_id'], 
    $form_state['values']['prop_value'], 
    $rank
    );

    drupal_set_message(t("Successfully Added Property"));

    // Set Preferred Synonym
    if ($form_state['values']['preferred_synonym'] == 1) {

      //use update node form so that both title and name get set
      $node = node_load($form_state['values']['prop_nid']);
      $node->title = $form_state['values']['prop_value'];
      $node_form_state = array(
        'values' => array(
          'title' => $form_state['values']['prop_value'],
          'op' => 'Save'
        )
      );
      module_load_include('inc', 'node', 'node.pages');
      drupal_execute('chado_stock_node_form', $node_form_state, $node);

    }

  } //end of if property to add
}