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 @@