function pirate_forms_process_contact()
{
    // If POST, nonce and honeypot are not set, beat it
    if (empty($_POST) || empty($_POST['wordpress-nonce']) || !isset($_POST['honeypot'])) {
        return false;
    }
    // Session variable for form errors
    $_SESSION['pirate_forms_contact_errors'] = array();
    // If nonce is not valid, beat it
    if (!wp_verify_nonce($_POST['wordpress-nonce'], get_bloginfo('admin_email'))) {
        $_SESSION['pirate_forms_contact_errors']['nonce'] = __('Nonce failed!', 'pirate-forms');
        return false;
    }
    // If the honeypot caught a bear, beat it
    if (!empty($_POST['honeypot'])) {
        $_SESSION['pirate_forms_contact_errors']['honeypot'] = __('Form submission failed!', 'pirate-forms');
        return false;
    }
    // Start the body of the contact email
    $body = "*** " . __('Contact form submission on', 'pirate-forms') . " " . get_bloginfo('name') . " (" . site_url() . ") *** \n\n";
    /***********************************************/
    /*********   Sanitize and validate name *******/
    /**********************************************/
    $pirate_forms_contact_name = isset($_POST['pirate-forms-contact-name']) ? sanitize_text_field(trim($_POST['pirate-forms-contact-name'])) : '';
    // if name is required and is missing
    if (pirate_forms_get_key('pirateformsopt_name_field') === 'req' && empty($pirate_forms_contact_name)) {
        $_SESSION['pirate_forms_contact_errors']['pirate-forms-contact-name'] = pirate_forms_get_key('pirateformsopt_label_err_name');
    } elseif (!empty($pirate_forms_contact_name)) {
        $body .= stripslashes(pirate_forms_get_key('pirateformsopt_label_name')) . ": {$pirate_forms_contact_name} \r";
    }
    /***********************************************/
    /*******  Sanitize and validate email **********/
    /***********************************************/
    $pirate_forms_contact_email = isset($_POST['pirate-forms-contact-email']) ? sanitize_email($_POST['pirate-forms-contact-email']) : '';
    // If required, is it valid?
    if (pirate_forms_get_key('pirateformsopt_email_field') === 'req' && !filter_var($pirate_forms_contact_email, FILTER_VALIDATE_EMAIL)) {
        $_SESSION['pirate_forms_contact_errors']['pirate-forms-contact-email'] = pirate_forms_get_key('pirateformsopt_label_err_email');
    } elseif (!empty($pirate_forms_contact_email)) {
        $body .= stripslashes(pirate_forms_get_key('pirateformsopt_label_email')) . ": {$pirate_forms_contact_email} \r";
    }
    /***********************************************/
    /*********   Sanitize and validate subject *****/
    /**********************************************/
    $pirate_forms_contact_subject = isset($_POST['pirate-forms-contact-subject']) ? sanitize_text_field(trim($_POST['pirate-forms-contact-subject'])) : '';
    // if subject is required and is missing
    if (pirate_forms_get_key('pirateformsopt_subject_field') === 'req' && empty($pirate_forms_contact_subject)) {
        $_SESSION['pirate_forms_contact_errors']['pirate-forms-contact-subject'] = pirate_forms_get_key('pirateformsopt_label_err_subject');
    } elseif (!empty($pirate_forms_contact_subject)) {
        $body .= stripslashes(pirate_forms_get_key('pirateformsopt_label_subject')) . ": {$pirate_forms_contact_subject} \r";
    }
    /***********************************************/
    /*********   Sanitize and validate message *****/
    /**********************************************/
    $pirate_forms_contact_message = isset($_POST['pirate-forms-contact-message']) ? sanitize_text_field(trim($_POST['pirate-forms-contact-message'])) : '';
    // if message is required and is missing
    if (pirate_forms_get_key('pirateformsopt_message_field') === 'req' && empty($pirate_forms_contact_message)) {
        $_SESSION['pirate_forms_contact_errors']['pirate-forms-contact-message'] = pirate_forms_get_key('pirateformsopt_label_err_message');
    } elseif (!empty($pirate_forms_contact_message)) {
        $body .= stripslashes(pirate_forms_get_key('pirateformsopt_label_message')) . ": {$pirate_forms_contact_message} \r";
    }
    /*************************************************/
    /************* Validate reCAPTCHA ****************/
    /*************************************************/
    $pirateformsopt_recaptcha_sitekey = pirate_forms_get_key('pirateformsopt_recaptcha_sitekey');
    $pirateformsopt_recaptcha_secretkey = pirate_forms_get_key('pirateformsopt_recaptcha_secretkey');
    $pirateformsopt_recaptcha_field = pirate_forms_get_key('pirateformsopt_recaptcha_field');
    if (!empty($pirateformsopt_recaptcha_secretkey) && !empty($pirateformsopt_recaptcha_sitekey) && !empty($pirateformsopt_recaptcha_field) && $pirateformsopt_recaptcha_field == 'yes') {
        if (isset($_POST['g-recaptcha-response'])) {
            $captcha = $_POST['g-recaptcha-response'];
        }
        if (!$captcha) {
            $_SESSION['pirate_forms_contact_errors']['pirate-forms-captcha'] = __('Wrong reCAPTCHA', 'pirate-forms');
        }
        $response = wp_remote_get("https://www.google.com/recaptcha/api/siteverify?secret=" . $pirateformsopt_recaptcha_secretkey . "&response=" . $captcha . "&remoteip=" . $_SERVER['REMOTE_ADDR']);
        if (!empty($response)) {
            $response_body = wp_remote_retrieve_body($response);
        }
        if (!empty($response_body)) {
            $result = json_decode($response_body, true);
        }
        if (isset($result['success']) && $result['success'] == false) {
            $_SESSION['pirate_forms_contact_errors']['pirate-forms-captcha'] = __('Wrong reCAPTCHA', 'pirate-forms');
        }
    }
    /************************************************/
    /********** Validate recipients email ***********/
    /************************************************/
    $site_recipients = sanitize_text_field(pirate_forms_get_key('pirateformsopt_email_recipients'));
    if (empty($site_recipients)) {
        $_SESSION['pirate_forms_contact_errors']['pirate-forms-recipients-email'] = __('Please enter one or more Contact submission recipients', 'pirate-forms');
    }
    /**********************************************/
    /********   Sanitize and validate IP  *********/
    /**********************************************/
    $contact_ip = filter_var($_SERVER['REMOTE_ADDR'], FILTER_VALIDATE_IP);
    // If valid and present, create a link to an IP search
    if (!empty($contact_ip)) {
        $body .= "IP address: {$contact_ip} \r IP search: http://whatismyipaddress.com/ip/{$contact_ip} \n\n";
    }
    // Sanitize and prepare referrer;
    if (!empty($_POST['pirate-forms-contact-referrer'])) {
        $body .= "Came from: " . sanitize_text_field($_POST['pirate-forms-contact-referrer']) . " \r";
    }
    // Show the page this contact form was submitted on
    $body .= 'Sent from page: ' . get_permalink(get_the_id());
    // Check the blacklist
    $blocked = pirate_forms_get_blacklist();
    if (!empty($blocked)) {
        if (in_array($pirate_forms_contact_email, $blocked) || in_array($contact_ip, $blocked)) {
            $_SESSION['pirate_forms_contact_errors']['blacklist-blocked'] = __('Form submission blocked!', 'pirate-forms');
            return false;
        }
    }
    // No errors? Go ahead and process the contact
    if (empty($_SESSION['pirate_forms_contact_errors'])) {
        $site_email = sanitize_email(pirate_forms_get_key('pirateformsopt_email'));
        $site_name = htmlspecialchars_decode(get_bloginfo('name'));
        // Notification recipients
        $site_recipients = sanitize_text_field(pirate_forms_get_key('pirateformsopt_email_recipients'));
        $site_recipients = explode(',', $site_recipients);
        $site_recipients = array_map('trim', $site_recipients);
        $site_recipients = array_map('sanitize_email', $site_recipients);
        $site_recipients = implode(',', $site_recipients);
        // No name? Use the submitter email address, if one is present
        if (empty($pirate_forms_contact_name)) {
            $pirate_forms_contact_name = !empty($pirate_forms_contact_email) ? $pirate_forms_contact_email : '[None given]';
        }
        // Need an email address for the email notification
        if (!empty($site_email)) {
            $send_from = $site_email;
        } else {
            $send_from = pirate_forms_from_email();
        }
        $send_from_name = $site_name;
        // Sent an email notification to the correct address
        $headers = "From: {$send_from_name} <{$send_from}>\r\nReply-To: {$pirate_forms_contact_name} <{$pirate_forms_contact_email}>";
        add_action('phpmailer_init', 'pirate_forms_phpmailer');
        function pirate_forms_phpmailer($phpmailer)
        {
            $pirateformsopt_use_smtp = pirate_forms_get_key('pirateformsopt_use_smtp');
            $pirateformsopt_smtp_host = pirate_forms_get_key('pirateformsopt_smtp_host');
            $pirateformsopt_smtp_port = pirate_forms_get_key('pirateformsopt_smtp_port');
            $pirateformsopt_smtp_username = pirate_forms_get_key('pirateformsopt_smtp_username');
            $pirateformsopt_smtp_password = pirate_forms_get_key('pirateformsopt_smtp_password');
            $pirateformsopt_use_smtp_authentication = pirate_forms_get_key('pirateformsopt_use_smtp_authentication');
            if (!empty($pirateformsopt_use_smtp) && $pirateformsopt_use_smtp == 'yes' && !empty($pirateformsopt_smtp_host) && !empty($pirateformsopt_smtp_port)) {
                $phpmailer->isSMTP();
                $phpmailer->Host = $pirateformsopt_smtp_host;
                if (!empty($pirateformsopt_use_smtp_authentication) && $pirateformsopt_use_smtp_authentication == 'yes' && !empty($pirateformsopt_smtp_username) && !empty($pirateformsopt_smtp_password)) {
                    $phpmailer->SMTPAuth = true;
                    // Force it to use Username and Password to authenticate
                    $phpmailer->Port = $pirateformsopt_smtp_port;
                    $phpmailer->Username = $pirateformsopt_smtp_username;
                    $phpmailer->Password = $pirateformsopt_smtp_password;
                }
            }
        }
        wp_mail($site_recipients, 'Contact on ' . $site_name, $body, $headers);
        // Should a confirm email be sent?
        $confirm_body = stripslashes(trim(pirate_forms_get_key('pirateformsopt_confirm_email')));
        if (!empty($confirm_body) && !empty($pirate_forms_contact_email)) {
            // Removing entities
            $confirm_body = htmlspecialchars_decode($confirm_body);
            $confirm_body = html_entity_decode($confirm_body);
            $confirm_body = str_replace('&#39;', "'", $confirm_body);
            $headers = "From: {$site_name} <{$site_email}>\r\nReply-To: {$site_name} <{$site_email}>";
            wp_mail($pirate_forms_contact_email, pirate_forms_get_key('pirateformsopt_label_submit') . ' - ' . $site_name, $confirm_body, $headers);
        }
        /************************************************************/
        /*************   Store the entries in the DB ****************/
        /************************************************************/
        if (pirate_forms_get_key('pirateformsopt_store') === 'yes') {
            $new_post_id = wp_insert_post(array('post_type' => 'pf_contact', 'post_title' => date('l, M j, Y', time()) . ' by "' . $pirate_forms_contact_name . '"', 'post_content' => $body, 'post_author' => 1, 'post_status' => 'private'));
            if (isset($pirate_forms_contact_email) && !empty($pirate_forms_contact_email)) {
                add_post_meta($new_post_id, 'Contact email', $pirate_forms_contact_email);
            }
        }
        $redirect = $_SERVER["HTTP_REFERER"] . (strpos($_SERVER["HTTP_REFERER"], '?') === FALSE ? '?' : '&') . 'pcf=1#contact';
        wp_safe_redirect($redirect);
    }
}
function pirate_forms_process_contact()
{
    // If POST and honeypot are not set, beat it
    if (empty($_POST) || !isset($_POST['honeypot'])) {
        return false;
    }
    // Session variable for form errors
    $_SESSION['pirate_forms_contact_errors'] = array();
    // If nonce is not valid, beat it
    if ('yes' === pirate_forms_get_key('pirateformsopt_nonce')) {
        if (!wp_verify_nonce($_POST['wordpress-nonce'], get_bloginfo('admin_email'))) {
            $_SESSION['pirate_forms_contact_errors']['nonce'] = __('Nonce failed!', 'pirate-forms');
            return false;
        }
    }
    // If the honeypot caught a bear, beat it
    if (!empty($_POST['honeypot'])) {
        $_SESSION['pirate_forms_contact_errors']['honeypot'] = __('Form submission failed!', 'pirate-forms');
        return false;
    }
    // Start the body of the contact email
    $body = "*** " . __('Contact form submission from', 'pirate-forms') . " " . get_bloginfo('name') . " (" . site_url() . ") *** \n\n";
    /***********************************************/
    /*********   Sanitize and validate name *******/
    /**********************************************/
    $pirate_forms_contact_name = isset($_POST['pirate-forms-contact-name']) ? sanitize_text_field(trim($_POST['pirate-forms-contact-name'])) : '';
    // if name is required and is missing
    if (pirate_forms_get_key('pirateformsopt_name_field') === 'req' && empty($pirate_forms_contact_name)) {
        $_SESSION['pirate_forms_contact_errors']['pirate-forms-contact-name'] = pirate_forms_get_key('pirateformsopt_label_err_name');
    } elseif (!empty($pirate_forms_contact_name)) {
        $body .= stripslashes(pirate_forms_get_key('pirateformsopt_label_name')) . ": {$pirate_forms_contact_name} \r";
    }
    /***********************************************/
    /*******  Sanitize and validate email **********/
    /***********************************************/
    $pirate_forms_contact_email = isset($_POST['pirate-forms-contact-email']) ? sanitize_email($_POST['pirate-forms-contact-email']) : '';
    // If required, is it valid?
    if (pirate_forms_get_key('pirateformsopt_email_field') === 'req' && !filter_var($pirate_forms_contact_email, FILTER_VALIDATE_EMAIL)) {
        $_SESSION['pirate_forms_contact_errors']['pirate-forms-contact-email'] = pirate_forms_get_key('pirateformsopt_label_err_email');
    } elseif (!empty($pirate_forms_contact_email)) {
        $body .= stripslashes(pirate_forms_get_key('pirateformsopt_label_email')) . ": {$pirate_forms_contact_email} \r";
    }
    /***********************************************/
    /*********   Sanitize and validate subject *****/
    /**********************************************/
    $pirate_forms_contact_subject = isset($_POST['pirate-forms-contact-subject']) ? sanitize_text_field(trim($_POST['pirate-forms-contact-subject'])) : '';
    // if subject is required and is missing
    if (pirate_forms_get_key('pirateformsopt_subject_field') === 'req' && empty($pirate_forms_contact_subject)) {
        $_SESSION['pirate_forms_contact_errors']['pirate-forms-contact-subject'] = pirate_forms_get_key('pirateformsopt_label_err_subject');
    } elseif (!empty($pirate_forms_contact_subject)) {
        $body .= stripslashes(pirate_forms_get_key('pirateformsopt_label_subject')) . ": {$pirate_forms_contact_subject} \r";
    }
    /***********************************************/
    /*********   Sanitize and validate message *****/
    /**********************************************/
    $pirate_forms_contact_message = isset($_POST['pirate-forms-contact-message']) ? sanitize_text_field(trim($_POST['pirate-forms-contact-message'])) : '';
    // if message is required and is missing
    if (pirate_forms_get_key('pirateformsopt_message_field') === 'req' && empty($pirate_forms_contact_message)) {
        $_SESSION['pirate_forms_contact_errors']['pirate-forms-contact-message'] = pirate_forms_get_key('pirateformsopt_label_err_message');
    } elseif (!empty($pirate_forms_contact_message)) {
        $body .= stripslashes(pirate_forms_get_key('pirateformsopt_label_message')) . ": {$pirate_forms_contact_message} \r";
    }
    /*************************************************/
    /************* Validate reCAPTCHA ****************/
    /*************************************************/
    $pirateformsopt_recaptcha_sitekey = pirate_forms_get_key('pirateformsopt_recaptcha_sitekey');
    $pirateformsopt_recaptcha_secretkey = pirate_forms_get_key('pirateformsopt_recaptcha_secretkey');
    $pirateformsopt_recaptcha_field = pirate_forms_get_key('pirateformsopt_recaptcha_field');
    if (!empty($pirateformsopt_recaptcha_secretkey) && !empty($pirateformsopt_recaptcha_sitekey) && !empty($pirateformsopt_recaptcha_field) && $pirateformsopt_recaptcha_field == 'yes') {
        if (isset($_POST['g-recaptcha-response'])) {
            $captcha = $_POST['g-recaptcha-response'];
        }
        if (!$captcha) {
            $_SESSION['pirate_forms_contact_errors']['pirate-forms-captcha'] = __('Wrong reCAPTCHA', 'pirate-forms');
        }
        $response = wp_remote_get("https://www.google.com/recaptcha/api/siteverify?secret=" . $pirateformsopt_recaptcha_secretkey . "&response=" . $captcha . "&remoteip=" . $_SERVER['REMOTE_ADDR']);
        if (!empty($response)) {
            $response_body = wp_remote_retrieve_body($response);
        }
        if (!empty($response_body)) {
            $result = json_decode($response_body, true);
        }
        if (isset($result['success']) && $result['success'] == false) {
            $_SESSION['pirate_forms_contact_errors']['pirate-forms-captcha'] = __('Wrong reCAPTCHA', 'pirate-forms');
        }
    }
    /************************************************/
    /********** Validate recipients email ***********/
    /************************************************/
    $site_recipients = sanitize_text_field(pirate_forms_get_key('pirateformsopt_email_recipients'));
    if (empty($site_recipients)) {
        $_SESSION['pirate_forms_contact_errors']['pirate-forms-recipients-email'] = __('Please enter one or more Contact submission recipients', 'pirate-forms');
    }
    /**********************************************/
    /********   Sanitize and validate IP  *********/
    /**********************************************/
    $contact_ip = filter_var($_SERVER['REMOTE_ADDR'], FILTER_VALIDATE_IP);
    /* for the case of a Web server behind a reverse proxy */
    if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) {
        $contact_ip = array_pop(explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']));
    }
    // If valid and present, create a link to an IP search
    if (!empty($contact_ip)) {
        $body .= __('IP address: ', 'pirate-forms') . $contact_ip . "\r " . __('IP search:', 'pirate-forms') . " http://whatismyipaddress.com/ip/{$contact_ip} \n\n";
    }
    // Sanitize and prepare referrer;
    if (!empty($_POST['pirate-forms-contact-referrer'])) {
        $body .= __('Came from: ', 'pirate-forms') . sanitize_text_field($_POST['pirate-forms-contact-referrer']) . " \r";
    }
    // Show the page this contact form was submitted on
    $body .= __('Sent from page: ', 'pirate-forms') . get_permalink(get_the_id());
    // Check the blacklist
    $blocked = pirate_forms_get_blacklist();
    if (!empty($blocked)) {
        if (in_array($pirate_forms_contact_email, $blocked) || in_array($contact_ip, $blocked)) {
            $_SESSION['pirate_forms_contact_errors']['blacklist-blocked'] = __('Form submission blocked!', 'pirate-forms');
            return false;
        }
    }
    // No errors? Go ahead and process the contact
    if (empty($_SESSION['pirate_forms_contact_errors'])) {
        $pirate_forms_options_tmp = get_option('pirate_forms_settings_array');
        if (isset($pirate_forms_options_tmp['pirateformsopt_email'])) {
            $site_email = $pirate_forms_options_tmp['pirateformsopt_email'];
        }
        if (!empty($pirate_forms_contact_name)) {
            $site_name = $pirate_forms_contact_name;
        } else {
            $site_name = htmlspecialchars_decode(get_bloginfo('name'));
        }
        // Notification recipients
        $site_recipients = sanitize_text_field(pirate_forms_get_key('pirateformsopt_email_recipients'));
        $site_recipients = explode(',', $site_recipients);
        $site_recipients = array_map('trim', $site_recipients);
        $site_recipients = array_map('sanitize_email', $site_recipients);
        $site_recipients = implode(',', $site_recipients);
        // No name? Use the submitter email address, if one is present
        if (empty($pirate_forms_contact_name)) {
            $pirate_forms_contact_name = !empty($pirate_forms_contact_email) ? $pirate_forms_contact_email : '[None given]';
        }
        // Need an email address for the email notification
        if (!empty($site_email)) {
            if ($site_email == '[email]') {
                if (!empty($pirate_forms_contact_email)) {
                    $send_from = $pirate_forms_contact_email;
                } else {
                    $send_from = pirate_forms_from_email();
                }
            } else {
                $send_from = $site_email;
            }
        } else {
            $send_from = pirate_forms_from_email();
        }
        $send_from_name = $site_name;
        // Sent an email notification to the correct address
        $headers = "From: {$send_from_name} <{$send_from}>\r\nReply-To: {$pirate_forms_contact_name} <{$pirate_forms_contact_email}>";
        add_action('phpmailer_init', 'pirate_forms_phpmailer');
        function pirate_forms_phpmailer($phpmailer)
        {
            $pirateformsopt_use_smtp = pirate_forms_get_key('pirateformsopt_use_smtp');
            $pirateformsopt_smtp_host = pirate_forms_get_key('pirateformsopt_smtp_host');
            $pirateformsopt_smtp_port = pirate_forms_get_key('pirateformsopt_smtp_port');
            $pirateformsopt_smtp_username = pirate_forms_get_key('pirateformsopt_smtp_username');
            $pirateformsopt_smtp_password = pirate_forms_get_key('pirateformsopt_smtp_password');
            $pirateformsopt_use_smtp_authentication = pirate_forms_get_key('pirateformsopt_use_smtp_authentication');
            if (!empty($pirateformsopt_use_smtp) && $pirateformsopt_use_smtp == 'yes' && !empty($pirateformsopt_smtp_host) && !empty($pirateformsopt_smtp_port)) {
                $phpmailer->isSMTP();
                $phpmailer->Host = $pirateformsopt_smtp_host;
                if (!empty($pirateformsopt_use_smtp_authentication) && $pirateformsopt_use_smtp_authentication == 'yes' && !empty($pirateformsopt_smtp_username) && !empty($pirateformsopt_smtp_password)) {
                    $phpmailer->SMTPAuth = true;
                    // Force it to use Username and Password to authenticate
                    $phpmailer->Port = $pirateformsopt_smtp_port;
                    $phpmailer->Username = $pirateformsopt_smtp_username;
                    $phpmailer->Password = $pirateformsopt_smtp_password;
                }
            }
        }
        /*******************************************/
        /********* Validate Attachment *************/
        /*******************************************/
        $attachments = '';
        $pirate_forms_attach_file = isset($_FILES['pirate-forms-attachment']) ? $_FILES['pirate-forms-attachment'] : '';
        if (!empty($pirate_forms_attach_file) && !empty($pirate_forms_attach_file['name'])) {
            /* Validate file type */
            $pirate_forms_file_types_allowed = 'jpg|jpeg|png|gif|pdf|doc|docx|ppt|pptx|odt|avi|ogg|m4a|mov|mp3|mp4|mpg|wav|wmv';
            $pirate_forms_file_types_allowed = trim($pirate_forms_file_types_allowed, '|');
            $pirate_forms_file_types_allowed = '(' . $pirate_forms_file_types_allowed . ')';
            $pirate_forms_file_types_allowed = '/\\.' . $pirate_forms_file_types_allowed . '$/i';
            if (!preg_match($pirate_forms_file_types_allowed, $pirate_forms_attach_file['name'])) {
                $_SESSION['pirate_forms_contact_errors']['pirate-forms-upload-failed-type'] = __('Uploaded file is not allowed for file type', 'pirate-forms');
            }
            /* Validate file size */
            $pirate_forms_file_size_allowed = 1048576;
            // default size 1 MB
            if ($pirate_forms_attach_file['size'] > $pirate_forms_file_size_allowed) {
                $_SESSION['pirate_forms_contact_errors']['pirate-forms-upload-failed-size'] = __('Uploaded file is too large', 'pirate-forms');
            }
            pirate_forms_init_uploads();
            $uploads_dir = pirate_forms_upload_tmp_dir();
            $uploads_dir = pirate_forms_maybe_add_random_dir($uploads_dir);
            $filename = $pirate_forms_attach_file['name'];
            $filename = pirate_forms_canonicalize($filename);
            $filename = sanitize_file_name($filename);
            $filename = pirate_forms_antiscript_file_name($filename);
            $filename = wp_unique_filename($uploads_dir, $filename);
            $new_file = trailingslashit($uploads_dir) . $filename;
            if (false === @move_uploaded_file($pirate_forms_attach_file['tmp_name'], $new_file)) {
                $_SESSION['pirate_forms_contact_errors']['pirate-forms-upload-failed-general'] = __('There was an unknown error uploading the file.', 'pirate-forms');
            }
            // Make sure the uploaded file is only readable for the owner process
            @chmod($new_file, 0400);
            if (!empty($new_file)) {
                $attachments = $new_file;
            }
        }
        wp_mail($site_recipients, 'Contact on ' . htmlspecialchars_decode(get_bloginfo('name')), $body, $headers, $attachments);
        // Should a confirm email be sent?
        $confirm_body = stripslashes(trim(pirate_forms_get_key('pirateformsopt_confirm_email')));
        if (!empty($confirm_body) && !empty($pirate_forms_contact_email)) {
            // Removing entities
            $confirm_body = htmlspecialchars_decode($confirm_body);
            $confirm_body = html_entity_decode($confirm_body);
            $confirm_body = str_replace('&#39;', "'", $confirm_body);
            $headers = "From: {$site_name} <{$site_email}>\r\nReply-To: {$site_name} <{$site_email}>";
            wp_mail($pirate_forms_contact_email, pirate_forms_get_key('pirateformsopt_label_submit') . ' - ' . $site_name, $confirm_body, $headers);
        }
        /************************************************************/
        /*************   Store the entries in the DB ****************/
        /************************************************************/
        if (pirate_forms_get_key('pirateformsopt_store') === 'yes') {
            $new_post_id = wp_insert_post(array('post_type' => 'pf_contact', 'post_title' => date('l, M j, Y', time()) . ' by "' . $pirate_forms_contact_name . '"', 'post_content' => $body, 'post_author' => 1, 'post_status' => 'private'));
            if (isset($pirate_forms_contact_email) && !empty($pirate_forms_contact_email)) {
                add_post_meta($new_post_id, 'Contact email', $pirate_forms_contact_email);
            }
        }
        $pirate_forms_current_theme = wp_get_theme();
        /* If a Thank you page is selected, redirect to that page */
        if (pirate_forms_get_key('pirateformsopt_thank_you_url')) {
            $redirect_id = intval(pirate_forms_get_key('pirateformsopt_thank_you_url'));
            $redirect = get_permalink($redirect_id);
            wp_safe_redirect($redirect);
        } elseif ('Zerif Lite' == $pirate_forms_current_theme->name || 'Zerif Lite' == $pirate_forms_current_theme->parent_theme || 'Zerif PRO' == $pirate_forms_current_theme->name || 'Zerif PRO' == $pirate_forms_current_theme->parent_theme) {
            $redirect = $_SERVER["HTTP_REFERER"] . (strpos($_SERVER["HTTP_REFERER"], '?') === FALSE ? '?' : '&') . 'pcf=1#contact';
            wp_safe_redirect($redirect);
        }
    }
}