import React, { useRef, useState, useEffect } from "react";
import TextField from '@mui/material/TextField';
import MenuItem from '@mui/material/MenuItem';
import 'react-confirm-alert/src/react-confirm-alert.css'; // Import css
import Button from '@mui/material/Button';
import axios from "axios";
import { getCookie, setCookie } from 'react-use-cookie';
import { useHistory } from "react-router-dom";
import CheckOut from "./CheckOut";
import { DataGrid, GridToolbar, frFR } from '@mui/x-data-grid';
import "react-draft-wysiwyg/dist/react-draft-wysiwyg.css";
import { Editor } from '@tinymce/tinymce-react';
import parse from 'html-react-parser';
import { FcViewDetails, FcDisapprove } from "react-icons/fc";
import 'react-tooltip/dist/react-tooltip.css'
import { Tooltip } from 'react-tooltip'
import add_plus from "../mysy_img/plus.png";
import excel_icone from "../mysy_img/excel_icone.png";
import participants from "../mysy_img/participants.png";
import fileDownload from 'js-file-download'
import Popup from 'reactjs-popup';
import 'reactjs-popup/dist/index.css';
import { FcCancel, FcApproval, FcAcceptDatabase, FcPrint } from "react-icons/fc";
import DatePicker from "react-datepicker";
import "react-datepicker/dist/react-datepicker.css";
import { format } from 'date-fns'
import moment from "moment";
import InputAdornment from '@mui/material/InputAdornment';
import { AiFillCloseCircle } from "react-icons/ai";
import Box from '@mui/material/Box';
import { Typography, LinearProgress } from '@mui/material';
import styled from 'styled-components';
import { CiTrash } from "react-icons/ci";
import { MdAddCircleOutline, MdRemoveCircleOutline } from "react-icons/md";
const DisplayPartnerSession = (props) => {
const history = useHistory();
const [submenu, setsubmenu] = useState("");
const [rowss, setRows] = useState([]);
const [actionmass_preinsc_val, setactionmass_preinsc_val] = useState();
const [one_SessionstartDateInscription, setone_SessionstartDateInscription] = useState();
const [one_SessionendDateInscription, setone_SessionendDateInscription] = useState();
const [one_SessionendDate, setone_SessionendDate] = useState();
const [one_SessionstartDate, setone_SessionstartDate] = useState();
const [one_urlpreview_certif, setone_urlpreview_certif] = useState();
const [one_field_contenu_ftion, setone_field_contenu_ftion] = useState("");
const filters = [
{ value: 'code_session', label: 'Code Session' },
{ value: 'class_title', label: 'Titre Formation' },
{ value: 'certif', label: 'Certification' }
]
const [selectedfilt1, setselectedfilt1] = useState("");
const [selectedfilt2, setselectedfilt2] = useState("");
const [selectedfilt3, setselectedfilt3] = useState("");
const [reftrainingtoupdate, setreftrainingtoupdate] = useState();
const [externalcodetraining_toupdate, setexternalcodetraining_toupdate] = useState();
const [updatetraining, setupdatetraining] = useState(false);
function Clearselectedfilt1() {
setselectedfilt1("");
}
function selectedFilter1(event) {
setselectedfilt1(event.value);
}
function selectedFilter2(event) {
setselectedfilt2(event.value);
}
function selectedFilter3(event) {
setselectedfilt3(event.value);
}
function CancelFiltre2(event) {
setselectedfilt2("");
}
function CancelFiltre3(event) {
setselectedfilt3("");
}
function closeTrainingForm() {
setupdatetraining(false);
}
const [selectedtraining, setselectedtraining] = useState([])
const BorderLinearProgress = styled(LinearProgress)(() => ({
height: "20px",
width: "60px",
borderRadius: "2px",
backgroundColor: " #ebf5fb",
"& .MuiLinearProgress-bar": {
backgroundColor: "#1bd900",
transition: "none",
transformOrigin: "left",
},
}));
const [datagrid_columns_size_model1, setdatagrid_columns_size_model1] = useState(200);
const [datagrid_columns_size_model2, setdatagrid_columns_size_model2] = useState(80);
const columns = [
{ field: 'id', headerName: 'id', hide: true },
{ field: 'class_internal_url', headerName: 'class_internal_url', hide: true },
{ field: 'code_session', headerName: 'Code session', hide: false, width: datagrid_columns_size_model1, },
{
field: 'statut', headerName: 'Statut', hide: false, width: datagrid_columns_size_model1,
valueFormatter: (params) => {
if (String(params.value) === "0")
return "Actif";
else if (String(params.value) === "1")
return "Inactif";
else
return "???";
},
},
{
field: 'etape', headerName: 'Etape', hide: false, width: datagrid_columns_size_model1,
valueFormatter: (params) => {
if (String(params.value) === "0")
return "Projet";
else if (String(params.value) === "1")
return "Planification";
else if (String(params.value) === "2")
return "Planifiée";
else if (String(params.value) === "3")
return "Terminée";
else if (String(params.value) === "4")
return "Facturée";
else if (String(params.value) === "-1")
return "Annulée";
else
return "???";
},
},
{ field: 'date_debut', headerName: 'Date debut', hide: false, width: datagrid_columns_size_model2, },
{ field: 'date_fin', headerName: 'Datefin', hideable: false, width: datagrid_columns_size_model2, },
{ field: 'distantiel', headerName: 'Distantiel', hideable: false, width: datagrid_columns_size_model2, },
{ field: 'presentiel', headerName: 'Presentiel', width: datagrid_columns_size_model2, },
{ field: 'formateur', headerName: 'Formateur', width: datagrid_columns_size_model1, hide: true, hideable: true, },
{ field: 'nb_participant', headerName: 'Nb Parti.', width: datagrid_columns_size_model2, align: "center", },
{
field: 'taux_replissage', headerName: 'Replissage', align: "center", width: datagrid_columns_size_model1,
align: "left",
renderCell: (params) => {
return (
<>
{`${(params?.row.taux_replissage * 100).toFixed(0)}%`}
>
);
},
},
{ field: 'nb_inscrit', headerName: 'Inscrits', width: datagrid_columns_size_model2, align: "center", hide: true, hideable: true, },
{ field: 'nb_preinscrit', headerName: 'Preinscrits', width: datagrid_columns_size_model2, align: "center", hide: true, hideable: true, },
{ field: 'prix_session', headerName: 'Prix', width: datagrid_columns_size_model2, align: "center", },
{ field: 'title', headerName: 'Formation', width: datagrid_columns_size_model1, align: "center", hide: true, hideable: true, },
{ field: 'domaine', headerName: 'Domaine', width: datagrid_columns_size_model1, align: "center", hide: true, hideable: true, },
{ field: 'duration', headerName: 'Durée', width: datagrid_columns_size_model2, align: "center", },
]
const columns_preinscrit = [
{ field: 'id', headerName: 'id', hide: true },
{ field: 'email', headerName: 'email', width: 200, hideable: false, flex: 1 },
{ field: 'nom', headerName: 'nom', width: 150, hide: false, editable: true },
{ field: 'prenom', headerName: 'prenom', width: 150, hide: false, editable: true },
{ field: 'employeur', headerName: 'Employeur', width: 200, hide: false, editable: true },
{ field: 'opco', headerName: 'Centre Opco', width: 150, hide: false, editable: true },
{ field: 'modefinancement', headerName: 'Financement', width: 150, hide: false, editable: true },
{ field: 'amount', headerName: 'Montant Formation', width: 150, type: 'number', hideable: false, flex: 1, editable: true },
{
field: "update", headerName: 'Mise à jour',
renderCell: (cellValues) => {
return (
{
handleClick_accept(event, cellValues);
}}
>
}
modal
nested
position="center center"
>
{close => (
×
MySy Information
{' '}
Confirmer la mise à jour des informations du stagiaire
{
handleClick_update_data(event, cellValues);
close();
}}> Valider
{
//console.log('modal closed ');
close();
}}
>
Annuler
)}
);
}
},
{
field: "valide", headerName: 'Valider',
renderCell: (cellValues) => {
return (
{
handleClick_accept(event, cellValues);
}}
>
}
modal
nested
position="center center"
>
{close => (
×
MySy Information
{' '}
En confirmant cette opération, l'inscription du stagiaire sera définitivement validée.
Il (le stagiaire) sera automatiquement notifié par email de la validation de son inscription.
Le stagiaire passera de l'onglet "préinscrit" vers l'onglet "inscription".
{
handleClick_accept(event, cellValues);
//console.log('modal closed ');
close();
}}> Valider
{
//console.log('modal closed ');
close();
}}
>
Annuler
)}
);
}
},
{
field: "refuse", headerName: 'Refuser',
renderCell: (cellValues) => {
return (
{
handleClick_refuse(event, cellValues);
}}
>
}
modal
nested
position="center center"
>
{close => (
×
MySy Information
{' '}
En confirmant cette opération, l'inscription du stagiaire sera refusée .
Il (le stagiaire) sera automatiquement notifié par email du refus de son inscription.
Motif du refus :
{
handleClick_refuse(event, cellValues);
//console.log('modal closed ');
close();
}}> Valider
{
//console.log('modal closed ');
close();
}}
>
Annuler
)}
);
}
},
{
field: "delete", headerName: 'Supprimer',
renderCell: (cellValues) => {
return (
{
handleClick_delete(event, cellValues);
}}
>
}
modal
nested
position="center center"
>
{close => (
×
MySy Information
{' '}
En confirmant cette opération, l'inscription du stagiaire sera définitivement supprimée .
{
handleClick_delete(event, cellValues);
//console.log('modal closed ');
close();
}}> Valider
{
//console.log('modal closed ');
close();
}}
>
Annuler
)}
);
}
}
]
const columns_inscrit = [
{ field: 'id', headerName: 'id', hide: true },
{ field: 'email', headerName: 'emails', width: 200, hideable: false, flex: 1, minWidth: 150, maxWidth: 300 },
{ field: 'nom', headerName: 'nom', width: 150, hide: false, editable: true, resizable: true },
{ field: 'prenom', headerName: 'prenom', width: 150, hide: false, editable: true },
{ field: 'employeur', headerName: 'Employeur', width: 200, hide: false, editable: true },
{ field: 'opco', headerName: 'Centre Opco', width: 150, hide: false, editable: true },
{ field: 'modefinancement', headerName: 'Financement', width: 150, hide: false, editable: true },
{ field: 'amount', headerName: 'Montant Formation', width: 150, type: 'number', hideable: false, flex: 1, editable: true },
{
field: "sendmail", headerName: 'Email Confirmation',
renderCell: (cellValues) => {
return (
{
handleClick_resend_conf_mail(event, cellValues);
}}
>
);
}
},
{
field: "Detail", headerName: 'Voir detail',
renderCell: (cellValues) => {
return (
{
Display_Detail_Inscription(event, cellValues);
}}
>
);
}
},
{
field: "Imprimer", headerName: 'Imprimer detail',
renderCell: (cellValues) => {
return (
{
Print_Detail_Inscription(event, cellValues);
}}
>
);
}
},
]
const [Getall_TrainingSession_api, setGetall_TrainingSession_api] = useState();
const [Getall_TrainingSession_message, setGetall_TrainingSession_message] = useState();
const [Getall_TrainingSession_result, setGetall_TrainingSession_result] = useState();
function Getall_TrainingSession(event) {
var form = new FormData();
// Recuperation des parametres
var filtre1 = p_filtre1;
var filtre2 = p_filtre2;
var filtre1_value = "";
var filtre2_value = "";
var filtre3_value = "";
// Recuperation des valeurs de filtres
if (p_filtre1_value) {
filtre1_value = p_filtre1_value;
form.append(filtre1, filtre1_value);
}
if (p_filtre2_value) {
filtre2_value = p_filtre2_value;
form.append(filtre2, filtre2_value);
}
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAllValideSessionPartner_List/";
// Verification s'il faut faire une recherche avec une option like.
//console.log(" p_filtre1 = ", p_filtre1, " filtre1_value = ", filtre1_value);
if (p_filtre1_value || p_filtre2_value) {
myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAllValideSessionPartner_List_filter_like/";
}
axios.post(myurl, form).then(res => {
if (String(res.data.status) === String("true")) {
//console.log(" In Getall_TrainingSession res.data.status = " + res.data.status);
//console.log(" In Getall_TrainingSession res.data.message r_class = " + res.data.message);
setGetall_TrainingSession_api("true");
setGetall_TrainingSession_result(res.data.message);
setRows(res.data.message);
}
else {
setGetall_TrainingSession_api("false");
setGetall_TrainingSession_message(res.data.message);
}
}).catch((error) => {
console.warn('Not good man :( Getall_TrainingSession = ', error);
setGetall_TrainingSession_api("false");
//setmyApimyApiMessage("")
})
}
function Getall_TrainingSession_no_filter(event) {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAllValideSessionPartner_List/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === String("true")) {
//console.log(" In Getall_TrainingSession res.data.status = " + res.data.status);
//console.log(" In Getall_TrainingSession res.data.message r_class = " + res.data.message);
setGetall_TrainingSession_api("true");
setGetall_TrainingSession_result(res.data.message);
setRows(res.data.message);
}
else {
setGetall_TrainingSession_api("false");
setGetall_TrainingSession_message(res.data.message);
}
}).catch((error) => {
console.warn('Not good man :( Getall_TrainingSession = ', error);
setGetall_TrainingSession_api("false");
//setmyApimyApiMessage("")
})
}
const [Edite_session, setEdite_session] = useState();
/* Envoi de l'envoi de l'email de confirmation de la validation de l'inscription */
function handleClick_edit_session(event, cellValues) {
var code_session = cellValues.row.code_session;
setselected_code_session(cellValues.row.code_session);
var internal_url = cellValues.row.class_internal_url;
setselected_internal_url(cellValues.row.class_internal_url);
setselected_class_title(cellValues.row.title);
setEdite_session("1");
submenu_detail_session();
GetCurrentSession(cellValues.row.code_session, cellValues.row.class_internal_url);
GetListePreinscrit(cellValues.row.code_session, cellValues.row.class_internal_url);
GetListeInscrit(cellValues.row.code_session, cellValues.row.class_internal_url);
}
function handleClick_edit_session_From_Line(selected_row_id) {
var line = JSON.parse(rowss[selected_row_id]);
var code_session = line.code_session;
setselected_code_session(line.code_session);
var internal_url = line.class_internal_url;
setselected_internal_url(line.class_internal_url);
setselected_class_title(line.title);
setEdite_session("1");
submenu_detail_session();
GetCurrentSession(line.code_session, line.class_internal_url);
GetListePreinscrit(line.code_session, line.class_internal_url);
GetListeInscrit(line.code_session, line.class_internal_url);
}
useEffect(() => {
GetCurrentPartnerClass();
Getall_TrainingSession();
GetAttestation_Certif();
let windowWidth = window.innerWidth;
if (windowWidth < 1001) {
setdatagrid_columns_size_model2(10);
}
}, [])
async function actionmass_preinsc_Traitemet() {
}
const [selectionModel, setSelectionModel] = React.useState([]);
const actionmass_preinsc = (event) => {
const value = event.target.value;
if (String(value) === "valider" || String(value) === "refuser") {
setactionmass_preinsc_val(value);
}
else {
setactionmass_preinsc_val();
}
}
function submenu_preinscrit() {
setsubmenu("preinscrit");
if (document.getElementById("preinscrit")) {
document.getElementById("preinscrit").style.backgroundColor = "#104277";
document.getElementById("preinscrit").style.color = "white";
}
if (document.getElementById("detail_session")) {
document.getElementById("detail_session").style.backgroundColor = "#d8edfc";
document.getElementById("detail_session").style.color = "black";
}
if (document.getElementById("inscrit")) {
document.getElementById("inscrit").style.backgroundColor = "#d8edfc";
document.getElementById("inscrit").style.color = "black";
}
}
function submenu_inscrit() {
setsubmenu("inscrit");
if (document.getElementById("inscrit")) {
document.getElementById("inscrit").style.backgroundColor = "#104277";
document.getElementById("inscrit").style.color = "white";
}
if (document.getElementById("detail_session")) {
document.getElementById("detail_session").style.backgroundColor = "#d8edfc";
document.getElementById("detail_session").style.color = "black";
}
if (document.getElementById("preinscrit")) {
document.getElementById("preinscrit").style.backgroundColor = "#d8edfc";
document.getElementById("preinscrit").style.color = "black";
}
}
async function submenu_detail_session() {
setsubmenu("detail_session");
await sleep(5);
if (!edit_session_form) {
desableSessionFields();
}
if (document.getElementById("detail_session")) {
document.getElementById("detail_session").style.backgroundColor = "#104277";
document.getElementById("detail_session").style.color = "white";
}
if (document.getElementById("inscrit")) {
document.getElementById("inscrit").style.backgroundColor = "#d8edfc";
document.getElementById("inscrit").style.color = "black";
}
if (document.getElementById("preinscrit")) {
document.getElementById("preinscrit").style.backgroundColor = "#d8edfc";
document.getElementById("preinscrit").style.color = "black";
}
}
function handleClickSessionManagement(event, cellValues) {
var code_session = cellValues.row.code_session;
setselected_code_session(cellValues.row.code_session);
var internal_url = cellValues.row.class_internal_url;
setselected_internal_url(cellValues.row.class_internal_url);
setselected_class_title(cellValues.row.title);
GetListePreinscrit(cellValues.row.code_session, cellValues.row.class_internal_url);
GetListeInscrit(cellValues.row.code_session, cellValues.row.class_internal_url);
}
const [selected_code_session, setselected_code_session] = useState();
const [selected_internal_url, setselected_internal_url] = useState();
const [selected_class_title, setselected_class_title] = useState();
const [one_selected_internal_url, setone_selected_internal_url] = useState();
const [liste_participants_file_change_api, setliste_participants_file_change_api] = useState();
const [liste_participants_file_change_result, setliste_participants_file_change_result] = useState();
const [liste_participants_file_change_message, setliste_participants_file_change_message] = useState();
const liste_participants_file_change = event => {
const fileUploaded = event.target.files[0];
let file_size = event.target.files[0].size;
let file_type = event.target.files[0].type;
//console.log("file_size = ",file_size," file_type = ",file_type);
if (file_size > 1000000) {
alert("Le fichier ne doit pas depasser un 1 Méga octets");
return;
}
setparticipant_file_name(event.target.files[0].name);
const formData = new FormData();
formData.append('File', fileUploaded);
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
const stored_cookie = getCookie('tokenmysypart');
formData.append("token", stored_cookie);
formData.append("session_id", selected_code_session);
formData.append("class_internal_url", selected_internal_url);
//console.log("token = " + stored_cookie);
fetch(
process.env.REACT_APP_API_URL + "myclass/api/AddStagiairetoClass_mass/",
{
method: 'POST',
body: formData,
}
)
.then((response) => response.json())
.then((result) => {
if (String(result['status']) === String("true")) {
//console.log('Success:', result['message']);
setliste_participants_file_change_result(result['message']);
setliste_participants_file_change_api("true");
GetListePreinscrit(selected_code_session, selected_internal_url);
GetListeInscrit(selected_code_session, selected_internal_url);
alert(" Les stagiaires ont été correctement importés");
submenu_inscrit();
} else if (String(result['status']) === String("Err_Connexion")) {
alert('Erreur: ' + result['message']);
history.push("/Connexion");
}
else {
setliste_participants_file_change_message(result['message']);
setliste_participants_file_change_api("false");
}
})
.catch((error) => {
console.error('Error:', error);
setliste_participants_file_change_api("false");
});
};
const [session_file_name, setsession_file_name] = useState();
function submenu_import_session() {
setsession_file_name();
setliste_sessions_file_change_api();
hiddenFileInput_session.current.click();
}
const hiddenFileInput_session = React.useRef(null);
const [addOneSession, setaddOneSession] = useState();
function submenu_add_one_session() {
setaddOneSession("1");
setEdite_session("0");
submenu_detail_session();
if (myRef.current) {
myRef.current.scrollIntoView({ behavior: "smooth" });
}
}
const [addOneParticipant, setaddOneParticipant] = useState();
function submenu_add_one_participant() {
setaddOneParticipant("1");
var myelement;
if (document.getElementById('ajout_participant')) {
myelement = document.getElementById('ajout_participant');
}
if (myelement) {
myelement.scrollIntoView({ behavior: 'smooth' });
}
}
function submenu_add_one_participant_inactif() {
alert(" Vous devez choisir une session.");
}
const [participant_file_name, setparticipant_file_name] = useState();
function submenu_import_participant() {
setparticipant_file_name();
setliste_participants_file_change_api();
hiddenFileInput.current.click();
}
const hiddenFileInput = React.useRef(null);
/* Recuperation de la liste des inscrits */
const [nb_stagiaire_Inscrit, setnb_stagiaire_Inscrit] = useState("0");
const [selectionModel_preinsc, setselectionModel_preinsc] = React.useState([]);
const [selectionModel_insc, setSelectionModel_insc] = React.useState([]);
const [rowss_insc, setRows_insc] = useState([]);
const [rowss_preinsc, setRows_preinsc] = useState([]);
const [GetListePreinscrit_insc_api, setGetListePreinscrit_insc_api] = useState();
const [GetListePreinscrit_insc_meassage, setGetListePreinscrit_insc_meassage] = useState();
const [GetListePreinscrit_insc_result, setGetListePreinscrit_insc_result] = useState([])
function GetListeInscrit(localsessionid, class_internal_url) {
clean_old_messages();
var form = new FormData();
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("class_internal_url", class_internal_url);
form.append("session_id", localsessionid);
form.append("status", "1");
/*
/!\ : Cette fonction a besoin d'un token actif
*/
if (String(stored_cookie) === String("")) {
alert(" La session n'est plus valide ");
history.push("/Connexion");
return;
}
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAllClassStagiaire/";
fetch(myurl,
{
method: 'POST',
body: form,
})
.then((data) => data.json())
.then((data) => {
//console.log(' GetListeInscrit : Success:', data['message'], "data['status'] = ", data['status']);
setGetListePreinscrit_insc_result(data['message']);
setRows_insc(data['message']);
if (String(data['status']) === String("true")) {
//console.log("erreur rrrr:" + data['status'])
setGetListePreinscrit_insc_api("true");
setnb_stagiaire_Inscrit(data['message'].length);
//console.log(" ### setnb_stagiaire_Inscrit = ", data['message'].length);
} else if (String(data['status']) === String("Err_Connexion")) {
alert('Erreur: ' + data['message']);
history.push("/Connexion");
}
else {
setGetListePreinscrit_insc_api("false");
}
}).catch((error) => {
console.error('Error:', error);
setGetListePreinscrit_insc_api("false");
});
}
const [liste_sessions_file_change_api, setliste_sessions_file_change_api] = useState();
const [liste_sessions_file_change_result, setliste_sessions_file_change_result] = useState();
const [liste_sessions_file_change_message, setliste_sessions_file_change_message] = useState();
const liste_sessions_file_change = event => {
clean_old_messages();
const fileUploaded = event.target.files[0];
let file_size = event.target.files[0].size;
let file_type = event.target.files[0].type;
//console.log("file_size = ",file_size," file_type = ",file_type);
if (file_size > 1000000) {
alert("Le fichier ne doit pas depasser un 1 Méga octets");
return;
}
setsession_file_name(event.target.files[0].name);
const formData = new FormData();
formData.append('File', fileUploaded);
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
const stored_cookie = getCookie('tokenmysypart');
formData.append("token", stored_cookie);
//console.log("token = " + stored_cookie);
fetch(
process.env.REACT_APP_API_URL + "myclass/api/Add_Update_SessionFormation_mass_for_many_class/",
{
method: 'POST',
body: formData,
}
)
.then((response) => response.json())
.then((result) => {
//console.log(" ## result['status'] = ", result['status'])
if (String(result['status']) === String("Err_Connexion")) {
alert('Erreur: ' + result['message']);
history.push("/Connexion");
}
else if (String(result['status']) === String("true")) {
//console.log('Success:', result['message']);
setliste_sessions_file_change_result(result['message']);
setliste_sessions_file_change_api("true");
GetCurrentClass_trainingsession();
//clearSessionFields();
Getall_TrainingSession();
alert(" Les sessions ont été correctement importées");
}
else {
setliste_sessions_file_change_message(result['message']);
setliste_sessions_file_change_api("false");
alert('Erreur: ' + result['message']);
}
})
.catch((error) => {
console.error('Error:', error);
setliste_sessions_file_change_api("false");
});
}
const [GetCurrentClass_trainingsession_api, setGetCurrentClass_trainingsession_api] = useState();
const [GetCurrentClass_trainingsession_message, setGetCurrentClass_trainingsession_message] = useState();
const [GetCurrentClass_trainingsession_result, setGetCurrentClass_trainingsession_result] = useState();
function GetCurrentClass_trainingsession(event) {
var form = new FormData();
form.append("class_internal_url", selected_internal_url);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAllValideSessionFormation_List/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === String("true")) {
//console.log(" In GetCurrentClass_trainingsession res.data.status = " + res.data.status);
//console.log(" In GetCurrentClass_trainingsession res.data.message r_class = " + res.data.message);
setGetCurrentClass_trainingsession_api("true");
setGetCurrentClass_trainingsession_result(res.data.message);
}
else {
setGetCurrentClass_trainingsession_api("false");
setGetCurrentClass_trainingsession_message(res.data.message);
}
}).catch((error) => {
console.warn('Not good man :( GetCurrentClass_trainingsession = ', error);
setGetCurrentClass_trainingsession_api("false");
//setmyApimyApiMessage("")
})
}
// Cette fonction nettoye les messages avant nouvelle action
function clean_old_messages() {
/*setResend_LMS_Credentials_api();
setResend_LMS_Credentials_message();
setliste_sessions_file_change_api();
setCreateSessionFormation_api();
setUpdateStagiaireData_api();
setSendInscriptionCancell_api();
setCreateListEmargement_api();
setActionMassListEmargement_api();
setliste_participants_file_change_api();
setSendEvaluationEmail_api();*/
}
const [nb_stagiaire_Preinscrit, setnb_stagiaire_Preinscrit] = useState("0");
const [GetListePreinscrit_api, setGetListePreinscrit_api] = useState();
const [GetListePreinscrit_meassage, setGetListePreinscrit_meassage] = useState();
const [GetListePreinscrit_result, setGetListePreinscrit_result] = useState([])
function GetListePreinscrit(localsessionid, class_internal_url) {
var form = new FormData();
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("class_internal_url", class_internal_url);
form.append("session_id", localsessionid);
form.append("status", "0");
//console.log(" ### localsessionid = ", localsessionid, " -- class_internal_url = ", class_internal_url);
/*
/!\ : Cette fonction a besoin d'un token actif
*/
if (String(stored_cookie) === String("")) {
alert(" La session n'est plus valide");
history.push("/Connexion");
return;
}
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAllClassStagiaire/";
fetch(myurl,
{
method: 'POST',
body: form,
})
.then((data) => data.json())
.then((data) => {
//console.log('GetListePreinscrit:', data['message'], "data['status'] = ", data['status']);
setGetListePreinscrit_result(data['message']);
setRows_preinsc(data['message']);
//console.log(" #### LENGHT GetListePreinscrit = ", data['message'].length);
if (String(data['status']) === String("Err_Connexion")) {
alert('Erreur: ' + data['message']);
history.push("/Connexion");
}
else if (String(data['status']) === String("true")) {
setGetListePreinscrit_api("true");
setnb_stagiaire_Preinscrit(data['message'].length);
//console.log(" ### setnb_stagiaire_Preinscrit = ", data['message'].length);
}
else {
//console.log("erreur rrrr:" + data['status'])
setGetListePreinscrit_api("false");
}
}).catch((error) => {
console.error('Error:', error);
setGetListePreinscrit_api("false");
});
}
const [One_Create_Participant_api, setOne_Create_Participant_api] = useState();
const [One_Create_Participant_message, setOne_Create_Participant_message] = useState();
const [One_Create_Participant_result, setOne_Create_Participant_result] = useState();
function One_Create_Participant() {
clean_old_messages();
var form = new FormData();
var nb_participant = "0";
var prix_session;
var one_nom_part = p_one_nom_part;
if (one_nom_part.trim() == "") {
alert(" Vous devez saisir le nom du participant");
return;
}
var one_prenom_part = p_one_prenom_part;
if (one_prenom_part.trim() == "") {
alert(" Vous devez saisir le prenom du participant");
return;
}
var one_email_part = p_one_email_part;
if (one_email_part.trim() == "") {
alert(" Vous devez saisir l'email du participant");
return;
}
var validRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;
if (!one_email_part.match(validRegex)) {
alert("L'adresse email est invalide.");
return;
}
var one_phone_part = p_one_phone_part
if (one_phone_part.trim() == "") {
alert(" Vous devez saisir le téléphone du participant");
return;
}
if (selected_code_session.trim() === "" || selected_internal_url.trim() === "") {
alert(" Vous devez selectionner une session d'abord");
return;
}
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("class_internal_url", selected_internal_url);
form.append("session_id", selected_code_session);
form.append("nom", one_nom_part);
form.append("prenom", one_prenom_part);
form.append("email", one_email_part);
form.append("telephone", one_phone_part);
form.append("status", myinscript_status);
form.append("modefinancement", "");
var myurl = process.env.REACT_APP_API_URL + "myclass/api/AddStagiairetoClass/";
axios.post(myurl, form).then(res => {
//console.log(" In One_Create_Participant res.data.status = " + res.data.status);
//console.log(" In One_Create_Participant res.data.message r_class = " + res.data.message);
if (String(res.data.status) === String("true")) {
setOne_Create_Participant_api("true");
setOne_Create_Participant_result(res.data.message);
alert(" Le participant a été correctement ajouté");
setaddOneParticipant("0");
//setreduction_session("1");
GetListePreinscrit(selected_code_session, selected_internal_url);
GetListeInscrit(selected_code_session, selected_internal_url);
submenu_inscrit();
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setOne_Create_Participant_api("false");
setOne_Create_Participant_message(res.data.message);
}
}).catch((error) => {
console.warn('One_Create_Participant : Not good man :( = ' + error);
setOne_Create_Participant_api("false");
})
}
const status_inscription = [
{
value: '1',
label: 'Inscription',
},
{
value: '0',
label: 'PréInscription',
},
];
const [myinscript_status, setmyinscript_status] = useState("");
const handleChangeInscription_Status = (event) => {
const name = event.target.name;
const value = event.target.value;
setmyinscript_status(value);
}
function One_annuleAdd_Participant() {
setaddOneParticipant("0");
var myelement;
if (document.getElementById('participant_menu_tab')) {
myelement = document.getElementById('participant_menu_tab');
}
if (myelement) {
myelement.scrollIntoView({ behavior: 'smooth' });
}
}
const [actionmass_insc_val, setactionmass_insc_val] = useState();
const actionmass_inscrit = (event) => {
const value = event.target.value;
if (String(value) === "confirmation" || String(value) === "impression" || String(value) === "annule inscription") {
setactionmass_insc_val(value);
}
else {
setactionmass_insc_val();
}
}
function GetSelectedRows_Insc_Ids() {
var tab_tmp = []
for (var i = 0; i < selectionModel_insc.length; i++) {
//console.log(" ### selectionModel_insc[i] = ", selectionModel_insc[i]);
var myid = parseInt(String(selectionModel_insc[i]));
//var line = JSON.parse(rowss[myid]);
tab_tmp.push(myid);
}
return tab_tmp;
}
const [SendInscriptionConfirmation_api, setSendInscriptionConfirmation_api] = useState();
const [SendInscriptionConfirmation_message, setSendInscriptionConfirmation_message] = useState();
const [SendInscriptionConfirmation_result, setSendInscriptionConfirmation_result] = useState();
function SendInscriptionConfirmation(email) {
clean_old_messages();
var form = new FormData();
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
if (selected_code_session.length <= 0) {
alert(" Vous devez choisir une session");
return;
}
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("class_internal_url", selected_internal_url);
form.append("session_id", selected_code_session);
form.append("email", email);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/SendInscriptionConfirmation/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === String("true")) {
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
setSendInscriptionConfirmation_api("true");
setSendInscriptionConfirmation_result(res.data.message);
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setSendInscriptionConfirmation_api("false");
setSendInscriptionConfirmation_message(res.data.message);
}
}).catch((error) => {
console.warn('SendInscriptionConfirmation : Not good man :( mysearchtext = ' + error);
setSendInscriptionConfirmation_api("false");
})
}
async function actionmass_insc_Traitemet() {
var liste_formation = GetSelectedRows_Insc_Ids();
for (var i = 0; i < liste_formation.length; i++) {
var line = JSON.parse(rowss_insc[liste_formation[i]]);
//console.log(" line = ", line);
var email = line.email;
//console.log(" Traitement de email = ", email);
if (String(actionmass_insc_val) === "confirmation") {
SendInscriptionConfirmation(email);
} else if (String(actionmass_insc_val) === "impression") {
//console.log(" impress mail = ", email);
DownloadAttendeeDetail_one(email);
} else if (String(actionmass_insc_val) === "annule inscription") {
//console.log(" impress mail = ", email);
SendInscriptionCancell(email);
}
await sleep(5);
}
setSelectionModel_insc([]);
setactionmass_insc_val();
GetListePreinscrit(selected_code_session, selected_internal_url);
GetListeInscrit(selected_code_session, selected_internal_url);
}
const sleep = (milliseconds) => {
return new Promise(resolve => setTimeout(resolve, milliseconds))
}
function DownloadAttendeeDetail_one(addendeeEmail) {
var trainer = ""
if (document.getElementsByName("formateur")[0])
trainer = document.getElementsByName("formateur")[0].value;
if (trainer == "") {
alert(" Aucun formateur pour cette session ");
return;
}
if (addendeeEmail == "") {
alert(" Aucun utilisateur choisi ");
return;
}
const stored_cookie = getCookie('tokenmysypart');
var nom_fiche_detaillee = "Fiche_Detaillee.pdf";
var url = process.env.REACT_APP_API_URL + "myclass/api/PrintAttendeeDetail_perSession/" + stored_cookie + "/" + selected_code_session + "/" + addendeeEmail + "/" + selected_internal_url;
axios.get(url, { responseType: 'blob', },)
.then((res) => {
fileDownload(res.data, nom_fiche_detaillee)
}).catch((error) => {
console.error('Error:', error);
});
}
const [DeleteStagiaireData_api, setDeleteStagiaireData_api] = useState();
const [DeleteStagiaireData_message, setDeleteStagiaireData_message] = useState();
const [DeleteStagiaireData_result, setDeleteStagiaireData_result] = useState();
function DeleteStagiaireData(nom, prenom, email) {
setSendInscriptionCancell_api();
var form = new FormData();
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
if (selected_code_session.length <= 0) {
alert(" Vous devez choisir une session");
return;
}
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("class_internal_url", selected_internal_url);
form.append("session_id", selected_code_session);
form.append("nom", nom);
form.append("prenom", prenom);
form.append("email", email);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/DeleteAttendeeInscription/";
axios.post(myurl, form).then(res => {
//console.log(" In DeleteStagiaireData res.data.status = " + res.data.status);
//console.log(" In DeleteStagiaireData res.data.message r_class = " + res.data.message);
if (String(res.data.status) === String("true")) {
setDeleteStagiaireData_api("true");
setDeleteStagiaireData_result(res.data.message);
GetListePreinscrit(selected_code_session, selected_internal_url);
GetListeInscrit(selected_code_session, selected_internal_url);
setretval_ch("1");
alert(" La mise à jour été correctement faite.")
}
else {
setDeleteStagiaireData_api("false");
setDeleteStagiaireData_message(res.data.message);
setretval_ch("-1");
alert(res.data.message);
}
}).catch((error) => {
console.warn('DeleteStagiaireData : Not good man :( mysearchtext = ' + error);
setDeleteStagiaireData_api("false");
setretval_ch("-1");
alert(" Impossible de supprimer le stagaire");
})
}
const [retval_ch, setretval_ch] = useState();
const [UpdateStagiaireData_api, setUpdateStagiaireData_api] = useState();
const [UpdateStagiaireData_message, setUpdateStagiaireData_message] = useState();
const [UpdateStagiaireData_result, setUpdateStagiaireData_result] = useState();
function UpdateStagiaireData(nom, prenom, email, status, price, opco, modefinancement, employeur, comment) {
setSendInscriptionCancell_api();
var form = new FormData();
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
if (selected_code_session.length <= 0) {
alert(" Vous devez choisir une session");
return;
}
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("class_internal_url", selected_internal_url);
form.append("session_id", selected_code_session);
form.append("nom", nom);
form.append("prenom", prenom);
form.append("email", email);
form.append("employeur", employeur);
form.append("status", status);
form.append("price", price);
form.append("opco", opco);
form.append("modefinancement", modefinancement);
form.append("comment", comment);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/UpdateStagiairetoClass/";
axios.post(myurl, form).then(res => {
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
if (String(res.data.status) === String("true")) {
setUpdateStagiaireData_api("true");
setUpdateStagiaireData_result(res.data.message);
GetListePreinscrit(selected_code_session, selected_internal_url);
GetListeInscrit(selected_code_session, selected_internal_url);
setretval_ch("1");
alert(" La mise à jour été correctement faite.")
}
else {
setUpdateStagiaireData_api("false");
setUpdateStagiaireData_message(res.data.message);
setretval_ch("-1");
}
}).catch((error) => {
console.warn('UpdateStagiaireData : Not good man :( mysearchtext = ' + error);
setUpdateStagiaireData_api("false");
setretval_ch("-1");
})
}
const [SendInscriptionCancell_api, setSendInscriptionCancell_api] = useState();
const [SendInscriptionCancell_message, setSendInscriptionCancell_message] = useState();
const [SendInscriptionCancell_result, setSendInscriptionCancell_result] = useState();
function SendInscriptionCancell(email) {
clean_old_messages();
setUpdateStagiaireData_api();
var form = new FormData();
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
if (selected_code_session.length <= 0) {
alert(" Vous devez choisir une session");
return;
}
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("class_internal_url", selected_internal_url);
form.append("session_id", selected_code_session);
form.append("email", email);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/CancelAttendeeInscription/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === String("true")) {
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
setSendInscriptionCancell_api("true");
setSendInscriptionCancell_result(res.data.message);
GetListePreinscrit(selected_code_session, selected_internal_url);
GetListeInscrit(selected_code_session, selected_internal_url);
submenu_inscrit();
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setSendInscriptionCancell_api("false");
setSendInscriptionCancell_message(res.data.message);
}
}).catch((error) => {
console.warn('SendInscriptionCancell : Not good man :( mysearchtext = ' + error);
setSendInscriptionCancell_api("false");
})
}
const [selectedattendeeemail, setselectedattendeeemail] = useState([])
function DownloadAttendeeAttestation(event) {
const stored_cookie = getCookie('tokenmysypart');
var nom_fiche_detaillee = "Attestation.pdf";
var url = process.env.REACT_APP_API_URL + "myclass/api/PrintAttendeeCertification/" + stored_cookie + "/" + selected_code_session + "/" + selectedattendeeemail + "/" + selected_internal_url;
axios.get(url, { responseType: 'blob', },)
.then((res) => {
fileDownload(res.data, nom_fiche_detaillee)
})
}
const datagridSx = {
borderRadius: 2,
marginRight: 1,
marginLeft: 1,
border: 0,
"& .MuiDataGrid-main": { borderRadius: 0 },
/*'& div[data-rowIndex][role="row"]:nth-of-type(5n-4)': {
color: "blue",
fontSize: 18,
//risky
minHeight: "60px !important",
height: 60,
"& div": {
minHeight: "60px !important",
height: 60,
lineHeight: "59px !important"
}
},*/
"& .MuiDataGrid-virtualScrollerRenderZone": {
"& .MuiDataGrid-row": {
"&:nth-child(2n)": { backgroundColor: "rgba(235, 235, 235, .7)" }
}
},
"& .MuiDataGrid-columnHeaders": {
backgroundColor: "#c8cfd5",
color: "black",
fontSize: 16
}
};
const editorRef_contenu_ftion = useRef(null);
const [editorRef_contenu_ftion_limite, seteditorRef_description_limite] = useState(800);
const one_editorRef_contenu_ftion = useRef(null);
const [one_editorRef_contenu_ftion_limite, setone_editorRef_description_limite] = useState(800);
const [field_contenu_ftion, setfield_contenu_ftion] = useState("");
function editor_contenu_ftion_keyup() {
setsessionChanged(true);
}
function one_editor_contenu_ftion_keyup() {
setsessionChanged(true);
}
function One_annuleSessionUpdate() {
One_clearSessionFields();
GetCurrentSession(selected_code_session);
setsessionChanged(false);
setCreateSessionFormation_api();
setCreateSessionFormation_message();
setone_CreateSessionFormation_api();
setone_CreateSessionFormation_message();
setone_CreateSessionFormation_result()
setaddOneSession();
}
let [sessionStatus, setsessionStatus] = useState(false);
let [sessionChanged, setsessionChanged] = useState(false);
function desableSessionFields() {
setedit_session_form(false);
document.getElementsByName("myclass_title")[0].disabled = true;
document.getElementsByName("myclass_title")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("code_session")[0].disabled = true;
document.getElementsByName("code_session")[0].style.backgroundColor = "#ECEFF1";
if (document.getElementsByName("session_status")[0]) {
document.getElementsByName("session_status")[0].disabled = true;
document.getElementsByName("session_status")[0].style.backgroundColor = "#ECEFF1";
}
if (document.getElementsByName("session_etape")[0]) {
document.getElementsByName("session_etape")[0].disabled = true;
document.getElementsByName("session_etape")[0].style.backgroundColor = "#ECEFF1";
}
document.getElementsByName("sessiondatedebut")[0].disabled = true;
document.getElementsByName("sessiondatedebut")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("sessiondatefin")[0].disabled = true;
document.getElementsByName("sessiondatefin")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("adresse")[0].disabled = true;
document.getElementsByName("adresse")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("code_postal")[0].disabled = true;
document.getElementsByName("code_postal")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("ville")[0].disabled = true;
document.getElementsByName("ville")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("formateur")[0].disabled = true;
document.getElementsByName("formateur")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("lms_class_code")[0].disabled = true;
document.getElementsByName("lms_class_code")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("nb_participant")[0].disabled = true;
document.getElementsByName("nb_participant")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("prix_session")[0].disabled = true;
document.getElementsByName("prix_session")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("session_ondemande")[0].disabled = true;
document.getElementsByName("session_ondemande")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("presentiel")[0].disabled = true;
document.getElementsByName("presentiel")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("distantiel")[0].disabled = true;
document.getElementsByName("distantiel")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("sessiondatedebutinscription")[0].disabled = true;
document.getElementsByName("sessiondatedebutinscription")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("sessiondatefininscription")[0].disabled = true;
document.getElementsByName("sessiondatefininscription")[0].style.backgroundColor = "#ECEFF1";
setfields1desabled(true);
}
let [edit_session_form, setedit_session_form] = useState(false);
function enableSessionFields() {
setedit_session_form(true);
document.getElementsByName("code_session")[0].disabled = false;
document.getElementsByName("code_session")[0].style.backgroundColor = "#FFFFFF";
if (document.getElementsByName("session_status")[0]) {
document.getElementsByName("session_status")[0].disabled = false;
document.getElementsByName("session_status")[0].style.backgroundColor = "#FFFFFF";
}
if (document.getElementsByName("session_etape")[0]) {
document.getElementsByName("session_etape")[0].disabled = false;
document.getElementsByName("session_etape")[0].style.backgroundColor = "#FFFFFF";
}
document.getElementsByName("sessiondatedebut")[0].disabled = false;
document.getElementsByName("sessiondatedebut")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("sessiondatefin")[0].disabled = false;
document.getElementsByName("sessiondatefin")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("adresse")[0].disabled = false;
document.getElementsByName("adresse")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("code_postal")[0].disabled = false;
document.getElementsByName("code_postal")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("ville")[0].disabled = false;
document.getElementsByName("ville")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("lms_class_code")[0].disabled = false;
document.getElementsByName("lms_class_code")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("formateur")[0].disabled = false;
document.getElementsByName("formateur")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("nb_participant")[0].disabled = false;
document.getElementsByName("nb_participant")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("prix_session")[0].disabled = false;
document.getElementsByName("prix_session")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("session_ondemande")[0].disabled = false;
document.getElementsByName("session_ondemande")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("presentiel")[0].disabled = false;
document.getElementsByName("presentiel")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("distantiel")[0].disabled = false;
document.getElementsByName("distantiel")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("sessiondatedebutinscription")[0].disabled = false;
document.getElementsByName("sessiondatedebutinscription")[0].style.backgroundColor = "#FFFFFF";
document.getElementsByName("sessiondatefininscription")[0].disabled = false;
document.getElementsByName("sessiondatefininscription")[0].style.backgroundColor = "#FFFFFF ";
setfields1desabled(false);
}
function clearSessionFields() {
if (document.getElementsByName("sessiondatedebut")[0])
document.getElementsByName("code_session")[0].value = "";
if (document.getElementsByName("sessiondatedebut")[0])
document.getElementsByName("sessiondatedebut")[0].value = "";
if (document.getElementsByName("sessiondatefin")[0])
document.getElementsByName("sessiondatefin")[0].value = "";
if (document.getElementsByName("session_status")[0])
document.getElementsByName("session_status")[0].value = "";
if (document.getElementsByName("session_etape")[0])
document.getElementsByName("session_etape")[0].value = "";
if (document.getElementsByName("adresse")[0])
document.getElementsByName("adresse")[0].value = "";
if (document.getElementsByName("code_postal")[0])
document.getElementsByName("code_postal")[0].value = "";
if (document.getElementsByName("ville")[0])
document.getElementsByName("ville")[0].value = "";
if (document.getElementsByName("nb_participant")[0])
document.getElementsByName("nb_participant")[0].value = "";
if (document.getElementsByName("prix_session")[0])
document.getElementsByName("prix_session")[0].value = "";
if (document.getElementsByName("presentiel")[0])
document.getElementsByName("presentiel")[0].value = "";
if (document.getElementsByName("session_ondemande")[0])
document.getElementsByName("session_ondemande")[0].value = "";
if (document.getElementsByName("distantiel")[0])
document.getElementsByName("distantiel")[0].value = "";
if (document.getElementsByName("sessiondatedebutinscription")[0])
document.getElementsByName("sessiondatedebutinscription")[0].value = "";
if (document.getElementsByName("sessiondatefininscription")[0])
document.getElementsByName("sessiondatefininscription")[0].value = "";
setSessionstartDateInscription();
setSessionendDateInscription();
setSessionendDate();
setSessionstartDate();
seturlpreview_certif();
setfield_contenu_ftion();
setp_myclass_title();
setp_code_session();
setp_adresse();
setp_ville();
setp_formateur();
setp_lms_class_code();
setp_nb_participant();
setp_prix_session();
setp_session_etape_label();
setp_session_etape();
setp_session_status_label();
setp_session_status();
setp_session_presentiel_label();
setp_session_presentiel();
setp_session_distance_label();
setp_session_distance();
setp_session_ondemande_label();
setp_session_ondemande();
}
function One_clearSessionFields() {
document.getElementsByName("one_code_session")[0].value = "";
document.getElementsByName("one_sessiondatedebut")[0].value = "";
document.getElementsByName("one_sessiondatefin")[0].value = "";
if (document.getElementsByName("one_adresse")[0])
document.getElementsByName("one_adresse")[0].value = "";
if (document.getElementsByName("one_code_postal")[0])
document.getElementsByName("one_code_postal")[0].value = "";
if (document.getElementsByName("one_ville")[0])
document.getElementsByName("one_ville")[0].value = "";
if (document.getElementsByName("one_nb_participant")[0])
document.getElementsByName("one_nb_participant")[0].value = "";
if (document.getElementsByName("one_prix_session")[0])
document.getElementsByName("one_prix_session")[0].value = "";
if (document.getElementsByName("one_presentiel")[0])
document.getElementsByName("one_presentiel")[0].value = "";
if (document.getElementsByName("one_session_ondemande")[0])
document.getElementsByName("one_session_ondemande")[0].value = "";
if (document.getElementsByName("one_distantiel")[0])
document.getElementsByName("one_distantiel")[0].value = "";
if (document.getElementsByName("one_sessiondatedebutinscription")[0])
document.getElementsByName("one_sessiondatedebutinscription")[0].value = "";
if (document.getElementsByName("one_sessiondatefininscription")[0])
document.getElementsByName("one_sessiondatefininscription")[0].value = "";
setone_SessionstartDateInscription();
setone_SessionendDateInscription();
setone_SessionendDate();
setone_SessionstartDate();
setone_urlpreview_certif();
setone_field_contenu_ftion();
}
const [is_lms_class_code, setis_lms_class_code] = useState();
const [CreateSessionFormation_api, setCreateSessionFormation_api] = useState();
const [CreateSessionFormation_message, setCreateSessionFormation_message] = useState();
const [CreateSessionFormation_result, setCreateSessionFormation_result] = useState();
function CreateSessionFormation() {
clean_old_messages();
var form = new FormData();
var nb_participant = "0";
var prix_session;
if (selected_internal_url.trim() == "") {
alert(" Vous devez choisir une formation ");
return;
}
if (!p_session_etape) {
alert(" Vous devez choisir une étape");
return;
}
if (selected_code_session.length <= 0) {
alert(" Vous devez choisir une session");
return;
}
var new_code_session = ""
if (document.getElementById("code_session") && document.getElementById("code_session").value != "") {
new_code_session = document.getElementById("code_session").value;
}
if (new_code_session.trim() == "") {
alert(" Le code session est obligatoire");
return;
}
nb_participant = ""
if (document.getElementById("nb_participant") && document.getElementById("nb_participant").value != "") {
nb_participant = document.getElementById("nb_participant").value;
}
if (nb_participant.trim() == "") {
alert(" Le nombre de participants est obligatoire");
return;
}
prix_session = ""
if (document.getElementById("prix_session") && document.getElementById("prix_session").value != "") {
prix_session = document.getElementById("prix_session").value;
}
if (prix_session.trim() == "") {
alert(" Le prix de la session est vide");
return;
}
var session_ondemande = p_session_ondemande
var presentiel = p_session_presentiel
if (presentiel.trim() == "") {
alert(" Vous devez preciser si la session est en présentiel");
return;
}
var distantiel = p_session_distance
if (distantiel.trim() == "") {
alert(" Vous devez preciser si la session est en distantiel");
return;
}
if (String(document.getElementById("sessiondatedebutinscription").value).trim() == "") {
alert(" La date de debut des inscriptions est obligatoire");
return;
}
if (String(document.getElementById("sessiondatefininscription").value).trim() == "") {
alert(" La date de fin des inscriptions est obligatoire");
return;
}
var adress = "";
if (document.getElementById("adresse") && document.getElementById("adresse").value != "")
adress = document.getElementById("adresse").value;
var codepostal = "";
if (document.getElementById("code_postal") && document.getElementById("code_postal").value != "")
codepostal = document.getElementById("code_postal").value;
var ville = "";
if (document.getElementById("ville") && document.getElementById("ville").value != "")
ville = document.getElementById("ville").value;
var code_session = "";
if (document.getElementById("code_session") && document.getElementById("code_session").value != "")
code_session = document.getElementById("code_session").value;
var formateur = "";
if (document.getElementById("formateur") && document.getElementById("formateur").value != "")
formateur = document.getElementById("formateur").value;
var lms_class_code = "";
if (document.getElementById("lms_class_code") && document.getElementById("lms_class_code").value != "") {
lms_class_code = document.getElementById("lms_class_code").value;
}
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("session_id", GetCurrentSession_id);
form.append("class_internal_url", selected_internal_url);
form.append("formation_session_id", new_code_session);
form.append("date_debut", format(SessionstartDate, 'dd/MM/yyyy kk:mm:ss'));
form.append("date_fin", format(SessionendDate, 'dd/MM/yyyy kk:mm:ss'));
form.append("prix_session", prix_session);
form.append("nb_participant", nb_participant);
form.append("session_ondemande", session_ondemande);
form.append("presentiel", presentiel);
form.append("distantiel", distantiel);
form.append("adresse", adress);
form.append("code_postal", codepostal);
form.append("ville", ville);
form.append("code_session", code_session);
form.append("formateur", formateur);
form.append("lms_class_code", lms_class_code);
form.append("date_debut_inscription", format(SessionstartDateInscription, 'dd/MM/yyyy kk:mm:ss'));
form.append("date_fin_inscription", format(SessionendDateInscription, 'dd/MM/yyyy kk:mm:ss'));
form.append("attestation_certif", selectedCertif);
form.append("session_status", p_session_status);
form.append("session_etape", p_session_etape);
var contenu_ftion = "";
if (editorRef_contenu_ftion.current) {
contenu_ftion = editorRef_contenu_ftion.current.getContent();
if (parse(contenu_ftion.replace(/(<([^>]+)>)/ig, '')).length > editorRef_contenu_ftion_limite) {
alert(" Champ 'Contenu de la formation', limite depassée !")
return;
}
}
form.append("contenu_ftion", contenu_ftion);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Update_SessionFormation/";
axios.post(myurl, form).then(res => {
//console.log(" In CreateSessionFormation res.data.status = " + res.data.status);
//console.log(" In CreateSessionFormation res.data.message r_class = " + res.data.message);
if (String(res.data.status) === String("true")) {
setCreateSessionFormation_api("true");
setCreateSessionFormation_result(res.data.message);
setsessionChanged(false);
desableSessionFields();
Getall_TrainingSession();
GetCurrentSession(selected_code_session, selected_internal_url);
alert(String(res.data.message));
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setCreateSessionFormation_api("false");
setCreateSessionFormation_message(res.data.message);
alert("Erreur : " + String(res.data.message));
}
}).catch((error) => {
console.warn('CreateSessionFormation : Not good man :( mysearchtext = ' + error);
setCreateSessionFormation_api("false");
alert(" Impossible de mettre à jour la session");
})
}
const [one_CreateSessionFormation_api, setone_CreateSessionFormation_api] = useState();
const [one_CreateSessionFormation_message, setone_CreateSessionFormation_message] = useState();
const [one_CreateSessionFormation_result, setone_CreateSessionFormation_result] = useState();
function One_CreateSessionFormation() {
clean_old_messages();
var form = new FormData();
var one_myclass_title = ""
if (document.getElementsByName("one_myclass_title")[0] && document.getElementsByName("one_myclass_title")[0].value != "") {
one_myclass_title = document.getElementsByName("one_myclass_title")[0].value;
}
if (one_myclass_title.trim() == "") {
alert(" Vous devez choisir une formation ");
return;
}
code_session = p_one_nb_participant
if (code_session.trim() == "") {
alert(" Vous devez saisir un code session");
return;
}
var nb_participant = ""
if (document.getElementById("one_nb_participant") && document.getElementById("one_nb_participant").value != "") {
nb_participant = document.getElementById("one_nb_participant").value;
}
if (nb_participant.trim() == "") {
const response = window.confirm("Le nombre de participants est vide. Continuer ?");
if (!response) {
return;
}
}
var prix_session = p_one_prix_session
var one_session_ondemande = p_one_session_ondemande
var presentiel = p_one_session_presentiel;
if (presentiel.trim() === "") {
const response = window.confirm(" Vous devez preciser si la session est en présentiel. Continuer ?");
if (!response) {
return;
}
}
var distantiel = p_one_session_distance;
if (distantiel.trim() == "") {
const response = window.confirm(" Vous devez preciser si la session est en distantiel. Continuer ?");
if (!response) {
return;
}
}
if (String(document.getElementById("one_sessiondatedebut").value).trim() == "") {
window.alert("La date de debut de session est obligatoire.");
return;
}
if (String(document.getElementById("one_sessiondatefin").value).trim() == "") {
window.alert(" La date de fin de session est obligatoire.");
return;
}
if (String(document.getElementById("one_sessiondatedebutinscription").value).trim() == "") {
window.alert("La date de debut des inscriptions est obligatoire. Continuer ?");
return;
}
if (String(document.getElementById("one_sessiondatefininscription").value).trim() == "") {
window.alert(" La date de fin des inscriptions est obligatoire");
return;
}
var adress = "";
if (document.getElementById("one_adresse") && document.getElementById("one_adresse").value != "")
adress = document.getElementById("one_adresse").value;
var codepostal = "";
if (document.getElementById("one_code_postal") && document.getElementById("one_code_postal").value != "")
codepostal = document.getElementById("one_code_postal").value;
var ville = "";
if (document.getElementById("one_ville") && document.getElementById("one_ville").value != "")
ville = document.getElementById("one_ville").value;
var code_session = "";
if (document.getElementById("one_code_session") && document.getElementById("one_code_session").value != "")
code_session = document.getElementById("one_code_session").value;
var formateur = "";
if (document.getElementById("one_formateur") && document.getElementById("one_formateur").value != "")
formateur = document.getElementById("one_formateur").value;
var lms_class_code = "";
if (document.getElementById("one_lms_class_code") && document.getElementById("one_lms_class_code").value != "") {
lms_class_code = document.getElementById("one_lms_class_code").value;
}
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("code_session", p_one_code_session);
form.append("class_internal_url", one_selected_internal_url);
form.append("date_debut", format(one_SessionstartDate, 'dd/MM/yyyy kk:mm:ss'));
form.append("date_fin", format(one_SessionendDate, 'dd/MM/yyyy kk:mm:ss'));
form.append("prix_session", p_one_prix_session);
form.append("nb_participant", p_one_nb_participant);
form.append("session_ondemande", p_one_session_ondemande);
form.append("presentiel", p_one_session_presentiel);
form.append("distantiel", p_one_session_distance);
form.append("adresse", p_one_adresse);
form.append("code_postal", p_one_code_postal);
form.append("ville", p_one_ville);
form.append("formateur", p_one_formateur);
form.append("lms_class_code", p_one_lms_class_code);
form.append("session_status", p_one_session_status);
form.append("date_debut_inscription", format(one_SessionstartDateInscription, 'dd/MM/yyyy kk:mm:ss'));
form.append("date_fin_inscription", format(one_SessionendDateInscription, 'dd/MM/yyyy kk:mm:ss'));
form.append("attestation_certif", one_selectedCertif);
var contenu_ftion = "";
if (one_editorRef_contenu_ftion.current) {
contenu_ftion = one_editorRef_contenu_ftion.current.getContent();
if (parse(contenu_ftion.replace(/(<([^>]+)>)/ig, '')).length > one_editorRef_contenu_ftion_limite) {
alert(" Champ 'Contenu de la formation', limite depassée !")
return;
}
}
form.append("contenu_ftion", contenu_ftion);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Update_SessionFormation/";
axios.post(myurl, form).then(res => {
//console.log(" In One_CreateSessionFormation res.data.status = " + res.data.status);
//console.log(" In One_CreateSessionFormation res.data.message r_class = " + res.data.message);
if (String(res.data.status) === String("true")) {
setone_CreateSessionFormation_api("true");
setone_CreateSessionFormation_result(res.data.message);
setsessionChanged(false);
Getall_TrainingSession();
alert(res.data.message);
One_clearSessionFields();
setaddOneSession();
GetCurrentSession(p_one_code_session, one_selected_internal_url);
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setone_CreateSessionFormation_api("false");
setone_CreateSessionFormation_message(res.data.message);
alert("Erreur : " + res.data.message);
}
}).catch((error) => {
console.warn('One_CreateSessionFormation : Not good man :( = ' + error);
setone_CreateSessionFormation_api("false");
alert("Erreur : Impossible d'ajouter la session");
})
}
let [fields1desabled, setfields1desabled] = useState(true);
const [detailuser_date_inscription, setdetailuser_date_inscription] = useState();
const [detailuser_date_evaluation, setdetailuser_date_evaluation] = useState();
const [detailuser_date_certification, setdetailuser_date_certification] = useState();
const [SessionstartDateInscription, setSessionstartDateInscription] = useState();
const [urlpreview_certif, seturlpreview_certif] = useState();
function handleChangeselectedCertif(event) {
var val = event.target.value
//console.log(val);
GetSpecificAttestation_Certif(val)
setselectedCertif(val);
//seturlpreview_certif(val[1]);
}
function handleChangeone_selectedCertif(event) {
var val = event.target.value
//console.log(val);
GetSpecificAttestation_Certif(val)
setone_selectedCertif(val);
//seturlpreview_certif(val[1]);
}
const [p_session_ondemande, setp_session_ondemande] = useState("0");
const [p_session_ondemande_label, setp_session_ondemande_label] = useState("");
const [p_session_distance, setp_session_distance] = useState("0");
const [p_session_distance_label, setp_session_distance_label] = useState("");
const [p_session_presentiel, setp_session_presentiel] = useState("0");
const [p_session_presentiel_label, setp_session_presentiel_label] = useState("");
const [p_session_status, setp_session_status] = useState();
const [p_session_status_label, setp_session_status_label] = useState();
const [p_session_etape, setp_session_etape] = useState();
const [p_session_etape_label, setp_session_etape_label] = useState();
const [GetCurrentSession_id, setGetCurrentSession_id] = useState();
const [GetCurrentSession_api, setGetCurrentSession_api] = useState();
const [GetCurrentSession_message, setGetCurrentSession_message] = useState();
const [GetCurrentSession_result, setGetCurrentSession_result] = useState();
function GetCurrentSession(local_session_id, local_selected_internal_url) {
clean_old_messages();
clearSessionFields();
var form = new FormData();
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("class_internal_url", local_selected_internal_url);
form.append("code_session", local_session_id);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetSessionFormation/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === "true") {
//console.log(" In GetCurrentSession res.data.status = " + res.data.status);
//console.log(" In GetCurrentSession res.data.message r_class = " + res.data.message);
//console.log(" In GetCurrentSession res.data.message len = " + String(res.data.message).length);
setGetCurrentSession_api("true");
if (String(res.data.message).length > 0) {
setGetCurrentSession_result(res.data.message);
var mylocaltraining = JSON.parse(res.data.message);
if (mylocaltraining._id) {
setGetCurrentSession_id(mylocaltraining._id);
}
if (mylocaltraining.session_status) {
setp_session_status(mylocaltraining.session_status);
if (String(mylocaltraining.session_status) === "1")
setp_session_status_label("Actif");
else
setp_session_status_label("Inactif");
}
if (mylocaltraining.session_etape) {
setp_session_etape(mylocaltraining.session_etape);
if (String(mylocaltraining.session_etape) === "0")
setp_session_etape_label("Projet");
else if (String(mylocaltraining.session_etape) === "1")
setp_session_etape_label("Planification");
else if (String(mylocaltraining.session_etape) === "2")
setp_session_etape_label("Planifiée");
else if (String(mylocaltraining.session_etape) === "3")
setp_session_etape_label("Terminée");
else if (String(mylocaltraining.session_etape) === "4")
setp_session_etape_label("Facturée");
else if (String(mylocaltraining.session_etape) === "-1")
setp_session_etape_label("Annulée");
}
if (mylocaltraining.date_debut) {
var date_du = new Date(moment(mylocaltraining.date_debut, "DD/MM/YYYY HH:mm:ss"));
setSessionstartDate(date_du);
}
if (mylocaltraining.date_fin) {
var date_fin = new Date(moment(mylocaltraining.date_fin, "DD/MM/YYYY HH:mm:ss"));
setSessionendDate(date_fin);
}
if (mylocaltraining.date_debut_inscription) {
var date_du_inscript = new Date(moment(mylocaltraining.date_debut_inscription, "DD/MM/YYYY HH:mm:ss"));
setSessionstartDateInscription(date_du_inscript);
}
if (mylocaltraining.date_fin_inscription) {
var date_fin_inscript = new Date(moment(mylocaltraining.date_fin_inscription, "DD/MM/YYYY HH:mm:ss"));
setSessionendDateInscription(date_fin_inscript);
}
if (mylocaltraining.attestation_certif) {
setselectedCertif(mylocaltraining.attestation_certif);
GetSpecificAttestation_Certif(mylocaltraining.attestation_certif);
}
document.getElementsByName("myclass_title")[0].value = "";
if (mylocaltraining.myclass[0].title)
setp_myclass_title(mylocaltraining.myclass[0].title);
document.getElementsByName("code_session")[0].value = "";
if (mylocaltraining.code_session)
setp_code_session(mylocaltraining.code_session);
document.getElementsByName("nb_participant")[0].value = "";
if (mylocaltraining.nb_participant)
setp_nb_participant(mylocaltraining.nb_participant);
document.getElementsByName("prix_session")[0].value = "";
if (mylocaltraining.prix_session)
setp_prix_session(mylocaltraining.prix_session);
if (mylocaltraining.distantiel) {
setp_session_distance(mylocaltraining.distantiel);
if (String(mylocaltraining.distantiel) === "1")
setp_session_distance_label("Oui");
else
setp_session_distance_label("Non")
}
if (mylocaltraining.session_ondemande) {
setp_session_ondemande(mylocaltraining.session_ondemande);
if (String(mylocaltraining.session_ondemande) === "1")
setp_session_ondemande_label("Oui");
else
setp_session_ondemande_label("Non")
}
if (mylocaltraining.presentiel) {
setp_session_presentiel(mylocaltraining.presentiel);
if (String(mylocaltraining.presentiel) === "1")
setp_session_presentiel_label("Oui");
else
setp_session_presentiel_label("Non")
}
if (mylocaltraining.contenu_ftion)
setfield_contenu_ftion(mylocaltraining.contenu_ftion);
document.getElementsByName("adresse")[0].value = "";
if (mylocaltraining.adresse)
setp_adresse(mylocaltraining.adresse);
document.getElementsByName("ville")[0].value = "";
if (mylocaltraining.ville) {
setp_ville(mylocaltraining.ville);
}
document.getElementsByName("formateur")[0].value = "";
if (mylocaltraining.formateur) {
setp_formateur(mylocaltraining.formateur);
}
document.getElementsByName("lms_class_code")[0].value = "";
if (mylocaltraining.lms_class_code) {
setis_lms_class_code(mylocaltraining.lms_class_code);
}
document.getElementsByName("code_postal")[0].value = "";
if (mylocaltraining.code_postal)
setp_code_postal(mylocaltraining.code_postal);
if (String(mylocaltraining.session_status) === "true")
setsessionStatus(true);
else if (String(mylocaltraining.session_status) === "false")
setsessionStatus(false);
desableSessionFields();
}
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setGetCurrentSession_api("false");
setGetCurrentSession_message(res.data.message);
alert("Erreur : " + res.data.message);
}
}).catch((error) => {
console.warn('Not good man :( GetCurrentSession = ', error);
setGetCurrentSession_api("false");
})
}
const [p_myclass_title, setp_myclass_title] = useState("");
const [p_code_session, setp_code_session] = useState("");
const [p_adresse, setp_adresse] = useState("");
const [p_code_postal, setp_code_postal] = useState("");
const [p_ville, setp_ville] = useState("");
const [p_formateur, setp_formateur] = useState("");
const [p_lms_class_code, setp_lms_class_code] = useState("");
const [p_nb_participant, setp_nb_participant] = useState("");
const [p_prix_session, setp_prix_session] = useState("");
const [p_one_myclass_title, setp_one_myclass_title] = useState("");
const [p_one_code_session, setp_one_code_session] = useState("");
const [p_one_adresse, setp_one_adresse] = useState("");
const [p_one_code_postal, setp_one_code_postal] = useState("");
const [p_one_ville, setp_one_ville] = useState("");
const [p_one_formateur, setp_one_formateur] = useState("");
const [p_one_lms_class_code, setp_one_lms_class_code] = useState("");
const [p_one_nb_participant, setp_one_nb_participant] = useState("");
const [p_one_prix_session, setp_one_prix_session] = useState("");
const [p_one_session_ondemande, setp_one_session_ondemande] = useState("0");
const [p_one_session_ondemande_label, setp_one_session_ondemande_label] = useState("");
const [p_one_session_distance, setp_one_session_distance] = useState("0");
const [p_one_session_distance_label, setp_one_session_distance_label] = useState("");
const [p_one_session_presentiel, setp_one_session_presentiel] = useState("0");
const [p_one_session_presentiel_label, setp_one_session_presentiel_label] = useState("");
const [p_one_session_status, setp_one_session_status] = useState();
const [p_one_session_status_label, setp_one_session_status_label] = useState();
const [p_one_session_etape, setp_one_session_etape] = useState();
const [p_one_session_etape_label, setp_one_session_etape_label] = useState();
function annuleSessionUpdate() {
clearSessionFields();
setsessionChanged(false);
setCreateSessionFormation_api();
setCreateSessionFormation_message();
setone_CreateSessionFormation_api();
setone_CreateSessionFormation_message();
setone_CreateSessionFormation_result();
GetCurrentSession(selected_code_session, selected_internal_url);
}
const [SessionstartDate, setSessionstartDate] = useState();
const filterPassedTime_start = (time) => {
const currentDate = new Date();
const selectedDate = new Date(time);
return currentDate.getTime() < selectedDate.getTime();
};
const [selectedCertif, setselectedCertif] = useState();
const [one_selectedCertif, setone_selectedCertif] = useState();
const [GetSpecificAttestation_Certif_api, setGetSpecificAttestation_Certif_api] = useState();
const [GetSpecificAttestation_Certif_message, setGetSpecificAttestation_Certif_message] = useState();
const [GetSpecificAttestation_Certif_result, setGetSpecificAttestation_Certif_result] = useState();
function GetSpecificAttestation_Certif(nom) {
clean_old_messages();
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("nom", nom);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetSpecificPartnerAttestation_Certificat/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === "true") {
//console.log(" In GetSpecificAttestation_Certif res.data.status = " + res.data.status);
//console.log(" In GetSpecificAttestation_Certif res.data.message r_class = " + res.data.message);
setGetSpecificAttestation_Certif_api("true");
setGetSpecificAttestation_Certif_result(res.data.message);
var mylocal = JSON.parse(res.data.message);
//console.log(" #### (mylocal.preview_url = ", mylocal.preview_url);
seturlpreview_certif(mylocal.preview_url);
}
else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setGetSpecificAttestation_Certif_api("false");
setGetSpecificAttestation_Certif_message(res.data.message);
}
}).catch((error) => {
console.warn('Not good man :( GetSpecificAttestation_Certif = ', error);
setGetSpecificAttestation_Certif_api("false");
})
}
const [reduction_session, setreduction_session] = useState("0");
function Session_small() {
if (String(reduction_session) === "1") {
setreduction_session("0");
}
else if (String(reduction_session) === "0") {
setreduction_session("1");
}
}
const [GetAttestation_Certif_api, setGetAttestation_Certif_api] = useState();
const [GetAttestation_Certif_message, setGetAttestation_Certif_message] = useState();
const [GetAttestation_Certif_result, setGetAttestation_Certif_result] = useState();
function GetAttestation_Certif(event) {
clean_old_messages();
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetPartnerAttestation_Certificat/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === "true") {
//console.log(" In GetAttestation_Certif res.data.status = " + res.data.status);
//console.log(" In GetAttestation_Certif res.data.message r_class = " + res.data.message);
setGetAttestation_Certif_api("true");
setGetAttestation_Certif_result(res.data.message);
}
else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setGetAttestation_Certif_api("false");
setGetAttestation_Certif_message(res.data.message);
}
}).catch((error) => {
console.warn('Not good man :( GetAttestation_Certif = ', error);
setGetAttestation_Certif_api("false");
})
}
function handleChangeselectedCertif(event) {
var val = event.target.value
//console.log(val);
GetSpecificAttestation_Certif(val)
setselectedCertif(val);
//seturlpreview_certif(val[1]);
}
const [SessionendDate, setSessionendDate] = useState();
const filterPassedTime_end = (time) => {
const currentDate = new Date();
const selectedDate = new Date(time);
return currentDate.getTime() < selectedDate.getTime();
};
function One_annuleSessionUpdate() {
One_clearSessionFields();
GetCurrentSession(selected_code_session);
setsessionChanged(false);
setCreateSessionFormation_api();
setCreateSessionFormation_message();
setone_CreateSessionFormation_api();
setone_CreateSessionFormation_message();
setone_CreateSessionFormation_result()
setaddOneSession();
}
const [SessionendDateInscription, setSessionendDateInscription] = useState();
const [GetCurrentPartnerClass_api, setGetCurrentPartnerClass_api] = useState();
const [GetCurrentPartnerClass_message, setGetCurrentPartnerClass_message] = useState();
const [GetCurrentPartnerClass_result, setGetCurrentPartnerClass_result] = useState();
function GetCurrentPartnerClass(event) {
var form = new FormData();
// Recuperation des parametres
var filtre1 = selectedfilt1;
var filtre2 = selectedfilt2;
var filtre3 = selectedfilt3;
var filtre1_value = "";
var filtre2_value = "";
var filtre3_value = "";
// Recuperation des valeurs de filtres
if (selectedfilt1) {
filtre1_value = document.getElementsByName("filtre1")[0].value;
form.append(filtre1, filtre1_value);
}
if (selectedfilt2) {
filtre2_value = document.getElementsByName("filtre2")[0].value;
form.append(filtre2, filtre2_value);
}
if (selectedfilt3) {
filtre3_value = document.getElementsByName("filtre3")[0].value;
form.append(filtre3, filtre3_value);
}
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_partner_class/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === String("true")) {
//console.log(" In GetCurrentPartnerClass res.data.status = " + res.data.status);
//console.log(" In GetCurrentPartnerClass res.data.message r_class = " + res.data.message);
setGetCurrentPartnerClass_api("true");
setGetCurrentPartnerClass_result(res.data.message);
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setGetCurrentPartnerClass_api("false");
setGetCurrentPartnerClass_message(res.data.message);
}
}).catch((error) => {
console.warn('Not good man :( mysearchtext = ', error);
setGetCurrentPartnerClass_api("false");
//setmyApimyApiMessage("")
})
}
function close_edit_form() {
setEdite_session("0");
}
function IssessionChanged() {
setsessionChanged(true);
}
/*
# status : 0 ==> Preinscription
# status : 1 ==> Inscription validée
# status : -1 ==> Inscription annulée
"""
*/
function handleClick_accept(event, cellValues) {
var montant = String(cellValues.row.amount);
if (parseFloat(montant).toFixed(2) <= 0) {
alert(" Le montant de la formation est incorrect");
return;
}
if (String(montant) === "undefined") {
alert(" Le montant de la formation est incorrect");
return;
}
var nom = cellValues.row.nom;
var email = cellValues.row.email;
var prenom = cellValues.row.prenom;
var opco = cellValues.row.opco;
if (String(opco) === "undefined") {
opco = ""
}
var modefinancement = cellValues.row.modefinancement;
if (String(modefinancement) === "undefined") {
modefinancement = ""
}
var status = "1";
var employeur = cellValues.row.employeur;
if (String(employeur) === "undefined") {
employeur = ""
}
UpdateStagiaireData(nom, prenom, email, status, montant, opco, modefinancement, employeur);
}
function handleClick_update_data(event, cellValues) {
var montant = String(cellValues.row.amount);
if (String(montant) === "undefined") {
montant = "0"
}
var nom = cellValues.row.nom;
var email = cellValues.row.email;
var prenom = cellValues.row.prenom;
var opco = cellValues.row.opco;
if (String(opco) === "undefined") {
opco = ""
}
var modefinancement = cellValues.row.modefinancement;
if (String(modefinancement) === "undefined") {
modefinancement = ""
}
var status = "0";
var employeur = cellValues.row.employeur;
if (String(employeur) === "undefined") {
employeur = ""
}
var comment = "";
UpdateStagiaireData(nom, prenom, email, status, montant, opco, modefinancement, employeur, comment);
}
function handleClick_refuse(event, cellValues) {
// Recuperation du motif du refus :
var motif_refus = document.getElementById("motif_refus").value;
var montant = String(cellValues.row.amount);
if (String(montant) === "undefined") {
montant = "0"
}
var nom = cellValues.row.nom;
var email = cellValues.row.email;
var prenom = cellValues.row.prenom;
var opco = cellValues.row.opco;
if (String(opco) === "undefined") {
opco = ""
}
var modefinancement = cellValues.row.modefinancement;
if (String(modefinancement) === "undefined") {
modefinancement = ""
}
var status = "-1";
var employeur = cellValues.row.employeur;
if (String(employeur) === "undefined") {
employeur = ""
}
UpdateStagiaireData(nom, prenom, email, status, montant, opco, modefinancement, employeur, motif_refus);
}
function handleClick_delete(event, cellValues) {
// Recuperation du motif du refus :
var nom = cellValues.row.nom;
var email = cellValues.row.email;
var prenom = cellValues.row.prenom;
DeleteStagiaireData(nom, prenom, email);
}
const [p_one_nom_part, setp_one_nom_part] = useState();
const [p_one_prenom_part, setp_one_prenom_part] = useState();
const [p_one_email_part, setp_one_email_part] = useState();
const [p_one_phone_part, setp_one_phone_part] = useState();
const [p_one_status_part, setp_one_status_part] = useState();
const [p_one_status_part_lable, setp_one_status_part_lable] = useState();
/* Envoi de l'envoi de l'email de confirmation de la validation de l'inscription */
function handleClick_resend_conf_mail(event, cellValues) {
var email = cellValues.row.email;
//alert(" confirmation email = " + email);
SendInscriptionConfirmation(email);
}
function Display_Detail_Inscription(event, cellValues) {
clearDetailAttendeFields();
setdisplay_detail_insc("1")
setuserimgclassprofil("");
var montant = String(cellValues.row.amount);
var nom = cellValues.row.nom;
var email = cellValues.row.email;
setselectedattendeeemail(email);
var prenom = cellValues.row.prenom;
GetAttendee_Data(email, selected_code_session);
getStagiaireImages(selected_internal_url, selected_code_session, email,);
}
const [print_detail_insc, setprint_detail_insc] = React.useState();
function Print_Detail_Inscription(event, cellValues) {
setprint_detail_insc("1")
var email = cellValues.row.email;
setselectedattendeeemail(email);
DownloadAttendeeDetail();
}
function DownloadAttendeeDetail(event) {
var trainer = ""
if (document.getElementsByName("formateur")[0])
trainer = document.getElementsByName("formateur")[0].value;
if (trainer == "") {
alert(" Aucun formateur pour cette session ");
return;
}
const stored_cookie = getCookie('tokenmysypart');
var nom_fiche_detaillee = "Fiche_Detaillee.pdf";
var url = process.env.REACT_APP_API_URL + "myclass/api/PrintAttendeeDetail_perSession/" + stored_cookie + "/" + selected_code_session + "/" + selectedattendeeemail + "/" + selected_internal_url;
axios.get(url, { responseType: 'blob', },)
.then((res) => {
fileDownload(res.data, nom_fiche_detaillee)
}).catch((error) => {
console.error('Error:', error);
});
}
const [display_detail_insc, setdisplay_detail_insc] = React.useState();
const [getPartnerImages_api, setgetPartnerImages_api] = useState();
const [getPartnerImages_message, setgetPartnerImages_message] = useState();
const [getPartnerImages_result, setgetPartnerImages_result] = useState();
function getStagiaireImages(local_internal_url, local_mysession, local_email) {
var myurl = process.env.REACT_APP_API_URL + "myclass/api/getRecodedStagiaireImage_from_front/";
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("class_internal_url", local_internal_url);
form.append("session_id", local_mysession);
form.append("email", local_email);
axios.post(myurl, form).then(res => {
//console.log(" getStagiaireImages : In test res.data.status = " + res.data.status);
// console.log(" getStagiaireImages: res.data.message.img = " + res.data.message);
if (String(res.data.status) === "true") {
setgetPartnerImages_api("true");
if (JSON.parse(res.data.message).logo_img) {
var partner_logo_img = "data:image/png;base64," + JSON.parse(res.data.message).logo_img;
setisimgclassSelected(partner_logo_img);
setuserimgclassprofil(partner_logo_img);
setisimgclassSelected_recid(JSON.parse(res.data.message).logo_img_recid);
}
}
else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
return;
}
else {
setgetPartnerImages_api("false");
setgetPartnerImages_message(res.data.message)
}
}).catch((error) => {
console.warn('getStagiaireImages ee: Not good man :( = ', error);
setgetPartnerImages_api("false");
setgetPartnerImages_message(" Impossible de recuperer les images/médias du partenaire")
})
}
// Cette fonction remplit la zone detail de la personne inscrite
const [GetAttendee_api, setGetAttendee_api] = useState();
const [GetAttendee_message, setGetAttendee_message] = useState();
const [GetAttendee_result, setGetAttendee_result] = useState();
function GetAttendee_Data(attendee_email, session_id) {
clean_old_messages();
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("session_id", session_id);
form.append("attendee_email", attendee_email);
form.append("internal_url", selected_internal_url);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAttendeeDetail_perSession/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === "true") {
//console.log(" In GetAttendee res.data.status = " + res.data.status);
//console.log(" In GetAttendee res.data.message r_class = " + res.data.message);
setGetAttendee_api("true");
setGetAttendee_result(res.data.message);
var mylocalattendee = JSON.parse(res.data.message);
if (mylocalattendee.inscription_validation_date) {
var date_du = new Date(moment(mylocalattendee.inscription_validation_date, "DD/MM/YYYY HH:mm:ss"));
setdetailuser_date_inscription(date_du);
}
document.getElementsByName("detail_nom")[0].value = "";
if (mylocalattendee.nom)
document.getElementsByName("detail_nom")[0].value = mylocalattendee.nom;
document.getElementsByName("detail_prenom")[0].value = "";
if (mylocalattendee.prenom)
document.getElementsByName("detail_prenom")[0].value = mylocalattendee.prenom;
document.getElementsByName("detail_mail")[0].value = "";
if (mylocalattendee.email) {
document.getElementsByName("detail_mail")[0].value = mylocalattendee.email;
setattendee_lms_login(mylocalattendee.email);
}
document.getElementsByName("detail_tel")[0].value = "";
if (mylocalattendee.telephone) {
document.getElementsByName("detail_tel")[0].value = mylocalattendee.telephone;
}
document.getElementsByName("detail_adresse")[0].value = "";
if (mylocalattendee.adresse) {
document.getElementsByName("detail_adresse")[0].value = mylocalattendee.adresse;
}
document.getElementsByName("detail_code_postal")[0].value = "";
if (mylocalattendee.code_postal) {
document.getElementsByName("detail_code_postal")[0].value = mylocalattendee.code_postal;
}
document.getElementsByName("detail_ville")[0].value = "";
if (mylocalattendee.ville) {
document.getElementsByName("detail_ville")[0].value = mylocalattendee.ville;
}
document.getElementsByName("detail_cout")[0].value = "";
if (mylocalattendee.price) {
document.getElementsByName("detail_cout")[0].value = mylocalattendee.price;
}
document.getElementsByName("detail_mode_fin")[0].value = "";
if (mylocalattendee.modefinancement) {
document.getElementsByName("detail_mode_fin")[0].value = mylocalattendee.modefinancement;
}
document.getElementsByName("detail_employeur")[0].value = "";
if (mylocalattendee.employeur) {
document.getElementsByName("detail_employeur")[0].value = mylocalattendee.employeur;
}
document.getElementsByName("date_evaluation")[0].value = "";
if (mylocalattendee.eval_date) {
var date_eval = new Date(moment(mylocalattendee.eval_date, "YYYY/MM/DD"));
setdetailuser_date_evaluation(date_eval);
}
document.getElementsByName("date_evaluation")[0].value = "";
if (mylocalattendee.certification_send_date) {
//alert(" certification_send_date = ", mylocalattendee.certification_send_date);
var date_eval = new Date(moment(mylocalattendee.certification_send_date, "DD/MM/YYYY"));
setdetailuser_date_certification(date_eval);
}
document.getElementsByName("note_eval")[0].value = "";
if (mylocalattendee.eval_note) {
document.getElementsByName("note_eval")[0].value = mylocalattendee.eval_note;
}
if (mylocalattendee.eval_eval) {
setfield_evaluation(mylocalattendee.eval_eval);
}
if (mylocalattendee.lms_pwd) {
setattendee_lms_pwd("xxxxxx");
}
desableAttendeeDetailFields();
var myelement;
if (document.getElementById('ajout_participant')) {
myelement = document.getElementById('ajout_participant');
}
if (myelement) {
myelement.scrollIntoView({ behavior: 'smooth' });
}
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setGetAttendee_api("false");
setGetAttendee_message(res.data.message);
}
}).catch((error) => {
console.warn('Not good man :( GetAttendee = ', error);
setGetAttendee_api("false");
//setmyApimyApiMessage("")
})
}
const [isimgclassdeleted, setisimgclassdeleted] = useState("");
const [isimgclassdeleted_message, setisimgclassdeleted_message] = useState("");
const [isimgclassSaved, setisimgclassSaved] = useState("");
const [isimgclassSaved_message, setisimgclassSaved_message] = useState("");
const [record_Stagiaire_Image_api, setrecord_Stagiaire_Image_api] = useState();
const [record_Stagiaire_Image_message, setrecord_Stagiaire_Image_message] = useState();
const [record_Stagiaire_Image_result, setrecord_Stagiaire_Image_result] = useState();
function record_Stagiaire_Image(l) {
const formData = new FormData();
const url = process.env.REACT_APP_API_URL + "myclass/api/Update_Stagiaire_Image/";
const stored_cookie = getCookie('tokenmysypart');
formData.append("token", stored_cookie);
formData.append("class_internal_url", selected_internal_url);
formData.append("session_id", selected_code_session);
formData.append("email", selectedattendeeemail);
console.log(" ### userimgclassprofilchanged =", userimgclassprofilchanged)
formData.append('file_img', isimgclassSelected);
formData.append('file_img_recid', isimgclassSelected_recid);
//console.log(" ### formData = ", formData);
fetch(
url,
{
method: 'POST',
body: formData,
}
)
.then((response) => response.json())
.then((result) => {
console.log('Success:', result['message'], "result['status'] = ", result['status']);
if (String(result['status']) === String("true")) {
setrecord_Stagiaire_Image_api("true");
setuserimgclassprofilchanged("");
alert(" L'image à jour a été mise enregistrée ");
} else if (String(result['status']) === String("Err_Connexion")) {
alert('Erreur: ' + result['message']);
history.push("/Connexion");
} else {
setrecord_Stagiaire_Image_api("false");
alert(" Erreur : ", result['message']);
}
})
.catch((error) => {
console.error('Error:', error);
setrecord_Stagiaire_Image_api("false");
alert(" Erreur : Impossible d'enregistrer l'image ");
});
};
function removeRecodedLogoImage() {
if (!isimgclassSelected_recid || String(isimgclassSelected_recid).length < 3) {
alert(" Image incorrecte. Impossible de la supprimer ");
return;
}
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("image_recid", isimgclassSelected_recid);
fetch(
process.env.REACT_APP_API_URL + "myclass/api/DeleteImage_Stagiaire_v2/",
{
method: 'POST',
body: form,
}
).then((response) => response.json())
.then((result) => {
console.log(' removeRecodedClassImage : status:', result['status']);
console.log('removeRecodedClassImage : Success:', result['message']);
if (String(result['status']) === String("true")) {
setisimgclassSelected("");
setisimgclassSelected_recid("");
setisimgclassSelectedfile("");
setuserimgclassprofil("");
//getStagiaireImages();
}
else if (String(result['status']) === String("Err_Connexion")) {
alert('Erreur: ' + result['message']);
history.push("/Connexion");
return;
}
else {
alert(result['message']);
}
})
.catch((error) => {
console.error('Error:', error);
alert(" Impossible de supprimer l'image ");
});
}
const [Resend_LMS_Credentials_api, setResend_LMS_Credentials_api] = useState();
const [Resend_LMS_Credentials_result, setResend_LMS_Credentials_result] = useState();
const [Resend_LMS_Credentials_message, setResend_LMS_Credentials_message] = useState();
const Resend_LMS_Credentials = event => {
clean_old_messages();
const formData = new FormData();
const stored_cookie = getCookie('tokenmysypart');
formData.append("token", stored_cookie);
formData.append("session_id", selected_code_session);
var local_mail = ""
if (document.getElementsByName("detail_mail") && document.getElementsByName("detail_mail")[0])
local_mail = document.getElementsByName("detail_mail")[0].value;
var validRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;
if (!local_mail.match(validRegex)) {
alert("L'adresse email est invalide. Impossible de renvoyer les identifiants");
return;
}
formData.append("email", local_mail);
formData.append("class_internal_url", selected_internal_url);
//console.log("token = " + stored_cookie);
fetch(
process.env.REACT_APP_API_URL + "myclass/api/LMS_Credential_Sending_mail/",
{
method: 'POST',
body: formData,
}
)
.then((response) => response.json())
.then((result) => {
if (String(result['status']) === String("true")) {
//console.log('Success:', result['message']);
setResend_LMS_Credentials_result(result['message']);
setResend_LMS_Credentials_api("true");
alert(" Les identifiants de connexion ont été correctement envoyés")
} else if (String(result['status']) === String("Err_Connexion")) {
alert('Erreur: ' + result['message']);
history.push("/Connexion");
}
else {
setResend_LMS_Credentials_message(result['message']);
setResend_LMS_Credentials_api("false");
}
})
.catch((error) => {
console.error('Error:', error);
setResend_LMS_Credentials_api("false");
});
};
function clearDetailAttendeFields() {
if (document.getElementsByName("detail_nom") && document.getElementsByName("detail_nom")[0])
document.getElementsByName("detail_nom")[0].value = "";
if (document.getElementsByName("detail_prenom") && document.getElementsByName("detail_prenom")[0])
document.getElementsByName("detail_prenom")[0].value = "";
if (document.getElementsByName("detail_mail") && document.getElementsByName("detail_mail")[0])
document.getElementsByName("detail_mail")[0].value = "";
if (document.getElementsByName("detail_tel") && document.getElementsByName("detail_tel")[0])
document.getElementsByName("detail_tel")[0].value = "";
if (document.getElementsByName("detail_adresse") && document.getElementsByName("detail_adresse")[0])
document.getElementsByName("detail_adresse")[0].value = "";
if (document.getElementsByName("detail_code_postal") && document.getElementsByName("detail_code_postal")[0])
document.getElementsByName("detail_code_postal")[0].value = "";
if (document.getElementsByName("detail_ville") && document.getElementsByName("detail_ville")[0])
document.getElementsByName("detail_ville")[0].value = "";
if (document.getElementsByName("detail_incr_date") && document.getElementsByName("detail_incr_date")[0])
document.getElementsByName("detail_incr_date")[0].value = "";
if (document.getElementsByName("detail_cout") && document.getElementsByName("detail_cout")[0])
document.getElementsByName("detail_cout")[0].value = "";
if (document.getElementsByName("detail_mode_fin") && document.getElementsByName("detail_mode_fin")[0])
document.getElementsByName("detail_mode_fin")[0].value = "";
if (document.getElementsByName("detail_employeur") && document.getElementsByName("detail_employeur")[0])
document.getElementsByName("detail_employeur")[0].value = "";
if (document.getElementsByName("date_evaluation") && document.getElementsByName("date_evaluation")[0])
document.getElementsByName("date_evaluation")[0].value = "";
if (document.getElementsByName("note_eval") && document.getElementsByName("note_eval")[0])
document.getElementsByName("note_eval")[0].value = "";
if (document.getElementsByName("certif_date") && document.getElementsByName("certif_date")[0])
document.getElementsByName("certif_date")[0].value = "";
setfield_evaluation();
setdetailuser_date_certification();
setdetailuser_date_evaluation();
}
const [attendee_lms_login, setattendee_lms_login] = useState();
const [isimgclassSelected, setisimgclassSelected] = useState(false);
const [isimgclassSelected_recid, setisimgclassSelected_recid] = useState("");
const [isimgclassSelectedfile, setisimgclassSelectedfile] = useState(false);
const [userimgclassprofil, setuserimgclassprofil] = useState();
const [userimgclassprofilchanged, setuserimgclassprofilchanged] = useState("");
const editorRef_evaluation = useRef(null);
const [field_evaluation, setfield_evaluation] = useState("");
function editor_keyup() {
}
function editor_contenu_ftion_keyup() {
setsessionChanged(true);
}
function one_editor_contenu_ftion_keyup() {
setsessionChanged(true);
}
const imglogoclasschangeHandler = (event) => {
let file_size = event.target.files[0].size;
//or if you like to have name and type
//console.log(event.target.files);
let file_name = event.target.files[0].name;
let file_type = event.target.files[0].type;
//alert("file_size = "+file_size+" file_type = "+file_type+" a = "+a);
if (file_size > 1000000) {
alert("L'image ne doit pas depasser un 1 Méga octets");
return;
}
setisimgclassSelected(event.target.files[0]);
setisimgclassSelectedfile(true);
setuserimgclassprofil(URL.createObjectURL(event.target.files[0]));
setuserimgclassprofilchanged("1");
};
const [SendEvaluationEmail_api, setSendEvaluationEmail_api] = useState();
const [SendEvaluationEmail_message, setSendEvaluationEmail_message] = useState();
const [SendEvaluationEmail_result, setSendEvaluationEmail_result] = useState();
function SendEvaluationEmail() {
clean_old_messages();
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("session_id", selected_code_session);
form.append("attendee_email", selectedattendeeemail);
form.append("class_internal_url", selected_internal_url);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/SendTrainingEvaluationEmail/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === String("true")) {
//console.log(" In SendEvaluationEmail res.data.status = " + res.data.status);
//console.log(" In SendEvaluationEmail res.data.message r_class = " + res.data.message);
setSendEvaluationEmail_api("true");
setSendEvaluationEmail_result(res.data.message);
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setSendEvaluationEmail_api("false");
setSendEvaluationEmail_message(res.data.message);
}
}).catch((error) => {
console.warn('Not good man :( SendEvaluationEmail = ', error);
setSendEvaluationEmail_api("false");
})
}
function SendEvaluationEmail_One(email) {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("session_id", selected_code_session);
form.append("attendee_email", email);
form.append("class_internal_url", selected_internal_url);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/SendTrainingEvaluationEmail/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === String("true")) {
//console.log(" In SendEvaluationEmail res.data.status = " + res.data.status);
//console.log(" In SendEvaluationEmail res.data.message r_class = " + res.data.message);
setSendEvaluationEmail_api("true");
setSendEvaluationEmail_result(res.data.message);
alert(" La demande a été correctement envoyée");
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setSendEvaluationEmail_api("false");
setSendEvaluationEmail_message(res.data.message);
alert(" Erreur : " + res.data.message);
}
}).catch((error) => {
console.warn('Not good man :( SendEvaluationEmail = ', error);
setSendEvaluationEmail_api("false");
})
}
const [attendee_lms_pwd, setattendee_lms_pwd] = useState();
const [SendAttendeeAttestation_api, setSendAttendeeAttestation_api] = useState();
const [SendAttendeeAttestation_message, setSendAttendeeAttestation_message] = useState();
const [SendAttendeeAttestation_result, setSendAttendeeAttestation_result] = useState();
function SendAttendeeAttestation() {
clean_old_messages();
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("session_id", selected_code_session);
form.append("attendee_email", selectedattendeeemail);
form.append("class_internal_url", selected_internal_url);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/SendAttendeeCertification/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === String("true")) {
//console.log(" In SendAttendeeAttestation res.data.status = " + res.data.status);
//console.log(" In SendAttendeeAttestation res.data.message r_class = " + res.data.message);
setSendAttendeeAttestation_api("true");
setSendAttendeeAttestation_result(res.data.message);
} else if (String(res.data.status) === String("Err_Connexion")) {
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setSendAttendeeAttestation_api("false");
setSendAttendeeAttestation_message(res.data.message);
}
}).catch((error) => {
console.warn('Not good man :( SendAttendeeAttestation = ', error);
setSendAttendeeAttestation_api("false");
})
}
function desableAttendeeDetailFields() {
document.getElementsByName("date_evaluation")[0].disabled = true;
document.getElementsByName("date_evaluation")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("detail_incr_date")[0].disabled = true;
document.getElementsByName("detail_incr_date")[0].style.backgroundColor = "#ECEFF1";
document.getElementsByName("certif_date")[0].disabled = true;
document.getElementsByName("certif_date")[0].style.backgroundColor = "#ECEFF1";
}
const [p_filtre1, setp_filtre1] = useState();
const [p_filtre1_value, setp_filtre1_value] = useState();
const [p_filtre2, setp_filtre2] = useState();
const [p_filtre2_value, setp_filtre2_value] = useState();
function clean_all_filters() {
setp_filtre1();
setp_filtre1_value();
setp_filtre2();
setp_filtre2_value();
Getall_TrainingSession_no_filter();
}
const myRef = useRef(null)
return (
Vos sessions de formation
Utilisez les filtres !
{
setp_filtre1(e.target.value)
}}
>
Code Session
Titre Formation
{p_filtre1 &&
{ setp_filtre1_value(e.target.value); }}
InputProps={{
endAdornment: (
{
setp_filtre1_value("");
}} />
),
}}
/>
}
{p_filtre1 &&
}
{p_filtre1 &&
}
{p_filtre2 &&
{
setp_filtre2(e.target.value)
}}
>
Code Session
Titre Formation
{String(p_filtre2).length > 3 &&
setp_filtre2_value(e.target.value)}
InputProps={{
endAdornment: (
{
setp_filtre2_value("");
}} />
),
}}
/>}
{String(p_filtre2).length > 3 &&
}
}
{
}
);
}
export default DisplayPartnerSession;