You are here

function uc_csv_add_new_report_submit in Ubercart CSV 7.2

Same name and namespace in other branches
  1. 6.2 uc_csv.module \uc_csv_add_new_report_submit()

Submit handler for creating a new report

take our form data and submit a new report to the database

File

./uc_csv.module, line 520

Code

function uc_csv_add_new_report_submit($form, $form_state) {
  $shipping = $form_state['values']['options']['shipping'] ? 1 : 0;
  $billing = $form_state['values']['options']['billing'] ? 1 : 0;
  $products = $form_state['values']['options']['products'] ? 1 : 0;

  // This is data that is applicable whether we are updating or creatting a new record.
  $rdata = array(
    'report_name' => $form_state['values']['report_name'],
    'shipping_address' => $shipping,
    'billing_address' => $billing,
    'products' => $products,
    'orderby' => $form_state['values']['orderby'],
    'file_type' => $form_state['values']['file_type'],
    'statuses' => serialize($form_state['values']['statuses']),
    'track' => $form_state['values']['track'],
    'email_enable' => $form_state['values']['email_enable'],
    'email_address' => $form_state['values']['email_address'],
  );

  // If we are creating a new report, then we want to make sure we initizlize our last
  // exported date and order id for tracking purposes
  if (empty($form_state['values']['rid'])) {
    $extra = array(
      'last_exported' => date('Y-m-d H:i:s'),
      'last_order_id' => 0,
    );
    $wdata = array_merge($rdata, $extra);
    $result = drupal_write_record('uc_csv_reports', $wdata);
  }
  else {

    // Otherwise, we have a report, so populate the report id
    $extra = array(
      'rid' => $form_state['values']['rid'],
    );
    $wdata = array_merge($rdata, $extra);
    $result = drupal_write_record('uc_csv_reports', $wdata, 'rid');
  }
  if ($result == TRUE) {
    drupal_set_message("Report successfully saved");
  }
  else {
    drupal_set_message("Your report could not be saved. Please submit a bug report", 'error');
  }
  drupal_goto('admin/store/export/reports');
}