diff --git a/Js/fonctions.js b/Js/fonctions.js index 0325450a..e36846a3 100755 --- a/Js/fonctions.js +++ b/Js/fonctions.js @@ -32121,128 +32121,72 @@ function ajouter_sms_attente_singleton(p_destinataires, p_message) }); } -// 2ème fonction à mettre à jour -function tester_disponibiliter_sms() -{ - p_destinataires = $("#destinataires").val(); - if (p_destinataires<=" ") - { - v_msg="Veuillez saisir un destinataire!"; - v_msgEng="Please enter a recipient!"; - alert_ebene(v_msg, v_msgEng); - $("#destinataires").focus(); - return; - } +function tester_disponibiliter_sms() { + // 1. Récupération des éléments de base + const p_destinataires = $("#destinataires").val(); + const fournisseurSms = $("#fournisseurSms").val(); + const racineWeb = $("#racineWeb").val(); + const div_cible = $('#div_test_gabarit'); - p_message = ""; - - fournisseurSms = $("#fournisseurSms").val(); - - if (fournisseurSms<=" ") - { - v_msg="Fournisseur de SMS non défini!"; - v_msgEng="SMS provider not defined!"; - alert_ebene(v_msg, v_msgEng); - return; - } + // 2. Validation du destinataire + if (!p_destinataires || p_destinataires.trim() === "") { + alert_ebene("Veuillez saisir un destinataire!", "Please enter a recipient!"); + $("#destinataires").focus(); + return; + } - if(fournisseurSms=="esicia") - { - p_message = "Fournisseur : esicia "; - } - else - if(fournisseurSms=="blive") - { - p_message = "Fournisseur : blive "; - } - else - if(fournisseurSms=="hooza") - { - p_message = "Fournisseur : hooza "; - } - else - if(fournisseurSms=="skysms") - { - p_message = "Fournisseur : skysms "; - } - else - if(fournisseurSms=="satelcom") - { - p_message = "Fournisseur : satelcom "; - } - else - if(fournisseurSms=="noah") - { - p_message = "Fournisseur : noah "; - } - else - if(fournisseurSms=="nerhysms") - { - p_message = "Fournisseur : nerhysms "; - } - else - if(fournisseurSms=="emisms") - { - p_message = "Fournisseur : emisms "; - } - else - if(fournisseurSms=="erling") - { - p_message = "Fournisseur : erling "; - } - else - if(fournisseurSms=="ovh") - { - p_message = "Fournisseur : ovh "; - } - else - if(fournisseurSms=="afriksms") - { - p_message = "Fournisseur : afriksms"; - } - else - if(fournisseurSms=="ekotech") - { - p_message = "Fournisseur : ekotech"; - } - else - { - v_msg=fournisseurSms+" => Fournisseur de SMS inconnu!"; - v_msgEng=fournisseurSms+" => Unknown SMS Provider!"; - alert_ebene(v_msg, v_msgEng); - return; - } - - donnees = "destinataires="+p_destinataires+"&message="+p_message+"&fournisseurSms="+fournisseurSms; + // 3. Validation du fournisseur + if (!fournisseurSms || fournisseurSms.trim() === "") { + alert_ebene("Fournisseur de SMS non défini!", "SMS provider not defined!"); + return; + } - alert(donnees); + // 4. Mapping des fournisseurs (Remplace les multiples if/else) + const fournisseursValides = [ + "esicia", "blive", "hooza", "skysms", "satelcom", "noah", + "nerhysms", "emisms", "erling", "ovh", "afriksms", "ekotech" + ]; - $("#div_test_gabarit").html('
' + '
'); - - $.ajax({ - url: $("#racineWeb").val()+"Ajaxtesterdisponiblitesms/envoyerlesms/", - type: 'POST', - data: donnees, - success: function(data) - { - alert("success "+data); - $('#div_test_gabarit').html(data); - }, - error: function(errdata) - { - alert("Error : "+errdata); - $('#div_test_gabarit').html(errdata); - }, - complete: function() - { - /* - v_msg="Opération terminée avec succès!"; - v_msgEng="Operation completed successfully!"; - alert_ebene(v_msg, v_msgEng); - */ - } - }); + if (!fournisseursValides.includes(fournisseurSms)) { + alert_ebene( + fournisseurSms + " => Fournisseur de SMS inconnu!", + fournisseurSms + " => Unknown SMS Provider!" + ); + return; + } + + // 5. Préparation du message et des données + const p_message = "Fournisseur : " + fournisseurSms; + const donnees = { + destinataires: p_destinataires, + message: p_message, + fournisseurSms: fournisseurSms + }; + + // 6. Affichage du loader Neutral Pro + div_cible.html(` +
+
+

Envoi du SMS de test en cours...

