You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
2.6 KiB
79 lines
2.6 KiB
2 years ago
|
<?php
|
||
|
|
||
|
/**
|
||
|
* Batch Email processor, included from batchcom
|
||
|
*
|
||
|
* @package OpenEMR
|
||
|
* @link http://www.open-emr.org
|
||
|
* @author cfapress
|
||
|
* @author Jason 'Toolbox' Oettinger <jason@oettinger.email>
|
||
|
* @copyright Copyright (c) 2008 cfapress
|
||
|
* @copyright Copyright (c) 2017 Jason 'Toolbox' Oettinger <jason@oettinger.email>
|
||
|
* @license https://github.com/openemr/openemr/blob/master/LICENSE GNU General Public License 3
|
||
|
*/
|
||
|
|
||
|
// create file header.
|
||
|
// menu for fields could be added in the future
|
||
|
require_once("../globals.php");
|
||
|
|
||
|
use OpenEMR\Common\Csrf\CsrfUtils;
|
||
|
use OpenEMR\Core\Header;
|
||
|
|
||
|
if (!CsrfUtils::verifyCsrfToken($_POST["csrf_token_form"])) {
|
||
|
CsrfUtils::csrfNotVerified();
|
||
|
}
|
||
|
|
||
|
?>
|
||
|
<html>
|
||
|
<head>
|
||
|
<title><?php echo xlt('Email Notification Report'); ?></title>
|
||
|
<?php Header::setupHeader(); ?>
|
||
|
</head>
|
||
|
<body class="body_top container">
|
||
|
<header class="row">
|
||
|
<?php require_once("batch_navigation.php");?>
|
||
|
<h1 class="col-md-12">
|
||
|
<a href="batchcom.php"><?php echo xlt('Batch Communication Tool')?></a>
|
||
|
<small><?php echo xlt('Email Notification Report'); ?></small>
|
||
|
</h1>
|
||
|
</header>
|
||
|
<main class="row mx-4">
|
||
|
<ul class="col-md-12">
|
||
|
<?php
|
||
|
$email_sender = $_POST['email_sender'];
|
||
|
$sent_by = $_SESSION['authUserID'];
|
||
|
|
||
|
while ($row = sqlFetchArray($res)) {
|
||
|
// prepare text for ***NAME*** tag
|
||
|
$pt_name = $row['title'] . ' ' . $row['fname'] . ' ' . $row['lname'];
|
||
|
$pt_email = $row['email'];
|
||
|
|
||
|
$email_subject = $_POST['email_subject'];
|
||
|
$email_body = $_POST['email_body'];
|
||
|
$email_subject = preg_replace('/\*{3}NAME\*{3}/', $pt_name, $email_subject);
|
||
|
$email_body = preg_replace('/\*{3}NAME\*{3}/', $pt_name, $email_body);
|
||
|
|
||
|
$headers = "MIME-Version: 1.0\r\n";
|
||
|
$headers .= "To: $pt_name<" . $pt_email . ">\r\n";
|
||
|
$headers .= "From: <" . $email_sender . ">\r\n";
|
||
|
$headers .= "Reply-to: <" . $email_sender . ">\r\n";
|
||
|
$headers .= "X-Priority: 3\r\n";
|
||
|
$headers .= "X-Mailer: PHP mailer\r\n";
|
||
|
if (mail($pt_email, $email_subject, $email_body, $headers)) {
|
||
|
echo "<li>" . xlt('Email sent to') . ": " . text($pt_name) . " , " . text($pt_email) . "</li>";
|
||
|
} else {
|
||
|
$m_error = true;
|
||
|
$m_error_count++;
|
||
|
}
|
||
|
}
|
||
|
?>
|
||
|
</ul>
|
||
|
<?php
|
||
|
if ($m_error) {
|
||
|
echo '<div class="alert alert-danger">' . xlt('Could not send email due to a server problem.') . ' ' . text($m_error_count) . ' ' . xlt('emails not sent') . '</div>';
|
||
|
}
|
||
|
?>
|
||
|
</main>
|
||
|
</body>
|
||
|
</html>
|