You are here

function merci_node_type_save_submit in MERCI (Manage Equipment Reservations, Checkout and Inventory) 6

Same name and namespace in other branches
  1. 6.2 includes/api.inc \merci_node_type_save_submit()

Submit handler for saving MERCI node type data.

1 string reference to 'merci_node_type_save_submit'
merci_form_alter in ./merci.module
Implementation of hook_form_alter().

File

./merci.module, line 1677
MERCI - Managed Equipment Reservation Checkout and Inventory

Code

function merci_node_type_save_submit($form, &$form_state) {
  $merci = $form_state['values'];

  // This hack is necessary because the node type form submit
  // automatically saves all remaining form items to {variable}
  // We're doing custom storage, so remove these.
  $variables = array(
    'merci_type_setting_',
    'merci_max_hours_per_reservation_',
    'merci_allow_overnight_',
    'merci_allow_weekends_',
    'merci_late_fee_per_hour_',
    'merci_rate_per_hour_',
    'merci_fee_free_hours_',
    'merci_status_',
    'merci_spare_items_',
    'merci_min_cancel_hours_',
    'merci_autocheckout_',
    'merci_autocheckin_',
    'merci_selfcheckout_',
    'merci_grouping_',
  );
  foreach ($variables as $variable) {
    variable_del($variable . $merci['type']);
  }
  if ($form_state['clicked_button']['#value'] == t('Save content type')) {
    db_query("UPDATE {merci_node_type} SET type_setting = '%s', max_hours_per_reservation = %d, allow_overnight = %d, allow_weekends = %d, late_fee_per_hour = %f, rate_per_hour = %f, fee_free_hours = %d, status = %d, spare_items = %d, min_cancel_hours = %d, autocheckout = %d, autocheckin = %d, selfcheckout = %d, grouping = %d WHERE type = '%s'", $merci['merci_type_setting'], $merci['merci_max_hours_per_reservation'], $merci['merci_allow_overnight'], $merci['merci_allow_weekends'], $merci['merci_late_fee_per_hour'], $merci['merci_rate_per_hour'], $merci['merci_fee_free_hours'], $merci['merci_status'], $merci['merci_spare_items'], $merci['merci_min_cancel_hours'], $merci['merci_autocheckout'], $merci['merci_autocheckin'], $merci['merci_selfcheckout'], $merci['merci_grouping'], $merci['type']);
    if (!db_affected_rows()) {
      db_query("INSERT INTO {merci_node_type} (type, type_setting, max_hours_per_reservation, allow_overnight, allow_weekends, late_fee_per_hour, rate_per_hour, fee_free_hours, status, spare_items, min_cancel_hours, autocheckout, autocheckin, selfcheckout, grouping) VALUES ('%s', '%s', %d, %d, %d, %d, %f, %f, %d, %d, %d, %d, %d, %d, %d)", $merci['type'], $merci['merci_type_setting'], $merci['merci_max_hours_per_reservation'], $merci['merci_allow_overnight'], $merci['merci_allow_weekends'], $merci['merci_late_fee_per_hour'], $merci['merci_rate_per_hour'], $merci['merci_fee_free_hours'], $merci['merci_status'], $merci['merci_spare_items'], $merci['merci_min_cancel_hours'], $merci['merci_autocheckout'], $merci['merci_autocheckin'], $merci['merci_selfcheckout'], $merci['merci_grouping']);
    }
  }
  cache_clear_all('merci', 'cache', TRUE);
}