Esempio n. 1
0
/**
 * Process ticket form submissions.
 *
 * @since	1.0
 * @param	arr		$data	$_POST super global
 * @return	void
 */
function kbs_process_ticket_submission($data)
{
    kbs_do_honeypot_check($data);
    $form_id = !empty($data['kbs_form_id']) ? $data['kbs_form_id'] : '';
    $redirect = !empty($data['redirect']) ? $data['redirect'] : '';
    $posted = array();
    $ignore = kbs_form_ignore_fields();
    foreach ($data as $key => $value) {
        if (!in_array($key, $ignore)) {
            if (is_string($value) || is_int($value)) {
                $posted[$key] = $value;
            } elseif (is_array($value)) {
                $posted[$key] = array_map('absint', $value);
            }
        }
    }
    if (kbs_add_ticket_from_form($form_id, $posted)) {
        $message = 'ticket_submitted';
    } else {
        $message = 'ticket_failed';
    }
    wp_redirect(add_query_arg(array('kbs_notice' => $message), $redirect));
    die;
}
Esempio n. 2
0
 public function show_form_data()
 {
     if (empty($this->form_data)) {
         return;
     }
     $form = new KBS_Form($this->form_data['id']);
     $ignore = kbs_form_ignore_fields();
     $output = '<h2>' . sprintf(__('Form: %s', 'kb-support'), get_the_title($this->form_data['id'])) . '</h2>';
     foreach ($this->form_data['data'] as $field => $value) {
         $form_field = kbs_get_field_by('name', $field);
         if (empty($form_field)) {
             continue;
         }
         $settings = $form->get_field_settings($form_field->ID);
         $value = apply_filters('kbs_show_form_data', $value, $form_field->ID, $settings);
         $output .= '<p><strong>' . get_the_title($form_field->ID) . '</strong>: ' . $value;
     }
     return apply_filters('kbs_show_form_data', $output);
 }