File: /var/www/clapboard/contact-form.php
<?php
    use PHPMailer\PHPMailer\PHPMailer;
    use PHPMailer\PHPMailer\SMTP;
    use PHPMailer\PHPMailer\Exception;
    require './Exception.php';
    require './PHPMailer.php';
    require './SMTP.php';
    $mail = new PHPMailer(true);
    $json_str = file_get_contents('php://input');
    $json_obj = json_decode($json_str, true);
if($json_obj) {
    $userName = $json_obj["name"];
    $userEmail = $json_obj["email"];
    $userMessage = $json_obj["message"];
    $name = "";
    $email = "";
    $message = "";
    $recipient = "info@borealis.biz";
    $sender = "no-reply@clapboardapp.com";
    $input_error = "";
    $email_body = "<div>";
      
    if(isset($userName) && !empty($userName)) {
        $name = filter_var($userName, FILTER_SANITIZE_STRING);
        $email_body .= "<div>
                           <label><b>Name:</b></label> <span>".$name."</span>
                        </div>";
    }else{
        $input_error = "Sending failed.";
    }
 
    if(isset($userEmail) && !empty($userEmail)) {
        $email = str_replace(array("\r", "\n", "%0a", "%0d"), '', $userEmail);
        $email = filter_var($email, FILTER_VALIDATE_EMAIL);
        $email_body .= "<div>
                           <label><b>Email:</b></label> <span>".$email."</span>
                        </div>";
    }else{
        $input_error = "Sending failed.";
    }
      
    if(isset($userMessage) && !empty($userMessage)) {
        $message = htmlspecialchars($userMessage);
        $email_body .= "<div>
                           <label><b>Message:</b></label>
                           <div>".$message."</div>
                        </div>";
    }else{
        $input_error = "Sending failed.";
    }
    $email_body .= "</div>";
    try {
        //Server settings
        $mail->isSMTP();
        $mail->CharSet    = 'UTF-8';
        $mail->Encoding   = 'base64';
        $mail->Host       = 'smtp.sendgrid.net';
        $mail->SMTPAuth   = true;
        $mail->Username   = 'apikey';
        $mail->Password   = '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';
        $mail->Port       = 587;
        $mail->SMTPSecure = 'tls';
        //Recipients
        $mail->setFrom($sender, $name);
        $mail->addAddress($recipient);
        // Content
        $mail->isHTML(true);
        $mail->Subject = 'Clapboard contact form message from '.$name;
        $mail->Body    = $email_body;
        if($input_error == ""){
            $mail->send();
            header('Content-Type: application/json');
            $data = ["status"=>"success"];
            echo json_encode($data);
        }else{
            header('Content-Type: application/json');
            $data = ["status"=>$input_error];
            echo json_encode($data);
        }
    } catch (Exception $e) {
        header('Content-Type: application/json');
        $data = ["status"=>"error"];
        echo json_encode($data);
    }
        
} else {
    header('Content-Type: application/json');
    $data = ["status"=>"error"];
    echo json_encode($data);
}
?>