+
+ `); + + // 7. Appel AJAX + $.ajax({ + url: racineWeb + "Ajaxtesterdisponiblitesms/envoyerlesms/", + type: 'POST', + data: donnees, + success: function(data) { + // Notification discrète de succès (Toast) + toastr.success("Demande transmise au serveur"); + div_cible.html(data); + }, + error: function(err) { + toastr.error("Erreur lors de l'envoi"); + div_cible.html(`
Erreur : ${err.statusText}
`); + } + }); } function ajouter_destinataire_sms_adherent(p_destinataires) @@ -89257,75 +89201,72 @@ function enregistrer_modif_param_filtreip() } -function tester_disponibiliter_whatsapp() -{ - p_destinataires = $("#destinataires").val(); - if (p_destinataires<=" ") - { - v_msg="Veuillez saisir un destinataire!"; - v_msgEng="Please enter a recipient!"; - alert_ebene(v_msg, v_msgEng); +function tester_disponibiliter_whatsapp() { + // 1. Initialisation des variables + const p_destinataires = $("#destinataires").val(); + const racineWeb = $("#racineWeb").val(); + const div_cible = $('#div_test_gabarit'); + const codeLangue = $("#codeLangue").val(); + + // On force waapi par défaut selon votre logique actuelle, + // mais prêt pour une sélection dynamique si besoin. + const fournisseurWhatsApp = 'waapi'; - $("#destinataires").focus(); - return; - } + // 2. Validation du destinataire + if (!p_destinataires || p_destinataires.trim() === "") { + alert_ebene("Veuillez saisir un destinataire!", "Please enter a recipient!"); + $("#destinataires").focus(); + return; + } - p_message = ""; - - p_message = "TESTS WHATSAPP INTER-SANTE"; - - // ajout KANE du 18/02/2025 + // 3. Validation et mapping du message fournisseur + let p_message = ""; + const providers = { + 'waapi': 'Fournisseur WhatsApp : waapi', + 'ultramsg': 'Fournisseur WhatsApp : ultramsg' + }; - // fournisseurWhatsApp = $("#fournisseurWhatsApp").val(); - fournisseurWhatsApp = 'waapi'; - - if (fournisseurWhatsApp<=" ") - { - v_msg="Fournisseur de WhatsApp non défini!"; - v_msgEng="WhatsApp provider not defined!"; - alert_ebene(v_msg, v_msgEng); - return; - } + if (providers[fournisseurWhatsApp]) { + p_message = providers[fournisseurWhatsApp]; + } else { + alert_ebene( + fournisseurWhatsApp + " => Fournisseur de WhatsApp inconnu!", + fournisseurWhatsApp + " => Unknown WhatsApp Provider!" + ); + return; + } - if(fournisseurWhatsApp=="waapi") - { - p_message = "Fournisseur WhatsApp : waapi "; - } - else - if(fournisseurWhatsApp=="ultramsg") - { - p_message = "Fournisseur WhatsApp : ultramsg "; - } - else - { - v_msg=fournisseurWhatsApp+" => Fournisseur de WhatsApp inconnu!"; - v_msgEng=fournisseurWhatsApp+" => Unknown WhatsApp Provider!"; - alert_ebene(v_msg, v_msgEng); - return; - } - - donnees = "destinataires="+p_destinataires+"&message="+p_message+"&fournisseurWhatsApp="+fournisseurWhatsApp; + // 4. Préparation des données (Format Objet) + const donnees = { + destinataires: p_destinataires, + message: p_message, + fournisseurWhatsApp: fournisseurWhatsApp + }; - $("#div_test_gabarit").html('
' + '
'); - - $.ajax({ - url: $("#racineWeb").val()+"Ajaxtesterdisponiblitesms/envoyerlewhatsapp/", - type: 'POST', - data: donnees, - success: function(data) - { - // alert("success "+data); - $('#div_test_gabarit').html(data); - }, - error: function(errdata) - { - // alert("Error : "+errdata); - $('#div_test_gabarit').html(errdata); - }, - complete: function() - { - } - }); + // 5. Affichage du loader stylisé + div_cible.html(` +
+
+

+ ${(codeLangue === "en_US") ? "Sending WhatsApp message..." : "Envoi du message WhatsApp..."} +

+
+ `); + + // 6. Requête AJAX + $.ajax({ + url: racineWeb + "Ajaxtesterdisponiblitesms/envoyerlewhatsapp/", + type: 'POST', + data: donnees, + success: function(data) { + toastr.success((codeLangue === "en_US") ? "WhatsApp API called" : "API WhatsApp appelée"); + div_cible.html(data); + }, + error: function(xhr) { + toastr.error((codeLangue === "en_US") ? "Connection error" : "Erreur de connexion"); + div_cible.html(`
Error: ${xhr.statusText}
`); + } + }); } diff --git a/Vue/Testsms/index.php b/Vue/Testsms/index.php index 1b1c7d34..847c37b7 100755 --- a/Vue/Testsms/index.php +++ b/Vue/Testsms/index.php @@ -2,11 +2,11 @@
- +
-

-

+

+