diff --git a/src/components/Article_Help.js b/src/components/Article_Help.js index 8ef545e..707f3c2 100644 --- a/src/components/Article_Help.js +++ b/src/components/Article_Help.js @@ -911,7 +911,7 @@ const Article_Help = (props) => { > - +
diff --git a/src/components/Module_Admission_Candidat_Synthese.js b/src/components/Module_Admission_Candidat_Synthese.js index cb84d58..ab4f0f6 100644 --- a/src/components/Module_Admission_Candidat_Synthese.js +++ b/src/components/Module_Admission_Candidat_Synthese.js @@ -403,6 +403,14 @@ const Module_Admission_Candidat_Synthese = (props) => { var local_session_etape_code = JSON.parse(x).session_etape_code; var local_rang = JSON.parse(x).rang; + var local_inscrit_session_id = "" + if (JSON.parse(x).inscrit_session_id) + local_inscrit_session_id = JSON.parse(x).inscrit_session_id + + var local_inscrit_session_code = "" + if (JSON.parse(x).inscrit_session_code) + local_inscrit_session_code = JSON.parse(x).inscrit_session_code + var local_tab_entete_exam_jury = JSON.parse(x).tab_entete_exam_jury; @@ -422,6 +430,8 @@ const Module_Admission_Candidat_Synthese = (props) => { "age": local_age, "session_etape_code": local_session_etape_code, "rang": local_rang, + "inscrit_session_code": local_inscrit_session_id, + "inscrit_session_code": local_inscrit_session_code, }; @@ -439,6 +449,8 @@ const Module_Admission_Candidat_Synthese = (props) => { "status": local_status, "age": local_age, "session_etape_code": local_session_etape_code, + "inscrit_session_code": local_inscrit_session_id, + "inscrit_session_code": local_inscrit_session_code, }; const new_data_tmp_z = JSON.parse(x).tab_entete_exam_jury.map((z) => { @@ -828,14 +840,14 @@ const Module_Admission_Candidat_Synthese = (props) => { const [Dialog_add_inscription_message, setDialog_add_inscription_message] = React.useState(false); const [Dialog_add_inscription_open, setDialog_add_inscription_open] = React.useState(false); - function Dialog_add_inscription_handle_change_participant_session(message) { - setDialog_add_inscription_message(message); - setDialog_add_inscription_open(true); - } + const Dialog_add_inscription_handleClose_buton = () => { setDialog_add_inscription_open(false); + setselected_candidat_id(""); + setselected_candidat_nom(""); + setselected_candidat_prenom(""); }; const [New_Getall_TrainingSession_result, setNew_Getall_TrainingSession_result] = useState(); @@ -953,6 +965,67 @@ const Module_Admission_Candidat_Synthese = (props) => { const [p_dialog_financement, setp_dialog_financement] = useState(""); const [p_dialog_client_rattachement_id, setp_dialog_client_rattachement_id] = useState(""); + const [selected_candidat_id, setselected_candidat_id] = useState(""); + const [selected_candidat_nom, setselected_candidat_nom] = useState(""); + const [selected_candidat_prenom, setselected_candidat_prenom] = useState(""); + + const [Inscrire_Candidat_To_Promo_api, setInscrire_Candidat_To_Promo_api] = useState(); + const [Inscrire_Candidat_To_Promo_message, setInscrire_Candidat_To_Promo_message] = useState(); + const [Inscrire_Candidat_To_Promo_result, setInscrire_Candidat_To_Promo_result] = useState(); + function Inscrire_Candidat_To_Promo(local_admiss_session_id, new_status) { + var form = new FormData(); + //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA"); + + const stored_cookie = getCookie('tokenmysypart'); + form.append("token", stored_cookie); + form.append("list_candidat_id", selected_candidat_id); + form.append("admission_session_id", props.selected_session_admiss_id); + form.append("session_id", p_dialog_session_id); + form.append("type_apprenant", p_dialog_type_apprenant); + form.append("modefinancement", p_dialog_financement); + + + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/Candidat_Inscrire_To_Session/"; + + //setLoading(true); + axios.post(myurl, form).then(res => { + console.log(" In Inscrire_Candidat_To_Promo res.data.status = " + res.data.status); + console.log(" In Inscrire_Candidat_To_Promo res.data.message r_class = " + res.data.message); + + //setLoading(false); + if (String(res.data.status) === String("true")) { + setInscrire_Candidat_To_Promo_api("true"); + setInscrire_Candidat_To_Promo_result(res.data.message); + GetListeInscrit_With_Synthese(); + setdisplay_alert_mysy("1"); + setalert_message(res.data.message); + setalert_type("success"); + Dialog_add_inscription_handleClose_buton(); + } + else { + setInscrire_Candidat_To_Promo_api("false"); + setInscrire_Candidat_To_Promo_message(res.data.message); + // alert(res.data.message); + setdisplay_alert_mysy("1"); + setalert_message(res.data.message); + setalert_type("error"); + } + + }).catch((error) => { + //setLoading(false); + console.warn('UpdateStagiaireData : Not good man :( Inscrire_Candidat_To_Promo = ' + error); + setInscrire_Candidat_To_Promo_api("false"); + + + setdisplay_alert_mysy("1"); + setalert_message(" Impossible d'inscrire le candidat"); + setalert_type("error"); + + }) + } + + return (
@@ -998,7 +1071,7 @@ const Module_Admission_Candidat_Synthese = (props) => { aria-labelledby="draggable-dialog-title" > - Inscrire + Inscrire {selected_candidat_prenom}   {selected_candidat_nom} {New_Getall_TrainingSession_result && New_Getall_TrainingSession_result.length > 0 &&
Promotion @@ -1094,7 +1167,9 @@ const Module_Admission_Candidat_Synthese = (props) => {
- +
@@ -1228,10 +1303,10 @@ const Module_Admission_Candidat_Synthese = (props) => { type="number" InputProps={{ inputProps: { min: 1, max: 9999999 } }} fullWidth - // value={JSON.parse(item).rang} + // value={JSON.parse(item).rang} onChange={(e) => { - - // console.log("RRRR"); + + // console.log("RRRR"); var local_node = {} local_node["_id"] = String(JSON.parse(item)._id) local_node["rang"] = e.target.value @@ -1281,11 +1356,17 @@ const Module_Admission_Candidat_Synthese = (props) => { ))} - { + {JSON.parse(item).inscrit_session_id.length <= 5 && { + setselected_candidat_nom(JSON.parse(item).nom); + setselected_candidat_prenom(JSON.parse(item).prenom) + setselected_candidat_id(JSON.parse(item)._id); Getall_TrainingSession(); setDialog_add_inscription_open(true); - - }}> + + }}> } + + {JSON.parse(item).inscrit_session_id.length > 5 && + {JSON.parse(item).inscrit_session_code} } diff --git a/src/components/New_C_Article_Help_2025.js b/src/components/New_C_Article_Help_2025.js index 5eb148c..e46bd7c 100644 --- a/src/components/New_C_Article_Help_2025.js +++ b/src/components/New_C_Article_Help_2025.js @@ -6,7 +6,7 @@ import { useCookies } from "react-cookie"; import Articles from "./Article"; import New_Article_2025 from "./New_C_Article_2025"; - +import ReactPlayer from 'react-player' import 'react-discussion-board/dist/index.css' import { useForm } from 'react-hook-form'; import "react-draft-wysiwyg/dist/react-draft-wysiwyg.css"; @@ -25,401 +25,400 @@ import { FcUndo } from "react-icons/fc"; import IMG_Default_Article from "../mysy_img/img_default_article_detail.jpg"; function PaperComponent(props) { - return ( - - - - ); + return ( + + + + ); } const useStyles = makeStyles((theme) => ({ - dialog: { - position: 'absolute', - // left: 10, - top: 400 - }, + dialog: { + position: 'absolute', + // left: 10, + top: 400 + }, - paper: { - overflowY: 'unset', - }, - customizedButton: { - position: 'absolute', - left: '98%', - top: '-3%', - backgroundColor: 'lightgray', - color: 'gray', - }, + paper: { + overflowY: 'unset', + }, + customizedButton: { + position: 'absolute', + left: '98%', + top: '-3%', + backgroundColor: 'lightgray', + color: 'gray', + }, })); function New_C_Article_Help_2025() { - const classes = useStyles(); + const classes = useStyles(); - const [img_displayed, setimg_displayed] = useState(""); + const [img_displayed, setimg_displayed] = useState(""); - const [cookie, setCookie, removeCookie] = useCookies(['tokenmysych']); - const { articleId } = useParams(); - const [result, setResult] = useState(""); + const [cookie, setCookie, removeCookie] = useCookies(['tokenmysych']); + const { articleId } = useParams(); + const [result, setResult] = useState(""); - const [myApiResponse, setmyApiResponse] = useState("false"); - const [DetailArticleAvis, setDetailArticleAvis] = useState([]); - const [country_code, setcountry_code] = useState(""); - const [country_name, setcountry_name] = useState(""); - const [city, setcity] = useState(""); - const [postal, setpostal] = useState(""); - const [latitude, setlatitude] = useState(""); - const [longitude, setlongitude] = useState(""); - const [IPv4, setIPv4] = useState(""); - const [state, setstate] = useState(""); - const [userIp, setuserIp] = useState(""); - const [action, setaction] = useState(""); - const [userconnected, setuserconnected] = useState(""); - const stored_user = cookie.tokenmysych; + const [myApiResponse, setmyApiResponse] = useState("false"); + const [DetailArticleAvis, setDetailArticleAvis] = useState([]); + const [country_code, setcountry_code] = useState(""); + const [country_name, setcountry_name] = useState(""); + const [city, setcity] = useState(""); + const [postal, setpostal] = useState(""); + const [latitude, setlatitude] = useState(""); + const [longitude, setlongitude] = useState(""); + const [IPv4, setIPv4] = useState(""); + const [state, setstate] = useState(""); + const [userIp, setuserIp] = useState(""); + const [action, setaction] = useState(""); + const [userconnected, setuserconnected] = useState(""); + const stored_user = cookie.tokenmysych; - const [display_header_img, setdisplay_header_img] = useState(""); + const [display_header_img, setdisplay_header_img] = useState(""); - const { - register, - handleSubmit, - reset, - formState: { errors } - } = useForm(); + const { + register, + handleSubmit, + reset, + formState: { errors } + } = useForm(); - const [pagecanoniktitle, setpagecanoniktitle] = useState(""); - const [pagecanonikurl, setpagecanonikurl] = useState(window.location.host); - const [article_img, setarticle_img] = useState("") - const [page_meta_description, setpage_meta_description] = useState(""); + const [pagecanoniktitle, setpagecanoniktitle] = useState(""); + const [pagecanonikurl, setpagecanonikurl] = useState(window.location.host); + const [article_img, setarticle_img] = useState("") + const [page_meta_description, setpage_meta_description] = useState(""); + + const [article_video, setarticle_video] = useState("") + const [article_tex_a_retenir, setarticle_tex_a_retenir] = useState("") - useEffect(() => { + useEffect(() => { - setpagecanonikurl(window.location.host); + setpagecanonikurl(window.location.host); - async function fetchData() { - const result = await axios('https://geolocation-db.com/json/',); - setuserIp(result.data.IPv4); - setcountry_code(result.data.country_code); - setcountry_name(result.data.country_name); - setcity(result.data.city); - setpostal(result.data.postal); - setlatitude(result.data.latitude); - setlongitude(result.data.longitude); - setIPv4(result.data.IPv4); - setstate(result.data.state); - setuserIp(result.data.IPv4); + async function fetchData() { + const result = await axios('https://geolocation-db.com/json/',); + setuserIp(result.data.IPv4); + setcountry_code(result.data.country_code); + setcountry_name(result.data.country_name); + setcity(result.data.city); + setpostal(result.data.postal); + setlatitude(result.data.latitude); + setlongitude(result.data.longitude); + setIPv4(result.data.IPv4); + setstate(result.data.state); + setuserIp(result.data.IPv4); + } + fetchData(); + Display(); + // Display_article_comment(); + Get_3_Articles(); + + //alert("stored_user = "+stored_user); + if (typeof (articleId) === "undefined") { + setaction("creation"); + } else { + setaction("affichage"); + + } + + if (typeof (stored_user) === "undefined" || String(stored_user) === '') { + setuserconnected("0"); + } else { + setuserconnected("1"); + } + + window.scrollTo({ + top: 0, + behavior: "smooth", + }); + // setwindowWidth(window.innerWidth); + // setwindowheight(window.innerHeight); + + + //console.log(" articleId = " + articleId); + }, []); + + + + + function Display(e) { + + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_help_article/"; + var form = new FormData(); + form.append("internal_url", articleId); + form.append("token", ""); + // Ajout des info IP user + form.append("user_ip", IPv4); + form.append("user_country_code", country_code); + form.append("user_country_name", country_name); + form.append("user_city", city); + form.append("user_postal", postal); + form.append("user_latitude", latitude); + form.append("user_longitude", longitude); + form.append("user_state", state); + + + //alert("myurl = "+myurl); + + axios.post(myurl, form).then(res => { + // console.log(" In test res.data.status = " + res.data.status); + //console.log(" In Display iiii res.data.message = " + res.data.message); + if (String(res.data.status) === "true") { + setmyApiResponse("True"); + + setResult(res.data.message); + setDetailArticleAvis(JSON.parse(res.data.message)); + + var my_avis = JSON.parse(res.data.message) + + if (my_avis && my_avis.display_header_img && String(my_avis.display_header_img) === "0") { + setdisplay_header_img("0") } - fetchData(); - Display(); - // Display_article_comment(); - Get_3_Articles(); - //alert("stored_user = "+stored_user); - if (typeof (articleId) === "undefined") { - setaction("creation"); + if (my_avis && my_avis.title_formation) { + setpagecanoniktitle(my_avis.title_formation); + } + + if (my_avis && my_avis.meta_description) { + setpage_meta_description(my_avis.meta_description); } else { - setaction("affichage"); - + setpage_meta_description(my_avis.title_formation); } - if (typeof (stored_user) === "undefined" || String(stored_user) === '') { - setuserconnected("0"); + + if (my_avis && my_avis.internal_url) { + setpagecanonikurl(my_avis.internal_url); + + console.log(process.env.REACT_APP_BASE_URL + "/" + my_avis.internal_url); + } + + + if (my_avis && my_avis.img_path && String(my_avis.img_path).length > 10) { + setarticle_img(my_avis.img_path); } else { - setuserconnected("1"); + setarticle_img(img_met_digital); } - window.scrollTo({ - top: 0, - behavior: "smooth", - }); - // setwindowWidth(window.innerWidth); - // setwindowheight(window.innerHeight); + + if (my_avis && my_avis.video_path && String(my_avis.video_path).length > 5) { + setarticle_video(my_avis.video_path); + } else { + setarticle_video(""); + } + + if (my_avis && my_avis.a_retenir && String(my_avis.a_retenir).length > 10) { + setarticle_tex_a_retenir(my_avis.a_retenir); + } else { + setarticle_tex_a_retenir(""); + } + + // console.log(" ### my_avis.display_header_img = ", my_avis.display_header_img); + } + else { + //console.log(" In Erreur res.data.status = " + res.data.status); + //console.log(" In Erreur res.data.message = " + res.data.message); + setmyApiResponse("False"); + } + }).catch((error) => { + console.warn('Not good man :( mysearchtext = '); + setmyApiResponse("False"); + }) + } + + const [Get_3_Articles_api, setGet_3_Articles_api] = useState(); + const [Get_3_Articles_result, setGet_3_Articles_result] = useState([]); + function Get_3_Articles(e) { + var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_last_3_help_article/"; + var form = new FormData(); + form.append("internal_url", articleId); + form.append("token", ""); + // Ajout des info IP user + form.append("user_ip", IPv4); + form.append("user_country_code", country_code); + form.append("user_country_name", country_name); + form.append("user_city", city); + form.append("user_postal", postal); + form.append("user_latitude", latitude); + form.append("user_longitude", longitude); + form.append("user_state", state); - //console.log(" articleId = " + articleId); - }, []); + // console.log("#### form = ", form); + + axios.post(myurl, form).then(res => { + //console.log(" In Get_3_Articles res.data.status = " + res.data.status); + //console.log(" In Get_3_Articles res.data.message = " + res.data.message); + + if (String(res.data.status) === "true") { + + setGet_3_Articles_result(res.data.message); + + } + else { + //console.log(" In Erreur res.data.status = " + res.data.status); + //console.log(" In Erreur res.data.message = " + res.data.message); + setGet_3_Articles_result([]); + setGet_3_Articles_api("False"); + + } + }).catch((error) => { + console.warn('Not good man :( mysearchtext = '); + setGet_3_Articles_api("False"); + }) + } + + + const [display_alert_mysy, setdisplay_alert_mysy] = useState(""); + const [alert_message, setalert_message] = useState(""); + const [alert_type, setalert_type] = useState(""); + + function clear_alert_message() { + setalert_message(""); + } + function clear_alert_type() { + setalert_type(""); + } + + function clear_display_alert_mysy() { + setdisplay_alert_mysy(""); + } + + const relatedArticles = [ + { + id: 1, + title: "Optimiser le suivi qualité de vos actions de formation", + excerpt: + "Centralisez vos justificatifs, structurez vos preuves et gagnez en sérénité sur le suivi opérationnel.", + image: + "https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?auto=format&fit=crop&w=1400&q=80", + category: "Qualité", + date: "23 nov. 2024", + readTime: "6 min", + }, + { + id: 2, + title: "Dossier apprenant : les bonnes pratiques pour éviter les oublis", + excerpt: + "Les réflexes à mettre en place pour fiabiliser vos pièces, évaluations, attestations et documents clés.", + image: + "https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&w=1400&q=80", + category: "Conformité", + date: "20 nov. 2024", + readTime: "4 min", + }, + { + id: 3, + title: "Automatiser les relances sans dégrader l’expérience utilisateur", + excerpt: + "Des relances mieux pensées, mieux ciblées, et beaucoup moins bricolées entre trois outils et deux cafés.", + image: + "https://images.unsplash.com/photo-1521791136064-7986c2920216?auto=format&fit=crop&w=1400&q=80", + category: "Automatisation", + date: "18 nov. 2024", + readTime: "4 min", + }, + ]; + + return ( +
+ + {/*** Affichage des messages d'alerte*/} + {display_alert_mysy && String(display_alert_mysy) === "1" && + + } + {/*** FIN Affichage des messages d'alerte*/} + + + {`${pagecanoniktitle}`} + + + + + + + + {(!display_header_img || String(display_header_img) === "0") &&
+   +
} + + {display_header_img && String(display_header_img) !== "0" &&
+   +
} + +
+
+
+ + ← Retour au support + +

{DetailArticleAvis.title_formation}

- function Display(e) { +
+ Publié {(String(DetailArticleAvis.date_avis)).substring(0, 16)} + + Administratif +
- var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_articles_avis/"; - var form = new FormData(); - form.append("internal_url", articleId); - form.append("token", ""); - // Ajout des info IP user - form.append("user_ip", IPv4); - form.append("user_country_code", country_code); - form.append("user_country_name", country_name); - form.append("user_city", city); - form.append("user_postal", postal); - form.append("user_latitude", latitude); - form.append("user_longitude", longitude); - form.append("user_state", state); +
+
+ +
+
+
+
+ + {DetailArticleAvis && DetailArticleAvis.avis && <> {parse(DetailArticleAvis.avis)} } + + {article_tex_a_retenir && article_tex_a_retenir.length > 10 && +
+ À retenir : {article_tex_a_retenir} +
} +
+ + {article_video && article_video.length > 5 &&
+
- //alert("myurl = "+myurl); +
+ +
- axios.post(myurl, form).then(res => { - // console.log(" In test res.data.status = " + res.data.status); - //console.log(" In Display iiii res.data.message = " + res.data.message); - if (String(res.data.status) === "true") { - setmyApiResponse("True"); - - setResult(res.data.message); - setDetailArticleAvis(JSON.parse(res.data.message)); - - var my_avis = JSON.parse(res.data.message) - - if (my_avis && my_avis.display_header_img && String(my_avis.display_header_img) === "0") { - setdisplay_header_img("0") - } - - if (my_avis && my_avis.title_formation) { - setpagecanoniktitle(my_avis.title_formation); - } - - if (my_avis && my_avis.meta_description) { - setpage_meta_description(my_avis.meta_description); - } else { - setpage_meta_description(my_avis.title_formation); - } +
+ Elyos By MTT +
+
+
} - if (my_avis && my_avis.internal_url) { - setpagecanonikurl(my_avis.internal_url); +
- console.log(process.env.REACT_APP_BASE_URL + "/" + my_avis.internal_url); - } - - - if (my_avis && my_avis.img_path && String(my_avis.img_path).length > 10) { - setarticle_img(my_avis.img_path); - } else { - setarticle_img(img_met_digital); - } - - // console.log(" ### my_avis.display_header_img = ", my_avis.display_header_img); - } - else { - //console.log(" In Erreur res.data.status = " + res.data.status); - //console.log(" In Erreur res.data.message = " + res.data.message); - setmyApiResponse("False"); - } - }).catch((error) => { - console.warn('Not good man :( mysearchtext = '); - setmyApiResponse("False"); - }) - } - - const [Get_3_Articles_api, setGet_3_Articles_api] = useState(); - const [Get_3_Articles_result, setGet_3_Articles_result] = useState([]); - function Get_3_Articles(e) { - var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_last_3_articles/"; - var form = new FormData(); - form.append("internal_url", articleId); - form.append("token", ""); - // Ajout des info IP user - form.append("user_ip", IPv4); - form.append("user_country_code", country_code); - form.append("user_country_name", country_name); - form.append("user_city", city); - form.append("user_postal", postal); - form.append("user_latitude", latitude); - form.append("user_longitude", longitude); - form.append("user_state", state); - - - // console.log("#### form = ", form); - - axios.post(myurl, form).then(res => { - //console.log(" In Get_3_Articles res.data.status = " + res.data.status); - //console.log(" In Get_3_Articles res.data.message = " + res.data.message); - - if (String(res.data.status) === "true") { - - setGet_3_Articles_result(res.data.message); - - } - else { - //console.log(" In Erreur res.data.status = " + res.data.status); - //console.log(" In Erreur res.data.message = " + res.data.message); - setGet_3_Articles_result([]); - setGet_3_Articles_api("False"); - - } - }).catch((error) => { - console.warn('Not good man :( mysearchtext = '); - setGet_3_Articles_api("False"); - }) - } - - - const [display_alert_mysy, setdisplay_alert_mysy] = useState(""); - const [alert_message, setalert_message] = useState(""); - const [alert_type, setalert_type] = useState(""); - - function clear_alert_message() { - setalert_message(""); - } - function clear_alert_type() { - setalert_type(""); - } - - function clear_display_alert_mysy() { - setdisplay_alert_mysy(""); - } - - const relatedArticles = [ - { - id: 1, - title: "Optimiser le suivi qualité de vos actions de formation", - excerpt: - "Centralisez vos justificatifs, structurez vos preuves et gagnez en sérénité sur le suivi opérationnel.", - image: - "https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?auto=format&fit=crop&w=1400&q=80", - category: "Qualité", - date: "23 nov. 2024", - readTime: "6 min", - }, - { - id: 2, - title: "Dossier apprenant : les bonnes pratiques pour éviter les oublis", - excerpt: - "Les réflexes à mettre en place pour fiabiliser vos pièces, évaluations, attestations et documents clés.", - image: - "https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&w=1400&q=80", - category: "Conformité", - date: "20 nov. 2024", - readTime: "4 min", - }, - { - id: 3, - title: "Automatiser les relances sans dégrader l’expérience utilisateur", - excerpt: - "Des relances mieux pensées, mieux ciblées, et beaucoup moins bricolées entre trois outils et deux cafés.", - image: - "https://images.unsplash.com/photo-1521791136064-7986c2920216?auto=format&fit=crop&w=1400&q=80", - category: "Automatisation", - date: "18 nov. 2024", - readTime: "4 min", - }, - ]; - - return ( -
- - {/*** Affichage des messages d'alerte*/} - {display_alert_mysy && String(display_alert_mysy) === "1" && - - } - {/*** FIN Affichage des messages d'alerte*/} - - - {`${pagecanoniktitle}`} - - - - - - - - {(!display_header_img || String(display_header_img) === "0") &&
-   -
} - - {display_header_img && String(display_header_img) !== "0" &&
-   -
} - -
-
-
- - ← Retour au support - - - - -

{DetailArticleAvis.title_formation}

- -
- Publié {(String(DetailArticleAvis.date_avis)).substring(0, 16)} - - Lecture 6 min - - Administratif -
- - -
-
- -
-
-
-
- - {DetailArticleAvis && DetailArticleAvis.avis &&<> {parse(DetailArticleAvis.avis)} } - -
- À retenir : la signature électronique ne sert - pas seulement à signer plus vite. Elle sert surtout à signer - plus proprement, avec plus de sécurité et moins de friction - dans les parcours administratifs. -
-
- -
-
- - -
- {false ? ( -