You are here

function webform2pdf_edit_form_submit in Webform2PDF 6.2

Same name and namespace in other branches
  1. 6 webform2pdf.module \webform2pdf_edit_form_submit()
  2. 7.4 includes/webform2pdf.settings.inc \webform2pdf_edit_form_submit()
  3. 7.3 includes/webform2pdf.settings.inc \webform2pdf_edit_form_submit()

File

includes/webform2pdf.settings.inc, line 910

Code

function webform2pdf_edit_form_submit($form, &$form_state) {
  $webform2pdf_default = variable_get('webform2pdf_default', '');
  if ($form_state['values']['op'] == t('Submit')) {
    $update['enabled'] = $form_state['values']['enabled'];
    $update['pdf_send_email'] = $form_state['values']['pdf_send_email'];
    $update['no_send_email_addr'] = serialize($form_state['values']['no_send_email_addr']);
    $update['page_format'] = $form_state['values']['page_format'];
    $update['page_orientation'] = $form_state['values']['page_orientation'];
    $update['h_left_logo'] = $form_state['values']['h_left_logo'];
    $update['h_right_logo'] = $form_state['values']['h_right_logo'];
    $update['f_left_logo'] = $form_state['values']['f_left_logo'];
    $update['f_right_logo'] = $form_state['values']['f_right_logo'];
    $update['h_font_size'] = $form_state['values']['h_font_size'];
    $update['p_font_size'] = $form_state['values']['p_font_size'];
    $update['f_font_size'] = $form_state['values']['f_font_size'];
    $update['h_txt_align'] = $form_state['values']['h_txt_align'];
    $update['h_font_family'] = $form_state['values']['h_font_family'];
    $update['p_txt_align'] = $form_state['values']['p_txt_align'];
    $update['p_font_family'] = $form_state['values']['p_font_family'];
    $update['f_txt_align'] = $form_state['values']['f_txt_align'];
    $update['f_font_family'] = $form_state['values']['f_font_family'];
    $update['h_txt'] = $form_state['values']['h_txt'];
    $update['f_txt'] = $form_state['values']['f_txt'];
    $update['p_body'] = $form_state['values']['p_body'];
    $update['format'] = $form_state['values']['format'];
    $update['nid'] = $form_state['values']['nid'];

    // Image file deleted.
    foreach (array(
      'h_left_logo',
      'h_right_logo',
      'f_left_logo',
      'f_right_logo',
    ) as $logo) {
      if (isset($form_state['values'][$logo . '_del'])) {
        if ($form_state['values'][$logo . '_del']) {
          if (_webform2pdf_use_file($form_state['values'][$logo]) - 1 == 0) {
            $logo_file = _webform2pdf_get_file($form_state['values'][$logo]);
            file_delete($logo_file->filepath);
          }
          $update[$logo] = 0;
        }
      }
    }

    // Header and footer image file save.
    foreach (array(
      'h_left_logo',
      'h_right_logo',
      'f_left_logo',
      'f_right_logo',
    ) as $logo) {
      if (isset($form_state['values'][$logo . '_file'])) {
        $validators = array(
          'file_validate_is_image' => array(),
          'file_validate_image_resolution' => array(
            $webform2pdf_default[$logo . '_size'],
          ),
        );
        if ($file = file_save_upload($logo . '_file', $validators, file_directory_path())) {
          file_set_status($file, FILE_STATUS_PERMANENT);
          $update[$logo] = $file->fid;
        }
      }
    }
  }
  elseif ($form_state['values']['op'] == t('Reset to defaults')) {
    $update['enabled'] = $form_state['values']['enabled'];
    $update['pdf_send_email'] = $webform2pdf_default['pdf_send_email'];
    $update['page_format'] = $webform2pdf_default['page_format'];
    $update['page_orientation'] = $webform2pdf_default['page_orientation'];
    $update['h_left_logo'] = $webform2pdf_default['h_left_logo'];
    $update['h_right_logo'] = $webform2pdf_default['h_right_logo'];
    $update['f_left_logo'] = $webform2pdf_default['f_left_logo'];
    $update['f_right_logo'] = $webform2pdf_default['f_right_logo'];
    $update['h_font_size'] = $webform2pdf_default['h_font_size'];
    $update['p_font_size'] = $webform2pdf_default['p_font_size'];
    $update['f_font_size'] = $webform2pdf_default['f_font_size'];
    $update['h_txt_align'] = $webform2pdf_default['h_txt_align'];
    $update['h_font_family'] = $webform2pdf_default['h_font_family'];
    $update['p_txt_align'] = $webform2pdf_default['p_txt_align'];
    $update['p_font_family'] = $webform2pdf_default['p_font_family'];
    $update['f_txt_align'] = $webform2pdf_default['f_txt_align'];
    $update['f_font_family'] = $webform2pdf_default['f_font_family'];
    $update['h_txt'] = $webform2pdf_default['h_txt'];
    $update['f_txt'] = $webform2pdf_default['f_txt'];
    $update['p_body'] = $webform2pdf_default['p_body'];
    $update['format'] = $webform2pdf_default['format'];
    $update['nid'] = $form_state['values']['nid'];

    // Image file deleted.
    foreach (array(
      'h_left_logo',
      'h_right_logo',
      'f_left_logo',
      'f_right_logo',
    ) as $logo) {
      if (_webform2pdf_use_file($form_state['values'][$logo]) - 1 == 0) {
        $logo_file = _webform2pdf_get_file($form_state['values'][$logo]);
        file_delete($logo_file->filepath);
      }
    }
  }

  // update settings
  $SQL = "UPDATE {webform2pdf} SET enabled = %d, pdf_send_email = %d, no_send_email_addr = '%s'";
  $SQL .= ", page_format = '%s', page_orientation = '%s', h_left_logo = %d, h_right_logo = %d";
  $SQL .= ", f_left_logo = %d, f_right_logo = %d, h_font_size = %d, p_font_size = %d";
  $SQL .= ", f_font_size = %d, h_txt_align = '%s', h_font_family = '%s'";
  $SQL .= ", p_txt_align = '%s', p_font_family = '%s', f_txt_align = '%s', f_font_family = '%s'";
  $SQL .= ", h_txt = '%s', f_txt = '%s', p_body = '%s', format = %d";
  $SQL .= " WHERE nid = %d";
  db_query($SQL, $update);
}