HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: /var/www/html/WPProfessionalCleaning-old/wp-content/themes/professional-cleaning/functions.php
<?php
function send_contact_email() {
    parse_str($_POST['form_data'], $form_data);

    $name = sanitize_text_field($form_data['name']);
    $email = sanitize_email($form_data['email']);
    $phone = sanitize_text_field($form_data['phone']);
    $message = sanitize_textarea_field($form_data['message']);
    $zip = sanitize_text_field($form_data['zip']);
    $date = sanitize_text_field($form_data['date']);
    $time = sanitize_text_field($form_data['time']);

    if (empty($name) || empty($email) || empty($message)) {
        wp_send_json_error('Please fill all required fields.');
    }

    $to = get_option('admin_email'); // Change this if needed
    $subject = "New Contact Form Submission from $name";
    $headers = "From: $name <$email>\r\nReply-To: $email\r\n";

    $email_content = "
        <h3>New Contact Form Submission</h3>
        <p><strong>Name:</strong> $name</p>
        <p><strong>Email:</strong> $email</p>
        <p><strong>Phone:</strong> $phone</p>
        <p><strong>Message:</strong> $message</p>
        <p><strong>Zip Code:</strong> $zip</p>
        <p><strong>Date:</strong> $date</p>
        <p><strong>Time:</strong> $time</p>
    ";

    if (wp_mail($to, $subject, $email_content, $headers)) {
        wp_send_json_success();
    } else {
        wp_send_json_error('Failed to send email. Try again later.');
    }
}

add_action('wp_ajax_send_contact_email', 'send_contact_email');
add_action('wp_ajax_nopriv_send_contact_email', 'send_contact_email');


function enqueue_contact_form_scripts() {
    wp_enqueue_script('jquery');
    wp_enqueue_script('parsley-js', 'https://cdnjs.cloudflare.com/ajax/libs/parsley.js/2.9.2/parsley.min.js', array('jquery'), null, true);
    wp_enqueue_script('custom-contact-js', get_template_directory_uri() . '/js/contact-form.js', array('jquery'), null, true);

    wp_localize_script('custom-contact-js', 'ajax_object', array('ajax_url' => admin_url('admin-ajax.php')));
}

add_action('wp_enqueue_scripts', 'enqueue_contact_form_scripts');