Feat: onglet SMTP dans l'administration
- Formulaire d'édition des paramètres SMTP (serveur, port, chiffrement, utilisateur, mot de passe, expéditeur) stockés dans data/smtp_settings.json (écrit par www-data, contrairement au .env en lecture seule) - Test de connexion SMTP avec logs PHPMailer complets (DEBUG_SERVER) - Envoi d'email de test avec contenu personnalisé anti-spam - src/SmtpSettings.php : lecture/écriture smtp_settings.json avec fallback env() - mailer.php : lit les paramètres depuis SmtpSettings en priorité - admin.js : indicateurs spinner sur les boutons pendant le traitement
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
document.addEventListener('DOMContentLoaded', function () {
|
||||
// Sélection globale articles
|
||||
var checkAll = document.getElementById('check-all');
|
||||
if (checkAll) {
|
||||
checkAll.addEventListener('change', function () {
|
||||
@@ -7,4 +8,31 @@ document.addEventListener('DOMContentLoaded', function () {
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// Indicateurs de traitement formulaire SMTP (config + tester connexion)
|
||||
var smtpForm = document.getElementById('smtp-config-form');
|
||||
if (smtpForm) {
|
||||
smtpForm.addEventListener('submit', function (e) {
|
||||
var clicked = e.submitter;
|
||||
if (!clicked) return;
|
||||
smtpForm.querySelectorAll('button[type="submit"]').forEach(function (btn) {
|
||||
btn.disabled = true;
|
||||
});
|
||||
var isSave = clicked.id === 'smtp-save-btn';
|
||||
clicked.innerHTML = '<span class="spinner-border spinner-border-sm me-1" role="status" aria-hidden="true"></span>'
|
||||
+ (isSave ? 'Enregistrement…' : 'En cours…');
|
||||
});
|
||||
}
|
||||
|
||||
// Indicateur de traitement envoi email de test
|
||||
var smtpTestForm = document.getElementById('smtp-test-form');
|
||||
if (smtpTestForm) {
|
||||
smtpTestForm.addEventListener('submit', function () {
|
||||
var btn = document.getElementById('smtp-send-btn');
|
||||
if (btn) {
|
||||
btn.disabled = true;
|
||||
btn.innerHTML = '<span class="spinner-border spinner-border-sm me-1" role="status" aria-hidden="true"></span>En cours…';
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user