modifs.mineures sans commentaires

This commit is contained in:
Jephté Clain 2025-10-22 08:17:17 +04:00
parent cfb8f0d559
commit 9d6e7f3955

View File

@ -6,39 +6,27 @@ use nulib\cl;
use nulib\cv; use nulib\cv;
use nulib\exceptions; use nulib\exceptions;
use nulib\output\msg; use nulib\output\msg;
use nulib\php\types\vbool;
use nulib\str; use nulib\str;
use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP; use PHPMailer\PHPMailer\SMTP;
class mailer { class mailer {
private static function is_bool(&$value): bool { private static function is_bool(&$value): bool {
if ($value === null) { if ($value === null) return false;
return false; elseif (is_bool($value)) return true;
} elseif (is_bool($value)) { elseif (is_numeric($value)) {
$value = $value != 0;
return true; return true;
} elseif (is_int($value)) { } elseif (vbool::is_yes($value)) {
$value = boolval($value);
return true;
} else {
switch (strval($value)) {
case "":
case "0":
case "no":
case "off":
case "false":
$value = false;
return true;
case "1":
case "yes":
case "on":
case "true":
$value = true; $value = true;
return true; return true;
default: } elseif ($value === "" || vbool::is_no($value)) {
$value = false;
return true;
}
return false; return false;
} }
}
}
private static function get_bool($value): bool { private static function get_bool($value): bool {
if (self::is_bool($value)) return $value; if (self::is_bool($value)) return $value;
@ -120,19 +108,14 @@ class mailer {
$mailer->SMTPDebug = $debug; $mailer->SMTPDebug = $debug;
# auth, username, password # auth, username, password
$username = $params["username"] ?? null; $username = $params["username"] ?? null;
$username ??= cv::vn(getenv("NULIB_MAIL_USERNAME"));
$password = $params["password"] ?? null; $password = $params["password"] ?? null;
$password ??= cv::vn(getenv("NULIB_MAIL_PASSWORD"));
$auth = $params["auth"] ?? null; $auth = $params["auth"] ?? null;
$auth ??= cv::vn(getenv("NULIB_MAIL_AUTH"));
$auth ??= $username !== null && $password !== null; $auth ??= $username !== null && $password !== null;
$mailer->SMTPAuth = self::get_bool($auth); $mailer->SMTPAuth = self::get_bool($auth);
$mailer->Username = $username; $mailer->Username = $username;
$mailer->Password = $password; $mailer->Password = $password;
# secure # secure
$secure = $params["secure"] ?? null; $secure = $params["secure"] ?? false;
$secure ??= cv::vn(getenv("NULIB_MAIL_SECURE"));
$secure ??= false;
if (self::is_bool($secure)) { if (self::is_bool($secure)) {
if (!$secure) { if (!$secure) {
$mailer->SMTPSecure = ""; $mailer->SMTPSecure = "";