mirror of
https://github.com/ZeJMaN/LBCAlerte_ynh.git
synced 2025-07-17 17:10:48 +02:00
Initial commit
Functional, without SSO
This commit is contained in:
76
sources/app/admin/scripts/mail.php
Normal file
76
sources/app/admin/scripts/mail.php
Normal file
@ -0,0 +1,76 @@
|
||||
<?php
|
||||
$errors = array();
|
||||
$options = array(
|
||||
"host" => "", "port" => "",
|
||||
"username" => "", "password" => "",
|
||||
"secure" => "",
|
||||
"from" => "",
|
||||
"testMail" => ""
|
||||
);
|
||||
if ($config->hasSection("mailer")) {
|
||||
if ($smtp = $config->get("mailer", "smtp", array())) {
|
||||
$options = array_merge($options, $smtp);
|
||||
}
|
||||
if ($from = $config->get("mailer", "from", null)) {
|
||||
$options["from"] = $from;
|
||||
}
|
||||
}
|
||||
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
||||
$options = array_merge($options, array_map("trim", $_POST));
|
||||
if (isset($_POST["testSMTP"])) {
|
||||
require_once "PHPMailer/class.phpmailer.php";
|
||||
$mailer = new PHPMailer($exceptions=true);
|
||||
$mailer->setLanguage("fr", DOCUMENT_ROOT."/lib/PHPMailer/language/");
|
||||
$mailer->CharSet = "utf-8";
|
||||
if (!empty($options["host"])) {
|
||||
$mailer->Host = $options["host"];
|
||||
$mailer->isSMTP();
|
||||
}
|
||||
if (!empty($options["port"])) {
|
||||
$mailer->Port = $options["port"];
|
||||
$mailer->isSMTP();
|
||||
}
|
||||
if (!empty($options["username"])) {
|
||||
$mailer->SMTPAuth = true;
|
||||
$mailer->Username = $options["username"];
|
||||
}
|
||||
if (!empty($options["password"])) {
|
||||
$mailer->SMTPAuth = true;
|
||||
$mailer->Password = $options["password"];
|
||||
}
|
||||
if (!empty($options["secure"])) {
|
||||
$mailer->SMTPSecure = $options["secure"];
|
||||
}
|
||||
if (!empty($options["from"])) {
|
||||
$mailer->Sender = $options["from"];
|
||||
$mailer->From = $options["from"];
|
||||
}
|
||||
if (empty($_POST["testMail"])) {
|
||||
$errors["testMail"] = "Indiquez une adresse e-mail pour l'envoi du test.";
|
||||
} else {
|
||||
$mailer->clearAddresses();
|
||||
$mailer->addAddress($_POST["testMail"]);
|
||||
if ($options["from"]) {
|
||||
$mailer->FromName = $options["from"];
|
||||
}
|
||||
$mailer->Subject = "Test d'envoi de mail";
|
||||
$mailer->Body = "Bravo.\nVotre configuration mail est validée.";
|
||||
try {
|
||||
$mailer->send();
|
||||
$testSended = true;
|
||||
} catch (phpmailerException $e) {
|
||||
$testError = $e->getMessage();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$config->set("mailer", "smtp", array(
|
||||
"host" => $options["host"], "port" => $options["port"],
|
||||
"username" => $options["username"], "password" => $options["password"],
|
||||
"secure" => $options["secure"]
|
||||
));
|
||||
$config->set("mailer", "from", $options["from"]);
|
||||
$config->save();
|
||||
header("LOCATION: ?mod=admin&a=mail");
|
||||
exit;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user