Debut
+
Debut
{
- if (String(props.write_access) === "1")
+ if (String(props.write_access) === "1") {
return setStartDate(date);
+ setp_detail_data_changed("1");
+ }
}
}
@@ -1143,15 +1311,17 @@ const Module_Absence = (props) => {
-
Fin
+
Fin
{
- if (String(props.write_access) === "1")
+ if (String(props.write_access) === "1") {
+ setp_detail_data_changed("1");
return setendDate(date);
+ }
}
}
@@ -1181,8 +1351,10 @@ const Module_Absence = (props) => {
value={p_detail_comment}
onChange={(e) => {
- if (String(props.write_access) === "1")
+ if (String(props.write_access) === "1") {
setp_detail_comment(e.target.value);
+ setp_detail_data_changed("1");
+ }
}
}
multiline
@@ -1200,7 +1372,13 @@ const Module_Absence = (props) => {
+
+
+ {p_detail_event_id && String(p_detail_event_id) !== "" && p_detail_data_changed === "1" &&
+
/!\ Pensez à enregistrer les modifications
+
}
+
{String(props.write_access) === "1" &&
{p_detail_event_id && String(p_detail_event_id) !== "" && }
{(!p_detail_event_id || String(p_detail_event_id) === "") && }
@@ -1362,6 +1540,8 @@ const Module_Absence = (props) => {
event_type: JSON.parse(item).event_type,
justified: JSON.parse(item).justified,
event_comment: JSON.parse(item).comment,
+ session_id: JSON.parse(item).session_id,
+ code_session: JSON.parse(item).code_session,
}
))}
@@ -1443,7 +1623,7 @@ const Module_Absence = (props) => {
}
-
+
)
}
diff --git a/src/components/Module_Admission_Candidat_Synthese.js b/src/components/Module_Admission_Candidat_Synthese.js
index 535f29b..cba0ee4 100644
--- a/src/components/Module_Admission_Candidat_Synthese.js
+++ b/src/components/Module_Admission_Candidat_Synthese.js
@@ -5,6 +5,7 @@ import { FcInfo } from "react-icons/fc";
import 'react-confirm-alert/src/react-confirm-alert.css'; // Import css
import Button from '@mui/material/Button';
import axios from "axios";
+import { UserPlus, Building2, Users, UserRoundPlus } from 'lucide-react';
import Checkbox from '@mui/material/Checkbox';
import { ResponsivePie } from '@nivo/pie'
import { ResponsiveBar } from "@nivo/bar";
@@ -19,6 +20,7 @@ import Popup from 'reactjs-popup';
import 'reactjs-popup/dist/index.css';
import VisibilityIcon from '@mui/icons-material/Visibility';
import ArrowCircleDownIcon from '@mui/icons-material/ArrowCircleDown';
+import { FcCheckmark } from "react-icons/fc";
import fr from 'date-fns/locale/fr';
import { FcDataBackup } from "react-icons/fc";
import { FcDataRecovery } from "react-icons/fc";
@@ -101,7 +103,6 @@ function PaperComponent(props) {
}
-
const Module_Admission_Candidat_Synthese = (props) => {
const classes = useStyles();
const history = useHistory();
@@ -376,6 +377,8 @@ const Module_Admission_Candidat_Synthese = (props) => {
local_trier_par.push("Prenom");
local_trier_par.push("Genre");
local_trier_par.push("Age");
+ local_trier_par.push("Rang");
+
var local_entete = [];
@@ -398,7 +401,7 @@ const Module_Admission_Candidat_Synthese = (props) => {
var local_status = JSON.parse(x).status;
var local_age = JSON.parse(x).age;
var local_session_etape_code = JSON.parse(x).session_etape_code;
-
+ var local_rang = JSON.parse(x).rang;
var local_tab_entete_exam_jury = JSON.parse(x).tab_entete_exam_jury;
@@ -418,6 +421,7 @@ const Module_Admission_Candidat_Synthese = (props) => {
"status": local_status,
"age": local_age,
"session_etape_code": local_session_etape_code,
+ "rang": local_rang,
};
@@ -427,6 +431,7 @@ const Module_Admission_Candidat_Synthese = (props) => {
"nom": local_nom,
"prenom": local_prenom,
"email": local_email,
+ "rang": local_rang,
"date_naissance": local_date_naissance,
"telephone": local_telephone,
"session_etape": local_session_etape,
@@ -664,6 +669,8 @@ const Module_Admission_Candidat_Synthese = (props) => {
trierpar = "civilite";
else if (local_value === "Age")
trierpar = "age";
+ else if (local_value === "Rang")
+ trierpar = "rang";
var tmp_sorted_data = GetListeInscrit_With_Synthese_insc_result;
@@ -683,7 +690,7 @@ const Module_Admission_Candidat_Synthese = (props) => {
}
else {
- console.log(" ORD ----1");
+ //console.log(" ORD ----1");
tmp_sorted_data.sort(function (a, b) {
var keyA = (JSON.parse(a)[trierpar]),
keyB = (JSON.parse(b)[trierpar]);
@@ -766,6 +773,186 @@ const Module_Admission_Candidat_Synthese = (props) => {
}
+ const [Update_Candidat_Synthese_api, setUpdate_Candidat_Synthese_api] = useState();
+ const [Update_Candidat_Synthese_message, setUpdate_Candidat_Synthese_message] = useState();
+ const [Update_Candidat_Synthese_result, setUpdate_Candidat_Synthese_result] = useState();
+ function Update_Candidat_Synthese() {
+ var form = new FormData();
+ //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
+
+ console.log(" tab_rang_candidat = ", tab_rang_candidat)
+
+ const stored_cookie = getCookie('tokenmysypart');
+ form.append("token", stored_cookie);
+ form.append("session_id", props.selected_session_admiss_id);
+
+ var tab_rang_candidat_json_str = JSON.stringify(tab_rang_candidat)
+ form.append("tab_rang_candidat", tab_rang_candidat_json_str);
+
+
+
+ console.log(" ## form = ", form)
+
+ var myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_Stagiaire_To_Admission_Session_Bulk/";
+
+ //setLoading(true);
+ axios.post(myurl, form).then(res => {
+ //console.log(" In Update_Candidat_Synthese res.data.status = " + res.data.status);
+ //console.log(" In Update_Candidat_Synthese res.data.message r_class = " + res.data.message);
+
+ //setLoading(false);
+ if (String(res.data.status) === String("true")) {
+ setUpdate_Candidat_Synthese_api("true");
+ setUpdate_Candidat_Synthese_result(res.data.message);
+ GetListeInscrit_With_Synthese();
+ }
+ else {
+ setUpdate_Candidat_Synthese_api("false");
+ setUpdate_Candidat_Synthese_message(res.data.message);
+ // alert(res.data.message);
+ setdisplay_alert_mysy("1");
+ setalert_message(res.data.message);
+ setalert_type("error");
+ }
+
+ }).catch((error) => {
+ //setLoading(false);
+ console.warn('UpdateStagiaireData : Not good man :( Update_Candidat_Synthese = ' + error);
+ setUpdate_Candidat_Synthese_api("false");
+ alert(" Impossible de mettre à jour le candidat");
+
+ })
+ }
+
+ var tab_rang_candidat = [];
+
+ const [Dialog_add_inscription_message, setDialog_add_inscription_message] = React.useState(false);
+ const [Dialog_add_inscription_open, setDialog_add_inscription_open] = React.useState(false);
+ function Dialog_add_inscription_handle_change_participant_session(message) {
+ setDialog_add_inscription_message(message);
+ setDialog_add_inscription_open(true);
+ }
+
+
+ const Dialog_add_inscription_handleClose_buton = () => {
+ setDialog_add_inscription_open(false);
+ };
+
+ const [New_Getall_TrainingSession_result, setNew_Getall_TrainingSession_result] = useState();
+
+ 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();
+
+ const stored_cookie = getCookie('tokenmysypart');
+ form.append("token", stored_cookie);
+ form.append("archive", "0");
+ form.append("type_session", "1");
+
+ 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);
+
+ var new_data2 = [];
+ const new_data = res.data.message.map((x) => {
+
+ //---
+ var localid = JSON.parse(x).id;
+ var local_id = JSON.parse(x)._id;
+ var local_internal_url = JSON.parse(x).class_internal_url;
+ var local_title_session = JSON.parse(x).titre;
+ var local_code_session = JSON.parse(x).code_session;
+ var local_invoiced_statut = JSON.parse(x).invoiced_statut;
+
+
+
+ //---
+ var node = {
+ "_id": local_id,
+ "id": localid,
+ "label": local_code_session,
+ "class_internal_url": local_internal_url,
+ "titre": local_title_session,
+ "code_session": local_code_session,
+ "invoiced_statut": local_invoiced_statut,
+ };
+ new_data2.push(node);
+
+ // return {"_id": " + str(local_id) + ", "label": " + local_courrier_template_ref_interne + '" , "courrier_template_ref_interne": "' + local_courrier_template_ref_interne + '", "nom_champ_technique": "' + local_nom_champ_technique + '", "nom_champ_fonctionel": "' + local_nom_champ_fonctionel + '","valide": "1" };
+
+ });
+
+
+ if (new_data2.length > 0)
+ setNew_Getall_TrainingSession_result(new_data2);
+
+ //console.log(" ### new_data2 = ", new_data2)
+
+
+ }
+ 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 New_Type_apprenant = [
+ { "id": "0", "label": "Autre" },
+ { "id": "1", "label": "Salariés" },
+ { "id": "2", "label": "Apprentis" },
+ { "id": "3", "label": "Particuliers" },
+ { "id": "4", "label": "Sans Emploi" }
+ ]
+
+ const New_Financement = [
+ {
+ value: 'cpf',
+ label: 'CPF',
+ },
+ {
+ value: 'perso',
+ label: 'Fonds Propres',
+ },
+ {
+ value: 'entreprise',
+ label: 'Votre entreprise',
+ },
+
+ {
+ value: 'mixte_cpf_perso',
+ label: 'CPF & Fonds Propres',
+ },
+ {
+ value: 'modefinancement',
+ label: 'modefinancement',
+ },
+ {
+ value: 'autre',
+ label: 'Autre',
+ },
+
+ ];
+
+ const [p_dialog_session_id, setp_dialog_session_id] = useState("");
+ const [p_dialog_type_apprenant, setp_dialog_type_apprenant] = useState("");
+ const [p_dialog_financement, setp_dialog_financement] = useState("");
+ const [p_dialog_client_rattachement_id, setp_dialog_client_rattachement_id] = useState("");
+
return (
@@ -784,6 +971,145 @@ const Module_Admission_Candidat_Synthese = (props) => {
}
{/*** FIN Affichage des messages d'alerte*/}
+ {/*** Dialog pour reinscrire un apprenant à une session */}
+
+
+
+ {/*** Fin Dialog pour reinscrire un apprenant à une session */}
+
+
Synthèse
@@ -820,7 +1146,7 @@ const Module_Admission_Candidat_Synthese = (props) => {
onChange={(event, value) => {
- console.log("## event = ", event.target.innerText, "-- ")
+ // console.log("## event = ", event.target.innerText, "-- ")
settrier_par(event.target.innerText)
trier_v2(event.target.innerText);
@@ -846,6 +1172,7 @@ const Module_Admission_Candidat_Synthese = (props) => {
| Validation |
+ Rang |
Civ |
Nom |
@@ -853,11 +1180,10 @@ const Module_Admission_Candidat_Synthese = (props) => {
Email |
Dossier |
{New_tab_entete_exam_jury && New_tab_entete_exam_jury.length > 0 && New_tab_entete_exam_jury.map((item) => (
-
{item} |
))}
-
+ Inscrire |
@@ -893,6 +1219,38 @@ const Module_Admission_Candidat_Synthese = (props) => {
+
+ {
+ var local_node = {}
+ local_node["_id"] = String(JSON.parse(item)._id)
+ local_node["rang"] = e.target.value
+
+ var found = ""
+ tab_rang_candidat.forEach(user => {
+ if (user._id === String(JSON.parse(item)._id)) {
+ user.rang = e.target.value; // Update age for user with id 2
+ found = "1"
+ }
+ });
+
+ if (found !== "1") {
+ tab_rang_candidat.push(local_node);
+ }
+
+ // console.log(" tab_rang_candidat = ", tab_rang_candidat)
+ }}
+
+ />
+ |
{New_civilite && New_civilite.length > 0 &&
{New_civilite.filter((data) => (data).id === String(JSON.parse(item).civilite))[0].label} | }
{JSON.parse(item).nom} |
@@ -921,6 +1279,12 @@ const Module_Admission_Candidat_Synthese = (props) => {
))}
+
{
+ Getall_TrainingSession();
+ setDialog_add_inscription_open(true);
+
+ }}> |
+
))}
@@ -928,9 +1292,20 @@ const Module_Admission_Candidat_Synthese = (props) => {
+
+
+
+
diff --git a/src/components/Module_ENT_Absence.js b/src/components/Module_ENT_Absence.js
new file mode 100644
index 0000000..d55898b
--- /dev/null
+++ b/src/components/Module_ENT_Absence.js
@@ -0,0 +1,1647 @@
+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 { DataGrid, GridToolbar, frFR } from '@mui/x-data-grid';
+import "react-draft-wysiwyg/dist/react-draft-wysiwyg.css";
+import 'react-tooltip/dist/react-tooltip.css'
+import 'reactjs-popup/dist/index.css';
+import { FcCancel, FcApproval, FcPlanner } from "react-icons/fc";
+import fr from 'date-fns/locale/fr';
+import { registerLocale } from 'react-datepicker';
+import DatePicker from "react-datepicker";
+import "react-datepicker/dist/react-datepicker.css";
+
+import moment from "moment";
+
+import Box from '@mui/material/Box';
+
+import { CiBoxList } from "react-icons/ci";
+
+import Dialog from '@mui/material/Dialog';
+import DialogActions from '@mui/material/DialogActions';
+import DialogContent from '@mui/material/DialogContent';
+import DialogContentText from '@mui/material/DialogContentText';
+import DialogTitle from '@mui/material/DialogTitle';
+
+import img_loading_spin from "./../mysy_img/mysy_spin_loading.gif";
+import FullCalendar from "@fullcalendar/react";
+import daygridPlugin from "@fullcalendar/daygrid";
+import interactionPlugin from "@fullcalendar/interaction";
+import timeGridPlugin from "@fullcalendar/timegrid";
+
+import allLocales from '@fullcalendar/core/locales-all'
+
+import Module_Alert_Confirmation from "./Module_Alert_Confirmation";
+import ToggleSwitch from "./ToggleSwitch";
+import ToggleSwitch_v2_mysy from "./ToggleSwitch_v2_mysy";
+
+import { IoAddCircleOutline, IoCloseCircleOutline } from "react-icons/io5";
+
+import { makeStyles } from "@material-ui/core/styles";
+import CancelPresentationIcon from '@mui/icons-material/CancelPresentation';
+import { IconButton } from '@material-ui/core';
+import Paper from '@material-ui/core/Paper';
+import Draggable from 'react-draggable';
+
+function PaperComponent(props) {
+ return (
+
+
+
+ );
+}
+const useStyles = makeStyles((theme) => ({
+
+ dialog: {
+ position: 'absolute',
+ // left: 10,
+ top: 400
+ },
+
+ paper: {
+ overflowY: 'unset',
+ },
+ customizedButton: {
+ position: 'absolute',
+ left: '95%',
+ top: '-3%',
+ backgroundColor: 'lightgray',
+ color: 'gray',
+ },
+}));
+
+
+const Module_ENT_Absence = (props) => {
+ const myconntected_employee_id = props.conntected_employee_id;
+ registerLocale('fr', fr);
+
+ const classes = useStyles();
+ const attendee_email = props.attendee_email;
+
+ const [selected_employee_id, setselected_employee_id] = useState(props.conntected_employee_id);
+
+ const [selected_attendee_email, setselected_attendee_email] = useState(props.attendee_email);
+ const [selected_related_collection, setselected_related_collection] = useState(props.related_collection);
+
+ const history = useHistory();
+ const [isLoading, setLoading] = useState();
+
+
+ const columns = [
+ { field: '_id', headerName: '_id', hide: true },
+ { field: 'id', headerName: 'id', hide: true },
+ { field: 'event_type', headerName: 'Type', flex: 1, hide: false, editable: false },
+ { field: 'event_title', headerName: 'Titre', flex: 1, hide: false, editable: false, },
+ {
+ field: 'event_start', headerName: 'Debut', flex: 1, hide: false, editable: false,
+ valueFormatter: (params) => {
+ return moment(params.value).format('D/MM/YYYY - H:mm');
+ },
+ },
+ {
+ field: 'event_end', headerName: 'Fin', flex: 1, hide: false, editable: false,
+ valueFormatter: (params) => {
+ return moment(params.value).format('D/MM/YYYY - H:mm');
+ },
+ },
+ {
+ field: 'justified', headerName: 'Justifié', flex: 1, hide: false, editable: false,
+ renderCell: (params) => {
+ if (String(params.value) === "true")
+ return
+ else
+ return ""
+ },
+ },
+
+ { field: 'code_session', headerName: 'Session/promo', flex: 1, hide: false, editable: false, },
+
+ { field: 'event_comment', headerName: 'Comment', flex: 1, hide: true, editable: false, },
+
+
+ ]
+
+
+ const [rowss, setRows] = useState([]);
+ const [selectionModel, setSelectionModel] = React.useState([]);
+
+ const [p_filtre1, setp_filtre1] = useState("ressource_humaine");
+ const [p_filtre1_value, setp_filtre1_value] = useState("ressource_humaine");
+
+ const [p_filtre2, setp_filtre2] = useState();
+ const [p_filtre2_value, setp_filtre2_value] = useState();
+
+
+ const [Dialog_1_message, setDialog_1_message] = React.useState(false);
+ const [Dialog_1_open, setDialog_1_open] = React.useState(false);
+ function Dialog_1_handle_change_participant_session(message) {
+ setDialog_1_message(message);
+ setDialog_1_open(true);
+ }
+
+ const Dialog_1_handleClose = () => {
+ //alert(" Utiliser le bouton 'fermer' ");
+ //setOpen(false);
+ };
+
+ const Dialog_1_handleClose_buton = () => {
+ setDialog_1_open(false);
+ };
+
+ const myRef = useRef(null)
+
+ const [mysy_events, setmysy_events] = useState();
+
+ const [mysy_list_event_for_map, setmysy_list_event_for_map] = useState();
+
+ const [Get_List_Agenda_Events_api, setGet_List_Agenda_Events_api] = useState();
+ const [Get_List_Agenda_Events_message, setGet_List_Agenda_Events_message] = useState();
+ const [Get_List_Agenda_Events_result, setGet_List_Agenda_Events_result] = useState();
+ function Get_List_Agenda_Events(event) {
+
+ var form = new FormData();
+ const stored_cookie = getCookie('tokenmysypart');
+
+ form.append("token", stored_cookie);
+ form.append("related_collection", props.related_collection);
+ form.append("related_collection_email", selected_attendee_email);
+
+
+
+ var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_Agenda_Event_List_Stagiaire/";
+
+ setLoading(true);
+
+ axios.post(myurl, form).then(res => {
+ //console.log(" In Get_List_Agenda_Events res.data.status = " + res.data.status);
+ //console.log(" In Get_List_Agenda_Events res.data.message r_class = " + res.data.message);
+ setLoading(false);
+ if (String(res.data.status) === String("true")) {
+ setGet_List_Agenda_Events_api("true");
+ setGet_List_Agenda_Events_result(res.data.message);
+ setmysy_list_event_for_map(res.data.message);
+
+ var tab_event = []
+ var filtre2 = res.data.message.map(obj => {
+
+ var local_val = {}
+
+ if (JSON.parse(obj).comment) {
+ local_val = {
+ 'title': String(JSON.parse(obj).event_title),
+ 'start': String(JSON.parse(obj).event_start),
+ 'end': String(JSON.parse(obj).event_end),
+ 'id': String(JSON.parse(obj)._id),
+
+ 'type': String(JSON.parse(obj).event_type),
+ 'justified': String(JSON.parse(obj).justified),
+ 'session_id': String(JSON.parse(obj).session_id),
+ 'code_session': String(JSON.parse(obj).code_session),
+ }
+ } else {
+ local_val = {
+ 'title': String(JSON.parse(obj).event_title),
+ 'start': String(JSON.parse(obj).event_start),
+ 'end': String(JSON.parse(obj).event_end),
+ 'id': String(JSON.parse(obj)._id),
+ 'comment': "",
+ 'type': String(JSON.parse(obj).event_type),
+ 'justified': String(JSON.parse(obj).justified),
+ 'session_id': String(JSON.parse(obj).session_id),
+ 'code_session': String(JSON.parse(obj).code_session),
+ }
+
+ }
+ tab_event.push(local_val);
+
+
+
+ });
+ setmysy_events(tab_event);
+
+
+
+ }
+ else if (String(res.data.status) === String("Err_Connexion")) {
+ alert('Erreur: ' + res.data.message);
+ history.push("/Connexion");
+ }
+ else {
+ setGet_List_Agenda_Events_api("false");
+ setGet_List_Agenda_Events_message(res.data.message);
+ }
+
+ }).catch((error) => {
+ setLoading(false);
+ console.warn('Not good man :( Get_List_Agenda_Events = ', error);
+ setGet_List_Agenda_Events_api("false");
+ //setmyApimyApiMessage("")
+ })
+ }
+
+
+ const [Get_Connected_User_List_Agenda_Events_api, setGet_Connected_User_List_Agenda_Events_api] = useState();
+ const [Get_Connected_User_List_Agenda_Events_message, setGet_Connected_User_List_Agenda_Events_message] = useState();
+ const [Get_Connected_User_List_Agenda_Events_result, setGet_Connected_User_List_Agenda_Events_result] = useState();
+ function Get_Connected_User_List_Agenda_Events(event) {
+
+ var form = new FormData();
+ const stored_cookie = getCookie('tokenmysypart');
+
+ form.append("token", stored_cookie);
+ form.append("related_collection", props.related_collection);
+ form.append("related_collection_email", attendee_email);
+
+
+
+ var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_Agenda_Event_List_Stagiaire/";
+
+ setLoading(true);
+
+ axios.post(myurl, form).then(res => {
+ //console.log(" In Get_Connected_User_List_Agenda_Events res.data.status = " + res.data.status);
+ //console.log(" In Get_Connected_User_List_Agenda_Events res.data.message r_class = " + res.data.message);
+
+ setLoading(false);
+ if (String(res.data.status) === String("true")) {
+ setGet_Connected_User_List_Agenda_Events_api("true");
+ setGet_Connected_User_List_Agenda_Events_result(res.data.message);
+ setmysy_list_event_for_map(res.data.message);
+
+ var tab_event = []
+ var filtre2 = res.data.message.map(obj => {
+
+ var local_val = {}
+ if (JSON.parse(obj).comment) {
+ local_val = {
+ 'title': String(JSON.parse(obj).event_title),
+ 'start': String(JSON.parse(obj).event_start),
+ 'end': String(JSON.parse(obj).event_end),
+ 'id': String(JSON.parse(obj)._id),
+ 'comment': String(JSON.parse(obj).comment),
+ 'type': String(JSON.parse(obj).event_type),
+ 'justified': String(JSON.parse(obj).justified),
+ 'session_id': String(JSON.parse(obj).session_id),
+ 'code_session': String(JSON.parse(obj).code_session),
+ }
+ } else {
+ local_val = {
+ 'title': String(JSON.parse(obj).event_title),
+ 'start': String(JSON.parse(obj).event_start),
+ 'end': String(JSON.parse(obj).event_end),
+ 'id': String(JSON.parse(obj)._id),
+ 'comment': "",
+ 'type': String(JSON.parse(obj).event_type),
+ 'justified': String(JSON.parse(obj).justified),
+ 'session_id': String(JSON.parse(obj).session_id),
+ 'code_session': String(JSON.parse(obj).code_session),
+ }
+
+ }
+ tab_event.push(local_val);
+
+
+
+ });
+ setmysy_events(tab_event);
+
+
+ }
+ else if (String(res.data.status) === String("Err_Connexion")) {
+ alert('Erreur: ' + res.data.message);
+ history.push("/Connexion");
+ }
+ else {
+ setGet_Connected_User_List_Agenda_Events_api("false");
+ setGet_Connected_User_List_Agenda_Events_message(res.data.message);
+ }
+
+ }).catch((error) => {
+
+ setLoading(false);
+ console.warn('Not good man :( Get_Connected_User_List_Agenda_Events = ', error);
+ setGet_Connected_User_List_Agenda_Events_api("false");
+ //setmyApimyApiMessage("")
+ })
+ }
+
+
+ const [Get_ENT_Apprenant_Absence_api, setGet_ENT_Apprenant_Absence_api] = useState();
+ const [Get_ENT_Apprenant_Absence_message, setGet_ENT_Apprenant_Absence_message] = useState();
+ const [Get_ENT_Apprenant_Absence_result, setGet_ENT_Apprenant_Absence_result] = useState();
+ function Get_ENT_Apprenant_Absence(event) {
+
+ var form = new FormData();
+ const stored_cookie = getCookie('tokenmysych');
+ form.append("token", stored_cookie);
+ form.append("apprenant_id", props.apprenant_id);
+
+
+ var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Ent_Student_Absence/";
+
+ setLoading(true);
+
+ axios.post(myurl, form).then(res => {
+ //console.log(" In Get_ENT_Apprenant_Absence res.data.status = " + res.data.status);
+ //console.log(" In Get_ENT_Apprenant_Absence res.data.message r_class = " + res.data.message);
+
+ setLoading(false);
+ if (String(res.data.status) === String("true")) {
+ setGet_ENT_Apprenant_Absence_api("true");
+ setGet_ENT_Apprenant_Absence_result(res.data.message);
+ setmysy_list_event_for_map(res.data.message);
+
+ var tab_event = []
+ var filtre2 = res.data.message.map(obj => {
+
+ var local_val = {}
+ if (JSON.parse(obj).comment) {
+ local_val = {
+ 'title': String(JSON.parse(obj).event_title),
+ 'start': String(JSON.parse(obj).event_start),
+ 'end': String(JSON.parse(obj).event_end),
+ 'id': String(JSON.parse(obj)._id),
+ 'comment': String(JSON.parse(obj).comment),
+ 'type': String(JSON.parse(obj).event_type),
+ 'justified': String(JSON.parse(obj).justified),
+ 'session_id': String(JSON.parse(obj).session_id),
+ 'code_session': String(JSON.parse(obj).code_session),
+ }
+ } else {
+ local_val = {
+ 'title': String(JSON.parse(obj).event_title),
+ 'start': String(JSON.parse(obj).event_start),
+ 'end': String(JSON.parse(obj).event_end),
+ 'id': String(JSON.parse(obj)._id),
+ 'comment': "",
+ 'type': String(JSON.parse(obj).event_type),
+ 'justified': String(JSON.parse(obj).justified),
+ 'session_id': String(JSON.parse(obj).session_id),
+ 'code_session': String(JSON.parse(obj).code_session),
+ }
+
+ }
+ tab_event.push(local_val);
+
+
+
+ });
+ setmysy_events(tab_event);
+
+
+ }
+ else if (String(res.data.status) === String("Err_Connexion")) {
+ alert('Erreur: ' + res.data.message);
+ history.push("/Connexion");
+ }
+ else {
+ setGet_ENT_Apprenant_Absence_api("false");
+ setGet_ENT_Apprenant_Absence_message(res.data.message);
+ }
+
+ }).catch((error) => {
+
+ setLoading(false);
+ console.warn('Not good man :( Get_ENT_Apprenant_Absence = ', error);
+ setGet_ENT_Apprenant_Absence_api("false");
+ //setmyApimyApiMessage("")
+ })
+ }
+
+
+ const [Get_ENT_Apprenant_Total_Heure_Absence_api, setGet_ENT_Apprenant_Total_Heure_Absence_api] = useState();
+ const [Get_ENT_Apprenant_Total_Heure_Absence_message, setGet_ENT_Apprenant_Total_Heure_Absence_message] = useState();
+ const [Get_ENT_Apprenant_Total_Heure_Absence_result, setGet_ENT_Apprenant_Total_Heure_Absence_result] = useState();
+ function Get_ENT_Apprenant_Total_Heure_Absence(event) {
+
+ var form = new FormData();
+ const stored_cookie = getCookie('tokenmysych');
+ form.append("token", stored_cookie);
+ form.append("apprenant_id", props.apprenant_id);
+
+
+ var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Ent_Student_total_Heure_Absence/";
+
+ setLoading(true);
+
+ axios.post(myurl, form).then(res => {
+ //console.log(" In Get_ENT_Apprenant_Total_Heure_Absence res.data.status = " + res.data.status);
+ console.log(" In Get_ENT_Apprenant_Total_Heure_Absence res.data.message r_class = " + res.data.message);
+
+ setLoading(false);
+ if (String(res.data.status) === String("true")) {
+ setGet_ENT_Apprenant_Total_Heure_Absence_api("true");
+ setGet_ENT_Apprenant_Total_Heure_Absence_result(res.data.message);
+
+
+ }
+ else if (String(res.data.status) === String("Err_Connexion")) {
+ alert('Erreur: ' + res.data.message);
+ history.push("/Connexion");
+ }
+ else {
+ setGet_ENT_Apprenant_Total_Heure_Absence_api("false");
+ setGet_ENT_Apprenant_Total_Heure_Absence_message(res.data.message);
+ }
+
+ }).catch((error) => {
+
+ setLoading(false);
+ console.warn('Not good man :( Get_ENT_Apprenant_Total_Heure_Absence = ', error);
+ setGet_ENT_Apprenant_Total_Heure_Absence_api("false");
+ //setmyApimyApiMessage("")
+ })
+ }
+
+
+
+
+ const [Get_List_Agenda_Events_For_Given_User_api, setGet_List_Agenda_Events_For_Given_User_api] = useState();
+ const [Get_List_Agenda_Events_For_Given_User_message, setGet_List_Agenda_Events_For_Given_User_message] = useState();
+ const [Get_List_Agenda_Events_For_Given_User_result, setGet_List_Agenda_Events_For_Given_User_result] = useState();
+ function Get_List_Agenda_Events_For_Given_User(local_selected_attendee_email) {
+
+ var local_related_collection = p_filtre1;
+
+
+ var form = new FormData();
+ const stored_cookie = getCookie('tokenmysypart');
+
+ form.append("token", stored_cookie);
+ form.append("related_collection", props.related_collection);
+ form.append("related_collection_email", local_selected_attendee_email);
+
+
+
+ var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_Agenda_Event_List_Stagiaire/";
+
+ setLoading(true);
+
+ axios.post(myurl, form).then(res => {
+ //console.log(" In Get_List_Agenda_Events_For_Given_User res.data.status = " + res.data.status);
+ //console.log(" In Get_List_Agenda_Events_For_Given_User res.data.message r_class = " + res.data.message);
+ setLoading(false);
+ if (String(res.data.status) === String("true")) {
+ setGet_List_Agenda_Events_For_Given_User_api("true");
+ setGet_List_Agenda_Events_For_Given_User_result(res.data.message);
+ setmysy_list_event_for_map(res.data.message);
+
+ var tab_event = []
+ var filtre2 = res.data.message.map(obj => {
+
+ var local_val = {}
+ if (JSON.parse(obj).comment) {
+ local_val = {
+ 'title': String(JSON.parse(obj).event_title),
+ 'start': String(JSON.parse(obj).event_start),
+ 'end': String(JSON.parse(obj).event_end),
+ 'id': String(JSON.parse(obj)._id),
+ 'comment': String(JSON.parse(obj).comment),
+ 'type': String(JSON.parse(obj).event_type),
+ 'justified': String(JSON.parse(obj).justified),
+ 'session_id': String(JSON.parse(obj).session_id),
+ 'code_session': String(JSON.parse(obj).code_session),
+ }
+ } else {
+ local_val = {
+ 'title': String(JSON.parse(obj).event_title),
+ 'start': String(JSON.parse(obj).event_start),
+ 'end': String(JSON.parse(obj).event_end),
+ 'id': String(JSON.parse(obj)._id),
+ 'comment': "",
+ 'type': String(JSON.parse(obj).event_type),
+ 'justified': String(JSON.parse(obj).justified),
+ 'session_id': String(JSON.parse(obj).session_id),
+ 'code_session': String(JSON.parse(obj).code_session),
+ }
+
+ }
+ tab_event.push(local_val);
+
+
+
+ });
+ setmysy_events(tab_event);
+
+
+ }
+ else if (String(res.data.status) === String("Err_Connexion")) {
+ alert('Erreur: ' + res.data.message);
+ history.push("/Connexion");
+ }
+ else {
+ setGet_List_Agenda_Events_For_Given_User_api("false");
+ setGet_List_Agenda_Events_For_Given_User_message(res.data.message);
+ }
+
+ }).catch((error) => {
+ setLoading(false);
+ console.warn('Not good man :( Get_List_Agenda_Events_For_Given_User = ', error);
+ setGet_List_Agenda_Events_For_Given_User_api("false");
+ //setmyApimyApiMessage("")
+ })
+ }
+
+
+
+ const [GetAttendee_api, setGetAttendee_api] = useState();
+ const [GetAttendee_message, setGetAttendee_message] = useState();
+ const [GetAttendee_result, setGetAttendee_result] = useState();
+ function Get_Ressource_Data(local_selected_attendee_email) {
+
+ var local_related_collection = p_filtre1;
+
+ var form = new FormData();
+
+ const stored_cookie = getCookie('tokenmysypart');
+ form.append("token", stored_cookie);
+ form.append("related_collection", props.related_collection);
+ form.append("related_collection_email", local_selected_attendee_email);
+
+ var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_Ressource_Info_Data_Satgiaire/";
+
+ axios.post(myurl, form).then(res => {
+
+ if (String(res.data.status) === "true") {
+ //console.log(" In Get_Ressource_Data res.data.status = " + res.data.status);
+ //console.log(" In Get_Ressource_Data res.data.message r_class = " + res.data.message);
+ setGetAttendee_api("true");
+ setGetAttendee_result(res.data.message);
+ var nom_prenom = "";
+
+
+ if (res.data.message.length > 0) {
+ var mylocal_employe = JSON.parse(res.data.message);
+
+
+ if (JSON.parse(res.data.message).nom) {
+ nom_prenom = JSON.parse(res.data.message).nom;
+ }
+
+ if (JSON.parse(res.data.message).prenom) {
+ nom_prenom = String(nom_prenom) + " " + String(JSON.parse(res.data.message).prenom);
+ }
+
+
+ }
+ setagenda_owner_name(nom_prenom);
+
+
+ setagenda_owner_type(" Stagiaire");
+
+
+ } 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);
+ // alert(res.data.message);
+ setdisplay_alert_mysy("1");
+ setalert_message(res.data.message);
+ setalert_type("error");
+ }
+
+ }).catch((error) => {
+ console.warn('Not good man :( Get_Ressource_Data = ', error);
+ setGetAttendee_api("false");
+ alert(" Impossible de recuperer les données de l'employé");
+ //setmyApimyApiMessage("")
+ })
+ }
+
+
+ const myEventsList = []
+ const [events, setEvents] = useState([]);
+ const handleSelect = (info) => {
+
+ if (String(selected_attendee_email).length < 2) {
+ // alert(" Vous devez choisir un stagiaire");
+
+ setdisplay_alert_mysy("1");
+ setalert_message(" Vous devez choisir un stagiaire");
+ setalert_type("error");
+ return;
+ }
+
+
+ setp_detail_title("Nouvelle Absence")
+ setp_detail_start(info.start)
+ setp_detail_end(info.end)
+ setp_detail_comment("");
+ setp_detail_event_id("");
+ setp_detail_justified(false);
+ setp_detail_event_type("absence");
+
+
+ setStartDate(info.start);
+ setendDate(info.end);
+ setDialog_1_open(true);
+
+
+
+
+ /*const { start, end } = info;
+ const eventNamePrompt = prompt("Enter, Nom evenment");
+ if (eventNamePrompt) {
+
+ setEvents([
+ ...events,
+ {
+ start,
+ end,
+ title: eventNamePrompt,
+ id: uuid(),
+ },
+ ]);
+ }*/
+ };
+
+
+ const handleSelect_list = (info) => {
+
+ if (String(selected_attendee_email).length < 2) {
+
+ // alert(res.data.message);
+ setdisplay_alert_mysy("1");
+ setalert_message(" Vous devez choisir un stagiaire");
+ setalert_type("error");
+ return;
+ }
+
+ var new_start_date = new Date();
+ var new_end_date = new Date();
+
+ setp_detail_title("Nouvelle Absence")
+ setp_detail_start(new_start_date)
+ setp_detail_end(new_start_date)
+ setp_detail_comment("");
+ setp_detail_event_id("");
+ setp_detail_justified(false);
+ setp_detail_event_type("absence");
+
+ setStartDate(new_start_date);
+ setendDate(new_start_date);
+ setDialog_1_open(true);
+
+
+ };
+
+
+ const renderEventContent = (eventInfo) => {
+ //console.log(eventInfo);
+ return (
+ <>
+
{eventInfo.timeText}
+ {eventInfo.event.extendedProps.code_session &&
{eventInfo.event.extendedProps.code_session}}
+ >
+ )
+ };
+
+ const handleEventClick = (arg) => {
+
+
+ if (String(selected_attendee_email).length < 2) {
+ setdisplay_alert_mysy("1");
+ setalert_message(" Vous devez choisir un stagiaire");
+ setalert_type("error");
+ return;
+ }
+
+
+ setp_detail_title(arg.event.title)
+ setp_detail_start(arg.event.start)
+ setp_detail_end(arg.event.end)
+ setp_detail_event_id(arg.event.id);
+
+ if (arg.event.extendedProps.comment) {
+ setp_detail_comment(arg.event.extendedProps.comment);
+ }
+ else
+ setp_detail_comment("");
+
+
+ if (arg.event.extendedProps.justified) {
+ if (String(arg.event.extendedProps.justified) === "true")
+ setp_detail_justified(true);
+
+ else
+ setp_detail_justified(false);
+ }
+ else
+ setp_detail_justified(false);
+
+
+ if (arg.event.extendedProps.code_session) {
+ setp_detail_session_code(arg.event.extendedProps.code_session);
+ }
+ else
+ setp_detail_session_code("");
+
+ if (arg.event.extendedProps.type) {
+ setp_detail_event_type(arg.event.extendedProps.type);
+ }
+ else
+ setp_detail_event_type("");
+
+
+ setStartDate(arg.event.start);
+ setendDate(arg.event.end);
+ setDialog_1_open(true);
+
+
+ }
+
+
+
+ const handleEventClick_from_list = (selected_row_id) => {
+
+ var line = JSON.parse(mysy_list_event_for_map[selected_row_id]);
+
+
+
+ if (String(selected_attendee_email).length < 2) {
+ // alert(" Vous devez choisir un stagiaire");
+ // alert(res.data.message);
+ setdisplay_alert_mysy("1");
+ setalert_message(" Vous devez choisir un stagiaire");
+ setalert_type("error");
+ return;
+ }
+
+
+ setp_detail_title(line.event_title)
+ setp_detail_start(line.event_start)
+ setp_detail_end(line.event_end)
+ setp_detail_event_id(line._id);
+
+ if (line.comment) {
+ setp_detail_comment(line.comment);
+ }
+ else
+ setp_detail_comment("");
+
+
+ if (line.justified) {
+ if (String(line) === "true")
+ setp_detail_justified(true);
+
+ else
+ setp_detail_justified(false);
+
+
+ }
+ else
+ setp_detail_justified(false);
+
+
+
+ if (line.type) {
+ setp_detail_event_type(line.type);
+ }
+ else
+ setp_detail_event_type("");
+
+
+ if (line.code_session) {
+ setp_detail_session_code(line.code_session);
+ }
+ else
+ setp_detail_session_code("");
+
+ // console.log(" (line.event_start =", line.event_start);
+
+
+
+ var new_start_date = new Date(moment(line.event_start, "YYYY/MM/DD HH:mm"));
+ var new_end_date = new Date(moment(line.event_end, "YYYY/MM/DD HH:mm"));
+
+
+ setStartDate(new_start_date);
+ setendDate(new_end_date);
+ setDialog_1_open(true);
+
+ }
+
+
+ function Close_Dialog_Detail_Event_open() {
+ setp_detail_title("Nouvelle Absence")
+ setp_detail_start()
+ setp_detail_end()
+ setp_detail_comment("");
+ setp_detail_event_id("");
+ setp_detail_session_code("");
+ setp_detail_justified(false);
+ setp_detail_event_type("absence");
+ setDialog_1_open(false);
+ }
+
+
+
+ const [Partner_Debut_Journee, setPartner_Debut_Journee] = useState("7:00");
+ const [Partner_Fin_Journee, setPartner_Fin_Journee] = useState("20:00");
+
+
+ const [Get_Partner_Debut_Fin_Journee_api, setGet_Partner_Debut_Fin_Journee_api] = useState();
+ const [Get_Partner_Debut_Fin_Journee_message, setGet_Partner_Debut_Fin_Journee_message] = useState();
+ const [Get_Partner_Debut_Fin_Journee_result, setGet_Partner_Debut_Fin_Journee_result] = useState();
+ function Get_Partner_Debut_Fin_Journee(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/Get_Default_Debut_Fin_journee_Modele_Journee/";
+
+ setLoading(true);
+
+ axios.post(myurl, form).then(res => {
+ //console.log(" In Get_Partner_Debut_Fin_Journee res.data.status = " + res.data.status);
+ //console.log(" In Get_Partner_Debut_Fin_Journee res.data.message r_class = " + res.data.message);
+
+ setLoading(false);
+ if (String(res.data.status) === String("true")) {
+ setGet_Partner_Debut_Fin_Journee_api("true");
+ setGet_Partner_Debut_Fin_Journee_result(res.data.message);
+
+
+ var val_json = JSON.parse(res.data.message);
+
+ if (JSON.parse(res.data.message).planning_debut_journee)
+ setPartner_Debut_Journee(String(JSON.parse(res.data.message).planning_debut_journee))
+
+ if (JSON.parse(res.data.message).planning_fin_journee)
+ setPartner_Fin_Journee(String(JSON.parse(res.data.message).planning_fin_journee))
+
+
+ }
+ else if (String(res.data.status) === String("Err_Connexion")) {
+ alert('Erreur: ' + res.data.message);
+ history.push("/Connexion");
+ }
+ else {
+ setGet_Partner_Debut_Fin_Journee_api("false");
+ setGet_Partner_Debut_Fin_Journee_message(res.data.message);
+ }
+
+ }).catch((error) => {
+
+ setLoading(false);
+ console.warn('Not good man :( Get_Partner_Debut_Fin_Journee = ', error);
+ setGet_Partner_Debut_Fin_Journee_api("false");
+ //setmyApimyApiMessage("")
+ })
+ }
+
+
+ useEffect(() => {
+
+
+ // Get_Connected_User_List_Agenda_Events();
+ //Get_Partner_Debut_Fin_Journee();
+ Get_ENT_Apprenant_Absence();
+ Get_ENT_Apprenant_Total_Heure_Absence();
+ //Getall_Training_Employee_No_Filter();
+ //Getall_Training_Materiel_No_Filter();
+
+ }, [attendee_email])
+
+
+
+ const [p_detail_event_id, setp_detail_event_id] = useState();
+ const [p_detail_title, setp_detail_title] = useState();
+ const [p_detail_start, setp_detail_start] = useState();
+
+ const [p_detail_session_code, setp_detail_session_code] = useState("");
+
+ const [p_detail_end, setp_detail_end] = useState();
+ const [p_detail_comment, setp_detail_comment] = useState();
+
+ const [p_detail_justified, setp_detail_justified] = useState(false);
+ const [p_detail_event_type, setp_detail_event_type] = useState();
+
+
+ const [startDate, setStartDate] = useState(new Date());
+ const [endDate, setendDate] = useState(new Date());
+
+
+
+
+
+ const [Update_One_Agenda_Event_api, setUpdate_One_Agenda_Event_api] = useState();
+ const [Update_One_Agenda_Event_message, setUpdate_One_Agenda_Event_message] = useState();
+ const [Update_One_Agenda_Event_result, setUpdate_One_Agenda_Event_result] = useState();
+ const Update_One_Agenda_Event = event => {
+
+ var local_related_collection = p_filtre1;
+
+ if (String(selected_attendee_email).length < 2) {
+ // alert(" Vous devez un stagiaire");
+ setdisplay_alert_mysy("1");
+ setalert_message(" Vous devez choisir un stagiaire");
+ setalert_type("error");
+ return;
+ }
+
+ if (moment(endDate) <= moment(startDate)) {
+ //alert(" Les dates de début et de fin sont incohérentes");
+ setdisplay_alert_mysy("1");
+ setalert_message(" Les dates de début et de fin sont incohérentes");
+ setalert_type("error");
+ return;
+ }
+ var new_title = p_detail_title;
+ var new_start_date = moment(startDate).format();
+ var new_end_date = moment(endDate).format();
+ var event_id = p_detail_event_id
+
+ //console.log(" ### new event = ", new_title, " -- ", new_start_date, " --- ", new_end_date, " : setp_detail_event_id = ", p_detail_event_id);
+
+
+ var form = new FormData();
+ //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
+
+
+ const stored_cookie = getCookie('tokenmysypart');
+ form.append("token", stored_cookie);
+ form.append("_id", p_detail_event_id);
+ form.append("inscription_id", props.inscription_id);
+ form.append("related_collection", props.related_collection);
+
+ form.append("event_title", new_title);
+ form.append("event_start", new_start_date);
+ form.append("event_end", new_end_date);
+ form.append("related_collection_email", selected_attendee_email);
+ form.append("comment", p_detail_comment);
+
+ form.append("event_type", p_detail_event_type);
+ form.append("justified", p_detail_justified);
+
+
+
+ //console.log(" form == ", form);
+
+ var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Update_Agenda_Event_Stagiaire/";
+
+ setLoading(true);
+ axios.post(myurl, form).then(res => {
+ //console.log(" In Update_One_Agenda_Event res.data.status = " + res.data.status);
+ //console.log(" In Update_One_Agenda_Event res.data.message r_class = " + res.data.message);
+
+ setLoading(false);
+ if (String(res.data.status) === String("true")) {
+ setUpdate_One_Agenda_Event_api("true");
+ setUpdate_One_Agenda_Event_result(res.data.message);
+
+ Get_List_Agenda_Events_For_Given_User(selected_attendee_email);
+
+ setp_detail_event_id();
+ setp_detail_title();
+ setp_detail_start();
+ setp_detail_end();
+ setp_detail_comment();
+ setp_detail_justified(false);
+ setp_detail_event_type();
+
+
+ // alert(res.data.message);
+ setdisplay_alert_mysy("1");
+ setalert_message(res.data.message);
+ setalert_type("success");
+ Close_Dialog_Detail_Event_open();
+
+ }
+ else {
+ setUpdate_One_Agenda_Event_api("false");
+ setUpdate_One_Agenda_Event_message(res.data.message);
+ // alert(res.data.message);
+ setdisplay_alert_mysy("1");
+ setalert_message(res.data.message);
+ setalert_type("error");
+ }
+
+ }).catch((error) => {
+
+
+ setLoading(false);
+ console.warn('UpdateStagiaireData : Not good man :( Update_One_Agenda_Event = ' + error);
+ setUpdate_One_Agenda_Event_api("false");
+ alert(" Impossible de mettre à jour l'événement ");
+
+ })
+ }
+
+
+ const [Delete_One_Agenda_Event_api, setDelete_One_Agenda_Event_api] = useState();
+ const [Delete_One_Agenda_Event_message, setDelete_One_Agenda_Event_message] = useState();
+ const [Delete_One_Agenda_Event_result, setDelete_One_Agenda_Event_result] = useState();
+ function Delete_One_Agenda_Event() {
+
+
+ var event_id = p_detail_event_id
+
+ var form = new FormData();
+ //form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
+
+
+ const stored_cookie = getCookie('tokenmysypart');
+ form.append("token", stored_cookie);
+ form.append("_id", p_detail_event_id);
+
+
+ var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_Agenda_Event/";
+
+ setLoading(true);
+
+ axios.post(myurl, form).then(res => {
+ //console.log(" In Delete_One_Agenda_Event res.data.status = " + res.data.status);
+ //console.log(" In Delete_One_Agenda_Event res.data.message r_class = " + res.data.message);
+
+
+ setLoading(false);
+ if (String(res.data.status) === String("true")) {
+ setDelete_One_Agenda_Event_api("true");
+ setDelete_One_Agenda_Event_result(res.data.message);
+
+ Get_List_Agenda_Events();
+
+ setp_detail_event_id();
+ setp_detail_title();
+ setp_detail_start();
+ setp_detail_end();
+ setp_detail_comment();
+
+ setp_detail_justified(false);
+ setp_detail_event_type();
+
+
+ // alert(res.data.message);
+ setdisplay_alert_mysy("1");
+ setalert_message(res.data.message);
+ setalert_type("success");
+ Close_Dialog_Detail_Event_open();
+
+ }
+ else {
+ setDelete_One_Agenda_Event_api("false");
+ setDelete_One_Agenda_Event_message(res.data.message);
+ //alert(res.data.message);
+ setdisplay_alert_mysy("1");
+ setalert_message(res.data.message);
+ setalert_type("error");
+ }
+
+ }).catch((error) => {
+
+ setLoading(false);
+
+ console.warn('UpdateStagiaireData : Not good man :( Delete_One_Agenda_Event = ' + error);
+ setDelete_One_Agenda_Event_api("false");
+ alert(" Impossible de supprimer l'événement ");
+
+ })
+ }
+
+
+
+ const [display_other_agenda, setdisplay_other_agenda] = useState();
+
+ const [agenda_owner_name, setagenda_owner_name] = useState("Mon Planning");
+ const [agenda_owner_type, setagenda_owner_type] = useState("Employe");
+
+
+ const [display_view, setdisplay_view] = useState("planning");
+ function func_display_planning_view() {
+ setdisplay_view("planning");
+ }
+
+ function func_display_list_view() {
+ setdisplay_view("list");
+ }
+
+
+ const [display_alert_mysy, setdisplay_alert_mysy] = useState("");
+ const [alert_message, setalert_message] = useState("");
+ const [alert_type, setalert_type] = useState("");
+
+ function clear_alert_message() {
+ setalert_message("");
+ }
+ function clear_alert_type() {
+ setalert_type("");
+ }
+ function clear_display_alert_mysy() {
+ setdisplay_alert_mysy("");
+ }
+
+
+
+ return (
+
+ {isLoading &&
}
+
+ {/*** Affichage des messages d'alerte*/}
+ {display_alert_mysy && String(display_alert_mysy) === "1" &&
+
+ }
+ {/*** FIN Affichage des messages d'alerte*/}
+
+
+
+
Absences - {Get_ENT_Apprenant_Total_Heure_Absence_result && {JSON.parse(Get_ENT_Apprenant_Total_Heure_Absence_result).total_heure_absence} heure(s) }
+
+
+
+ Affichage :
+
+
+
+
+ {String(display_view) === "planning" &&
+
+ {Get_ENT_Apprenant_Total_Heure_Absence_result &&
}
+
+
+ }
+ //plugins={[timeGridPlugin]}
+ plugins={[timeGridPlugin, daygridPlugin, interactionPlugin]}
+ views={["dayGridMonth", "dayGridWeek", "dayGridDay"]}
+ slotMinTime={Partner_Debut_Journee}
+ slotMaxTime={Partner_Fin_Journee}
+ scrollTime='08:00'
+ displayEventEnd={true}
+ eventContent={renderEventContent}
+ eventClick={handleEventClick}
+ editable={false}
+ />
+
+
+
+
}
+
+
+ {String(display_view) === "list" &&
+
+
+
+
+
+
+ {Get_ENT_Apprenant_Absence_result && Get_ENT_Apprenant_Absence_result.length > 0 &&
+
+
+ {
+ setSelectionModel(newSelectionModel);
+ /* if (newSelectionModel.length === 1)
+ handleClick_edit_config_From_Line(newSelectionModel);
+ if (newSelectionModel.length !== 1) {
+ setp_detail_config_valeur();
+ setp_detail_config_point();
+ setConfig_data_changed();
+ setconfig_data_edit_mode();
+ setdisplay_detail_config();
+
+
+ }*/
+ }}
+ selectionModel={selectionModel}
+
+ localeText={frFR.components.MuiDataGrid.defaultProps.localeText}
+ rows={mysy_list_event_for_map.map((item, index) => (
+ {
+ id: index,
+ _id: JSON.parse(item)._id,
+ event_title: JSON.parse(item).event_title,
+ event_start: JSON.parse(item).event_start,
+ event_end: JSON.parse(item).event_end,
+ event_type: JSON.parse(item).event_type,
+ justified: JSON.parse(item).justified,
+ event_comment: JSON.parse(item).comment,
+ session_id: JSON.parse(item).session_id,
+ code_session: JSON.parse(item).code_session,
+
+ }
+ ))}
+
+ columns={columns}
+ pageSize={10}
+ className="datagridclass"
+
+ onRowDoubleClick={(newSelectionModel) => {
+ handleEventClick_from_list(newSelectionModel.row.id)
+ // handleClick_edit_config_From_Line(newSelectionModel.row.id);
+
+ }}
+
+ rowsPerPageOptions={[10]}
+ //disableSelectionOnClick
+ components={{
+ Toolbar: GridToolbar,
+ }}
+ //sx={datagridSx}
+ getCellClassName={(params) => {
+
+
+ //field === "order_header_status"
+ if (params.field === "order_header_status" && String(params.value) == "0") {
+ return 'cell--status--brouillon';
+ }
+
+ if (params.field === "order_header_status" && String(params.value) == "1") {
+
+ return 'cell--status--encours';
+ }
+
+ if (params.field === "order_header_status" && String(params.value) == "2") {
+ return 'cell--status--traite';
+ }
+
+ if (params.field === "order_header_status" && String(params.value) == "3") {
+ return 'cell--status--facture';
+ }
+
+ }}
+ getRowClassName={(params) => {
+
+ if (String(params.row.status) === "-1") {
+ return 'line--statut--annule';
+ }
+ if (String(params.row.status) === "0") {
+ return 'line--statut--preinscrit';
+ }
+ if (String(params.row.status) === "1") {
+ return 'line--statut--inscrit';
+ }
+ }}
+
+
+ />
+
+
+
+
}
+
+
+
+
+ {/*
*/}
+
+
+
+
+
}
+
+
+
+ )
+}
+
+
+export default Module_ENT_Absence;
+
+const local_css = `
+.react-datepicker-wrapper{
+width: 100%;
+
+ }
+`;
\ No newline at end of file
diff --git a/src/components/Module_Ent_Internal_Email_Management.js b/src/components/Module_Ent_Internal_Email_Management.js
index cc19199..afbf8d2 100644
--- a/src/components/Module_Ent_Internal_Email_Management.js
+++ b/src/components/Module_Ent_Internal_Email_Management.js
@@ -717,8 +717,8 @@ const Module_Ent_Internal_Email_Management = (props) => {
if (String(res.data.status) === "true") {
//console.log(" In Get_Given_Email_Data res.data.status = " + res.data.status);
- console.log(" In Get_Given_Email_Data res.data.message r_class = " + res.data.message);
- console.log(" In Get_Given_Email_Data res.data.message len = " + String(res.data.message).length);
+ // console.log(" In Get_Given_Email_Data res.data.message r_class = " + res.data.message);
+ // console.log(" In Get_Given_Email_Data res.data.message len = " + String(res.data.message).length);
setLoading(false);
setGet_Given_Email_Data_api("true");
diff --git a/src/components/Module_Ent_Mes_Formations.js b/src/components/Module_Ent_Mes_Formations.js
index 218540e..8dacbf5 100644
--- a/src/components/Module_Ent_Mes_Formations.js
+++ b/src/components/Module_Ent_Mes_Formations.js
@@ -46,7 +46,7 @@ import ToggleSwitch from "./ToggleSwitch";
import { FcSpeaker } from "react-icons/fc";
import Autocomplete from '@mui/material/Autocomplete';
import { FcOpenedFolder } from "react-icons/fc";
-import Module_Absence from "./Module_Absence";
+import Module_ENT_Absence from "./Module_ENT_Absence";
import { RiMoreFill } from "react-icons/ri";
import fr from 'date-fns/locale/fr';
import { registerLocale } from 'react-datepicker';
@@ -115,7 +115,7 @@ const useStyles = makeStyles((theme) => ({
color: 'gray',
},
}));
-
+
const Module_Ent_Mes_Formations = (props) => {
registerLocale('fr', fr);
const classes = useStyles();
@@ -398,8 +398,6 @@ const Module_Ent_Mes_Formations = (props) => {
}
-
-
if (stored_type_connexion_cookie !== "tuteur") {
Get_List_Ent_Formation(props.apprenant_id);
} else {
@@ -782,8 +780,26 @@ const Module_Ent_Mes_Formations = (props) => {
}
+ function submenu_absences() {
+ setsubmenu("absences");
+ submenu_color_management("absences");
+ if (document.getElementById('myRef_detail_subelement')) {
+ var divh = document.getElementById('myRef_detail_subelement').offsetTop + 200;
+ if (divh < 1500) {
+ divh = 1500
+ }
+
+ window.scrollTo({
+ top: divh,
+ behavior: "smooth",
+ });
+ }
+
+ }
+
+
function submenu_color_management(current_menu) {
- const list_sous_menu = ['detail', 'planning', 'notes', 'piece_jointe', ""]
+ const list_sous_menu = ['detail', 'planning', 'notes', 'piece_jointe', "", "absences"]
for (let i = 0; i < list_sous_menu.length; i++) {
@@ -2168,12 +2184,12 @@ const Module_Ent_Mes_Formations = (props) => {
// Gestion des cellule a distance ou presentiel
'& .cell--distantiel': {
backgroundColor: '#AFE1AF',
- color: "#0a2a4d",
+ color: "#0a2a4d",
},
'& .cell--presentiel': {
backgroundColor: '#AFE1AF',
- color: "#0a2a4d",
+ color: "#0a2a4d",
},
@@ -2185,11 +2201,11 @@ const Module_Ent_Mes_Formations = (props) => {
'& .line--statut--inscrit': {
backgroundColor: '#CEF6D8',
- color: "#0a2a4d",
+ color: "#0a2a4d",
},
'& .line--statut--preinscrit': {
backgroundColor: '#F7F2E0',
- color: "#0a2a4d",
+ color: "#0a2a4d",
},
@@ -2406,6 +2422,7 @@ const Module_Ent_Mes_Formations = (props) => {
+
}
{selected_id && String(selected_id).length > 0 &&
@@ -2476,7 +2493,7 @@ const Module_Ent_Mes_Formations = (props) => {
height={550}
locales={allLocales}
locale={'fr'}
-
+
selectable
//events={events}
events={Getall_Sequence_Of_Session_result_planning_view}
@@ -2496,7 +2513,7 @@ const Module_Ent_Mes_Formations = (props) => {
scrollTime='08:00'
displayEventEnd={true}
eventContent={renderEventContent}
- eventClick={handleEventClick}
+ eventClick={handleEventClick}
editable={false}
@@ -2537,15 +2554,15 @@ const Module_Ent_Mes_Formations = (props) => {
'& .line--statut--pair': {
backgroundColor: 'rgba(235, 235, 235, .7)',
- color: "#0a2a4d",
+ color: "#0a2a4d",
},
'& .line--statut--impair': {
backgroundColor: '#FFFFFF',
- color: "#0a2a4d",
+ color: "#0a2a4d",
},
'& .line--statut--selected': {
backgroundColor: '#e9f7f1',
- color: "#0a2a4d",
+ color: "#0a2a4d",
},
}}
@@ -2676,15 +2693,15 @@ const Module_Ent_Mes_Formations = (props) => {
'& .line--statut--pair': {
backgroundColor: 'rgba(235, 235, 235, .7)',
- color: "#0a2a4d",
+ color: "#0a2a4d",
},
'& .line--statut--impair': {
backgroundColor: '#FFFFFF',
- color: "#0a2a4d",
+ color: "#0a2a4d",
},
'& .line--statut--selected': {
backgroundColor: '#e9f7f1',
- color: "#0a2a4d",
+ color: "#0a2a4d",
},
}}
@@ -2808,6 +2825,16 @@ const Module_Ent_Mes_Formations = (props) => {
}
+
+ {String(submenu) === "absences" && Get_Given_Class_Data_result && Get_Given_Class_Data_result.length > 0 &&
+
+
+
+
+
}
+
);
diff --git a/src/components/Module_Ent_Mon_Planning.js b/src/components/Module_Ent_Mon_Planning.js
index ebfa499..758b48d 100644
--- a/src/components/Module_Ent_Mon_Planning.js
+++ b/src/components/Module_Ent_Mon_Planning.js
@@ -1010,8 +1010,6 @@ const Module_Ent_Mon_Planning = (props) => {
displayEventEnd={true}
eventContent={renderEventContent}
eventClick={handleEventClick}
-
-
/>
@@ -1035,6 +1033,6 @@ export default Module_Ent_Mon_Planning;
const local_css = `
.react-datepicker-wrapper{
width: 100%;
-
+
}
`;
\ No newline at end of file
diff --git a/src/components/Module_Internal_Email_Management.js b/src/components/Module_Internal_Email_Management.js
index b438dba..2835ae5 100644
--- a/src/components/Module_Internal_Email_Management.js
+++ b/src/components/Module_Internal_Email_Management.js
@@ -715,8 +715,8 @@ const Module_Internal_Email_Management = (props) => {
axios.post(myurl, form).then(res => {
if (String(res.data.status) === "true") {
- console.log(" In Get_Given_Email_Data res.data.status = " + res.data.status);
- console.log(" In Get_Given_Email_Data res.data.message r_class = " + res.data.message);
+ // console.log(" In Get_Given_Email_Data res.data.status = " + res.data.status);
+ // console.log(" In Get_Given_Email_Data res.data.message r_class = " + res.data.message);
//console.log(" In Get_Given_Email_Data res.data.message len = " + String(res.data.message).length);
setLoading(false);
diff --git a/src/components/Module_Intranet_Client_Internal_Email_Management.js b/src/components/Module_Intranet_Client_Internal_Email_Management.js
index e346a76..6ff4931 100644
--- a/src/components/Module_Intranet_Client_Internal_Email_Management.js
+++ b/src/components/Module_Intranet_Client_Internal_Email_Management.js
@@ -717,8 +717,8 @@ const Module_Intranet_Client_Internal_Email_Management = (props) => {
if (String(res.data.status) === "true") {
//console.log(" In Get_Given_Email_Data res.data.status = " + res.data.status);
- console.log(" In Get_Given_Email_Data res.data.message r_class = " + res.data.message);
- console.log(" In Get_Given_Email_Data res.data.message len = " + String(res.data.message).length);
+ // console.log(" In Get_Given_Email_Data res.data.message r_class = " + res.data.message);
+ // console.log(" In Get_Given_Email_Data res.data.message len = " + String(res.data.message).length);
setLoading(false);
setGet_Given_Email_Data_api("true");
diff --git a/src/components/Partner.js b/src/components/Partner.js
index 3e8f8ea..878dc68 100644
--- a/src/components/Partner.js
+++ b/src/components/Partner.js
@@ -167,53 +167,54 @@ import {
chevronsRight
} from "lucide-react";
-const menuData = [
+import { Presentation, CalendarDays } from "lucide-react";
+import { Landmark } from 'lucide-react';
+import { SquareSplitHorizontal } from 'lucide-react';
+import { Scale } from 'lucide-react';
+
+const menuData_Full = [
{
bloc_title: "Compte",
- title: "Compte",
+ title: "Mon compte",
menu_color: "#7FB069",
+ hasChildren: true,
items: [
{
- label: "Mon compte", icon: Home, items_color: "#7FB069", hasChildren: true,
+ label: "Info compte", name: "Mon compte", icon: Home, items_color: "#7FB069", hasChildren: true,
children: [
- { label: "Informations" },
- { label: "Activité" },
- { label: "Tableau De Bord" },
- { label: "Abonnement" },
- { label: "Facture MYSY" },
+ { label: "Informations", name: "Informations", items_color: "#7FB069" },
+ { label: "Activité", name: "Activité", items_color: "#7FB069" },
+ { label: "Tableau De Bord", name: "Tableau De Bord", items_color: "#7FB069" },
+ { label: "Abonnement", name: "Abonnement", items_color: "#7FB069" },
+ { label: "Facture MYSY", name: "Facture MYSY", items_color: "#7FB069" },
+ { label: "Emails", name: "Emails", icon: Mail, badge: 1, items_color: "#7FB069", },
]
},
- { label: "Emails", icon: Mail, badge: 1, items_color: "#7FB069", },
- { label: "Documents", icon: FolderKanban, items_color: "#7FB069", },
+ { label: "Emails", name: "Emails", icon: Mail, badge: 1, items_color: "#7FB069", },
],
},
{
bloc_title: "Ftion. Initiale",
- title: "Ftion. Initiale",
+ title: "Formation Initiale",
menu_color: "#4F8CFF",
hasChildren: true,
is_open: true,
items: [
- {
- label: "Formations Init.", icon: Users, items_color: "#4F8CFF",
- hasChildren: true,
- children: [
- { label: "Catalogue Init", icon: BookOpen, items_color: "#4F8CFF", },
- { label: "Unit. Ensei", icon: GraduationCap, items_color: "#4F8CFF" },
- { label: "Caractéristiques", icon: Percent, items_color: "#4F8CFF" },
- ]
- },
- { label: "Promotions", icon: Percent, items_color: "#4F8CFF", },
- { label: "Notes & éval", icon: ClipboardList, items_color: "#4F8CFF", },
+
+ { label: "Catalogue", name: "Catalogue Init", icon: BookOpen, items_color: "#4F8CFF", },
+ { label: "Unit. Ensei", name: "Unit. Ensei", icon: GraduationCap, items_color: "#4F8CFF" },
+ { label: "Caractéristiques", name: "Caractéristiques", icon: SquareSplitHorizontal , items_color: "#4F8CFF" },
+ { label: "Promotions", name: "Promotions", icon: Landmark, items_color: "#4F8CFF", },
+ { label: "Notes & éval", name: "Notes & éval", icon: ClipboardList, items_color: "#4F8CFF", },
{
- label: "Instances", icon: Users, items_color: "#4F8CFF",
+ label: "Instances", name: "Instances", icon: Scale, items_color: "#4F8CFF",
hasChildren: true,
children: [
- { label: "Jurys", icon: BookOpen, items_color: "#4F8CFF", },
- { label: "Cons. Classe", icon: GraduationCap, items_color: "#4F8CFF" },
+ { label: "Jurys", name: "Jurys", icon: BookOpen, items_color: "#4F8CFF", },
+ { label: "Cons. Classe", name: "Cons. Classe", icon: GraduationCap, items_color: "#4F8CFF" },
]
},
@@ -224,21 +225,16 @@ const menuData = [
{
bloc_title: "Ftion. Continue",
- title: "Ftion. Continue",
+ title: "Formation Continue",
menu_color: "#8B7CF6",
hasChildren: true,
is_open: false,
items: [
- {
- label: "Formations Cont.", icon: Users, items_color: "#8B7CF6", active: true,
- hasChildren: true,
- children: [
- { label: "Catalogue Cont", icon: BookOpen, items_color: "#8B7CF6", },
- { label: "Modules", icon: GraduationCap, items_color: "#8B7CF6", },
- { label: "Caractéristiques", icon: Percent, items_color: "#8B7CF6" },
- ]
- },
- { label: "Sessions", icon: CalendarRange, active: false, items_color: "#8B7CF6" },
+
+ { label: "Catalogue", name: "Catalogue Cont", icon: BookOpen, items_color: "#8B7CF6", },
+ { label: "Modules", name: "Modules", icon: GraduationCap, items_color: "#8B7CF6", },
+ { label: "Caractéristiques", name: "Caractéristiques", icon: SquareSplitHorizontal , items_color: "#8B7CF6" },
+ { label: "Sessions", name: "Sessions", icon: Landmark, active: false, items_color: "#8B7CF6" },
],
},
@@ -249,13 +245,13 @@ const menuData = [
menu_color: "#3EC7B7",
items: [
{
- label: "Apprenants", icon: Users, items_color: "#3EC7B7",
+ label: "Apprenants", name: "Apprenants", icon: Users, items_color: "#3EC7B7",
hasChildren: true,
children: [
- { label: "Apprenants" },
- { label: "Inscriptions" },
- { label: "Admissions" },
- { label: "Grp Apprenants" },
+ { label: "Apprenants", name: "Apprenants" },
+ { label: "Inscriptions", name: "Inscriptions", },
+ { label: "Admissions", name: "Admissions", },
+ { label: "Grp Apprenants", name: "Grp Apprenants", },
]
},
@@ -263,17 +259,17 @@ const menuData = [
label: "Ressources", icon: Wrench, items_color: "#3EC7B7",
hasChildren: true,
children: [
- { label: "Employes" },
- { label: "Autre Rh" },
- { label: "Salles" },
- { label: "Materiels" },
+ { label: "Employes", name: "Employes" },
+ { label: "Autre Rh", name: "Autre Rh" },
+ { label: "Salles", name: "Salles" },
+ { label: "Materiels", name: "Materiels" },
],
},
- { label: "Documents (GED)", icon: CalendarRange, items_color: "#3EC7B7" },
- { label: "Planning", icon: CalendarRange, items_color: "#3EC7B7" },
- { label: "Marketing mail", icon: Megaphone, items_color: "#3EC7B7" },
+ { label: "Documents (GED)", name: "Documents (GED)", icon: CalendarRange, items_color: "#3EC7B7" },
+ { label: "Planning", name: "Planning", icon: CalendarRange, items_color: "#3EC7B7" },
+ { label: "Marketing mail", name: "Marketing mail", icon: Megaphone, items_color: "#3EC7B7" },
],
},
@@ -282,20 +278,20 @@ const menuData = [
title: "CRM",
menu_color: "#F0E68C",
items: [
- { label: "Partenaires", icon: Handshake, items_color: "#dbff75" },
- { label: "Équipe", icon: Users, items_color: "#dbff75" },
+ { label: "Partenaires", name: "Partenaires", icon: Handshake, items_color: "#dbff75" },
+ { label: "Équipes", name: "Équipe", icon: Users, items_color: "#dbff75" },
{
- label: "Factures", icon: CreditCard, items_color: "#dbff75",
+ label: "Factures", name: "Factures", icon: CreditCard, items_color: "#dbff75",
hasChildren: true,
children: [
- { label: "Devis", icon: BookOpen, items_color: "#dbff75", },
- { label: "Factures & Avoirs", icon: GraduationCap, items_color: "#dbff75" },
+ { label: "Devis", name: "Devis", icon: BookOpen, items_color: "#dbff75", },
+ { label: "Factures & Avoirs", name: "Factures & Avoirs", icon: GraduationCap, items_color: "#dbff75" },
]
},
- { label: "Prix Achat", icon: Tag, items_color: "#dbff75" },
- { label: "Produits & serv.", icon: Package, items_color: "#dbff75" },
+ { label: "Prix Achat", name: "Prix Achat", icon: Tag, items_color: "#dbff75" },
+ { label: "Produits & serv.", name: "Produits & serv.", icon: Package, items_color: "#dbff75" },
],
},
@@ -304,8 +300,8 @@ const menuData = [
title: "Espace E-Learning",
menu_color: "#F0E68C",
items: [
- { label: "Contenu LMS", icon: Handshake, items_color: "#dbff75" },
- { label: "Configuration", icon: Users, items_color: "#dbff75" },
+ { label: "Contenu LMS", name: "Contenu LMS", icon: Handshake, items_color: "#dbff75" },
+ { label: "Configuration", name: "Configuration", icon: Users, items_color: "#dbff75" },
],
},
@@ -316,13 +312,13 @@ const menuData = [
title: "Config. Gle",
menu_color: "#F0E68C",
items: [
- { label: "Documents & Mails", items_color: "#dbff75" , icon: Handshake,},
- { label: "Documents Superadmin", items_color: "#dbff75" , icon: Handshake,},
- { label: "Champ Specifique", items_color: "#dbff75" , icon: Handshake,},
- { label: "Technique", items_color: "#dbff75" , icon: Handshake,},
- { label: "Session Etape", items_color: "#dbff75" , icon: Handshake,},
- { label: "Jours & Heures", items_color: "#dbff75" , icon: Handshake,},
- { label: "Formulaires", items_color: "#dbff75" , icon: Handshake,},
+ { label: "Documents & Mails", name: "Documents & Mails", items_color: "#dbff75", icon: Handshake, },
+ { label: "Documents Superadmin", name: "Documents Superadmin", items_color: "#dbff75", icon: Handshake, },
+ { label: "Champ Specifique", name: "Champ Specifique", items_color: "#dbff75", icon: Handshake, },
+ { label: "Technique", name: "Technique", items_color: "#dbff75", icon: Handshake, },
+ { label: "Session Etape", name: "Session Etape", items_color: "#dbff75", icon: Handshake, },
+ { label: "Jours & Heures", name: "Jours & Heures", items_color: "#dbff75", icon: Handshake, },
+ { label: "Formulaires", name: "Formulaires", items_color: "#dbff75", icon: Handshake, },
],
@@ -333,31 +329,304 @@ const menuData = [
title: "Config. Ftion Initale",
menu_color: "#F0E68C",
items: [
- { label: "Conf. Gle Init", items_color: "#dbff75" , icon: Handshake,},
- { label: "Process Admission", items_color: "#dbff75" , icon: Handshake,},
- { label: "Admin Pédago", items_color: "#dbff75" , icon: Handshake,},
- { label: "Compétence Pedago", items_color: "#dbff75" , icon: Handshake,},
-
-
+ { label: "Conf. Gle", name: "Conf. Gle Init", items_color: "#dbff75", icon: Handshake, },
+ { label: "Process Admission", name: "Process Admission", items_color: "#dbff75", icon: Handshake, },
+ { label: "Admin Pédago", name: "Admin Pédago", items_color: "#dbff75", icon: Handshake, },
+ { label: "Compétence Pedago", name: "Compétence Pedago", items_color: "#dbff75", icon: Handshake, },
],
},
-
- {
- bloc_title: "Paramètres",
- title: "Paramètres",
- menu_color: "#dbff75",
- items: [{ label: "Instances", icon: Boxes, items_color: "#dbff75" }],
- },
];
+const menuData_Ftion_Initiale = [
+ {
+ bloc_title: "Compte",
+ title: "Mon compte",
+ menu_color: "#7FB069",
+ hasChildren: true,
+ items: [
+ {
+ label: "Info compte", name: "Mon compte", icon: Home, items_color: "#7FB069", hasChildren: true,
+ children: [
+ { label: "Informations", name: "Informations", items_color: "#7FB069" },
+ { label: "Activité", name: "Activité", items_color: "#7FB069" },
+ { label: "Tableau De Bord", name: "Tableau De Bord", items_color: "#7FB069" },
+ { label: "Abonnement", name: "Abonnement", items_color: "#7FB069" },
+ { label: "Facture MYSY", name: "Facture MYSY", items_color: "#7FB069" },
+ { label: "Emails", name: "Emails", icon: Mail, badge: 1, items_color: "#7FB069", },
+ ]
+ },
+ { label: "Emails", name: "Emails", icon: Mail, badge: 1, items_color: "#7FB069", },
+ ],
+ },
+ {
+ bloc_title: "Ftion. Initiale",
+ title: "Formation Initiale",
+ menu_color: "#4F8CFF",
+ hasChildren: true,
+ is_open: true,
+ items: [
+
+
+ { label: "Catalogue", name: "Catalogue Init", icon: BookOpen, items_color: "#4F8CFF", },
+ { label: "Unit. Ensei", name: "Unit. Ensei", icon: GraduationCap, items_color: "#4F8CFF" },
+ { label: "Caractéristiques", name: "Caractéristiques", icon: Percent, items_color: "#4F8CFF" },
+ { label: "Promotions", name: "Promotions", icon: Percent, items_color: "#4F8CFF", },
+ { label: "Notes & éval", name: "Notes & éval", icon: ClipboardList, items_color: "#4F8CFF", },
+
+ {
+ label: "Instances", name: "Instances", icon: Users, items_color: "#4F8CFF",
+ hasChildren: true,
+ children: [
+ { label: "Jurys", name: "Jurys", icon: BookOpen, items_color: "#4F8CFF", },
+ { label: "Cons. Classe", name: "Cons. Classe", icon: GraduationCap, items_color: "#4F8CFF" },
+
+ ]
+ },
+
+
+ ],
+ },
+
+
+ {
+ bloc_title: "Gestion",
+ title: "Gestion",
+ menu_color: "#3EC7B7",
+ items: [
+ {
+ label: "Apprenants", name: "Apprenants", icon: Users, items_color: "#3EC7B7",
+ hasChildren: true,
+ children: [
+ { label: "Apprenants", name: "Apprenants" },
+ { label: "Inscriptions", name: "Inscriptions", },
+ { label: "Admissions", name: "Admissions", },
+ { label: "Grp Apprenants", name: "Grp Apprenants", },
+ ]
+ },
+
+ {
+ label: "Ressources", icon: Wrench, items_color: "#3EC7B7",
+ hasChildren: true,
+ children: [
+ { label: "Employes", name: "Employes" },
+ { label: "Autre Rh", name: "Autre Rh" },
+ { label: "Salles", name: "Salles" },
+ { label: "Materiels", name: "Materiels" },
+
+ ],
+ },
+
+ { label: "Documents (GED)", name: "Documents (GED)", icon: CalendarRange, items_color: "#3EC7B7" },
+ { label: "Planning", name: "Planning", icon: CalendarRange, items_color: "#3EC7B7" },
+ { label: "Marketing mail", name: "Marketing mail", icon: Megaphone, items_color: "#3EC7B7" },
+ ],
+ },
+
+ {
+ bloc_title: "CRM",
+ title: "CRM",
+ menu_color: "#F0E68C",
+ items: [
+ { label: "Partenaires", name: "Partenaires", icon: Handshake, items_color: "#dbff75" },
+ { label: "Équipes", name: "Équipe", icon: Users, items_color: "#dbff75" },
+ {
+ label: "Factures", name: "Factures", icon: CreditCard, items_color: "#dbff75",
+ hasChildren: true,
+ children: [
+ { label: "Devis", name: "Devis", icon: BookOpen, items_color: "#dbff75", },
+ { label: "Factures & Avoirs", name: "Factures & Avoirs", icon: GraduationCap, items_color: "#dbff75" },
+ ]
+ },
+
+
+ { label: "Prix Achat", name: "Prix Achat", icon: Tag, items_color: "#dbff75" },
+ { label: "Produits & serv.", name: "Produits & serv.", icon: Package, items_color: "#dbff75" },
+ ],
+ },
+
+ {
+ bloc_title: "Espace E-Learning",
+ title: "Espace E-Learning",
+ menu_color: "#F0E68C",
+ items: [
+ { label: "Contenu LMS", name: "Contenu LMS", icon: Handshake, items_color: "#dbff75" },
+ { label: "Configuration", name: "Configuration", icon: Users, items_color: "#dbff75" },
+
+ ],
+ },
+
+
+ {
+ bloc_title: "Config. Gle",
+ title: "Config. Gle",
+ menu_color: "#F0E68C",
+ items: [
+ { label: "Documents & Mails", name: "Documents & Mails", items_color: "#dbff75", icon: Handshake, },
+ { label: "Documents Superadmin", name: "Documents Superadmin", items_color: "#dbff75", icon: Handshake, },
+ { label: "Champ Specifique", name: "Champ Specifique", items_color: "#dbff75", icon: Handshake, },
+ { label: "Technique", name: "Technique", items_color: "#dbff75", icon: Handshake, },
+ { label: "Session Etape", name: "Session Etape", items_color: "#dbff75", icon: Handshake, },
+ { label: "Jours & Heures", name: "Jours & Heures", items_color: "#dbff75", icon: Handshake, },
+ { label: "Formulaires", name: "Formulaires", items_color: "#dbff75", icon: Handshake, },
+
+
+ ],
+ },
+
+ {
+ bloc_title: "Config. Ftion Initale",
+ title: "Config. Ftion Initale",
+ menu_color: "#F0E68C",
+ items: [
+ { label: "Conf. Gle", name: "Conf. Gle Init", items_color: "#dbff75", icon: Handshake, },
+ { label: "Process Admission", name: "Process Admission", items_color: "#dbff75", icon: Handshake, },
+ { label: "Admin Pédago", name: "Admin Pédago", items_color: "#dbff75", icon: Handshake, },
+ { label: "Compétence Pedago", name: "Compétence Pedago", items_color: "#dbff75", icon: Handshake, },
+
+ ],
+ },
+
+
+];
+
+const menuData_Ftion_Continue = [
+ {
+ bloc_title: "Compte",
+ title: "Mon compte",
+ menu_color: "#7FB069",
+ hasChildren: true,
+ items: [
+ {
+ label: "Info compte", name: "Mon compte", icon: Home, items_color: "#7FB069", hasChildren: true,
+ children: [
+ { label: "Informations", name: "Informations", items_color: "#7FB069" },
+ { label: "Activité", name: "Activité", items_color: "#7FB069" },
+ { label: "Tableau De Bord", name: "Tableau De Bord", items_color: "#7FB069" },
+ { label: "Abonnement", name: "Abonnement", items_color: "#7FB069" },
+ { label: "Facture MYSY", name: "Facture MYSY", items_color: "#7FB069" },
+ { label: "Emails", name: "Emails", icon: Mail, badge: 1, items_color: "#7FB069", },
+ ]
+
+ },
+ { label: "Emails", name: "Emails", icon: Mail, badge: 1, items_color: "#7FB069", },
+ ],
+ },
+
+
+ {
+ bloc_title: "Ftion. Continue",
+ title: "Formation Continue",
+ menu_color: "#8B7CF6",
+ hasChildren: true,
+ is_open: false,
+ items: [
+
+ { label: "Catalogue", name: "Catalogue Cont", icon: BookOpen, items_color: "#8B7CF6", },
+ { label: "Modules", name: "Modules", icon: GraduationCap, items_color: "#8B7CF6", },
+ { label: "Caractéristiques", name: "Caractéristiques", icon: Percent, items_color: "#8B7CF6" },
+ { label: "Sessions", name: "Sessions", icon: CalendarRange, active: false, items_color: "#8B7CF6" },
+
+ ],
+ },
+
+ {
+ bloc_title: "Gestion",
+ title: "Gestion",
+ menu_color: "#3EC7B7",
+ items: [
+ {
+ label: "Apprenants", name: "Apprenants", icon: Users, items_color: "#3EC7B7",
+ hasChildren: true,
+ children: [
+ { label: "Apprenants", name: "Apprenants" },
+ { label: "Inscriptions", name: "Inscriptions", },
+ { label: "Grp Apprenants", name: "Grp Apprenants", },
+ ]
+ },
+
+ {
+ label: "Ressources", icon: Wrench, items_color: "#3EC7B7",
+ hasChildren: true,
+ children: [
+ { label: "Employes", name: "Employes" },
+ { label: "Autre Rh", name: "Autre Rh" },
+ { label: "Salles", name: "Salles" },
+ { label: "Materiels", name: "Materiels" },
+
+ ],
+ },
+
+ { label: "Documents (GED)", name: "Documents (GED)", icon: CalendarRange, items_color: "#3EC7B7" },
+ { label: "Planning", name: "Planning", icon: CalendarRange, items_color: "#3EC7B7" },
+ { label: "Marketing mail", name: "Marketing mail", icon: Megaphone, items_color: "#3EC7B7" },
+ ],
+ },
+
+ {
+ bloc_title: "CRM",
+ title: "CRM",
+ menu_color: "#F0E68C",
+ items: [
+ { label: "Partenaires", name: "Partenaires", icon: Handshake, items_color: "#dbff75" },
+ { label: "Équipes", name: "Équipe", icon: Users, items_color: "#dbff75" },
+ {
+ label: "Factures", name: "Factures", icon: CreditCard, items_color: "#dbff75",
+ hasChildren: true,
+ children: [
+ { label: "Devis", name: "Devis", icon: BookOpen, items_color: "#dbff75", },
+ { label: "Factures & Avoirs", name: "Factures & Avoirs", icon: GraduationCap, items_color: "#dbff75" },
+ ]
+ },
+
+
+ { label: "Prix Achat", name: "Prix Achat", icon: Tag, items_color: "#dbff75" },
+ { label: "Produits & serv.", name: "Produits & serv.", icon: Package, items_color: "#dbff75" },
+ ],
+ },
+
+ {
+ bloc_title: "Espace E-Learning",
+ title: "Espace E-Learning",
+ menu_color: "#F0E68C",
+ items: [
+ { label: "Contenu LMS", name: "Contenu LMS", icon: Handshake, items_color: "#dbff75" },
+ { label: "Configuration", name: "Configuration", icon: Users, items_color: "#dbff75" },
+
+ ],
+ },
+
+
+ {
+ bloc_title: "Config. Gle",
+ title: "Config. Gle",
+ menu_color: "#F0E68C",
+ items: [
+ { label: "Documents & Mails", name: "Documents & Mails", items_color: "#dbff75", icon: Handshake, },
+ { label: "Documents Superadmin", name: "Documents Superadmin", items_color: "#dbff75", icon: Handshake, },
+ { label: "Champ Specifique", name: "Champ Specifique", items_color: "#dbff75", icon: Handshake, },
+ { label: "Technique", name: "Technique", items_color: "#dbff75", icon: Handshake, },
+ { label: "Session Etape", name: "Session Etape", items_color: "#dbff75", icon: Handshake, },
+ { label: "Jours & Heures", name: "Jours & Heures", items_color: "#dbff75", icon: Handshake, },
+ { label: "Formulaires", name: "Formulaires", items_color: "#dbff75", icon: Handshake, },
+
+
+ ],
+ },
+
+];
const Partner = (props) => {
+
+ const [class_is_ftion_initiale, setclass_is_ftion_initiale] = useState("");
function macro_menu_function(local_menu) {
+
+ // console.log(" menu = ", local_menu)
+
if (local_menu === "Sessions") {
DiplaySessionList();
} else if (local_menu === "Promotions") {
@@ -380,9 +649,11 @@ const Partner = (props) => {
} else if (local_menu.toLocaleLowerCase() === "Documents (GED)".toLocaleLowerCase()) {
Display_Tous_Documents();
} else if (local_menu.toLocaleLowerCase() === "Catalogue Init".toLocaleLowerCase()) {
- DiplaytrainingList();
+ setclass_is_ftion_initiale("1")
+ DiplaytrainingList("1");
} else if (local_menu.toLocaleLowerCase() === "Catalogue Cont".toLocaleLowerCase()) {
- DiplaytrainingList();
+ setclass_is_ftion_initiale("")
+ DiplaytrainingList("");
} else if (local_menu.toLocaleLowerCase() === "Unit. Ensei".toLocaleLowerCase()) {
DiplayPartner_UE();
} else if (local_menu.toLocaleLowerCase() === "Produits & serv.".toLocaleLowerCase()) {
@@ -454,8 +725,8 @@ const Partner = (props) => {
}
} else if (local_menu.toLocaleLowerCase() === "Configuration".toLocaleLowerCase()) {
DisplaySetUpLMS();
- }
-
+ }
+
else if (local_menu.toLocaleLowerCase() === "Documents & Mails".toLocaleLowerCase()) {
config_document_func();
} else if (local_menu.toLocaleLowerCase() === "Documents Superadmin".toLocaleLowerCase()) {
@@ -470,14 +741,16 @@ const Partner = (props) => {
config_jours_travaille_func();
} else if (local_menu.toLocaleLowerCase() === "Formulaires".toLocaleLowerCase()) {
config_formulaires_func();
- }else if (local_menu.toLocaleLowerCase() === "Conf. Gle Init".toLocaleLowerCase()) {
+ } else if (local_menu.toLocaleLowerCase() === "Conf. Gle Init".toLocaleLowerCase()) {
config_ftion_initale_general_func();
- }else if (local_menu.toLocaleLowerCase() === "Process Admission".toLocaleLowerCase()) {
+ } else if (local_menu.toLocaleLowerCase() === "Process Admission".toLocaleLowerCase()) {
config_admission_process_func();
- }else if (local_menu.toLocaleLowerCase() === "Admin Pédago".toLocaleLowerCase()) {
+ } else if (local_menu.toLocaleLowerCase() === "Admin Pédago".toLocaleLowerCase()) {
config_administration_pedagogique_func();
- }else if (local_menu.toLocaleLowerCase() === "Compétence Pedago".toLocaleLowerCase()) {
+ } else if (local_menu.toLocaleLowerCase() === "Compétence Pedago".toLocaleLowerCase()) {
config_competence_pedagogique_func();
+ } else if (local_menu.toLocaleLowerCase() === "BUSINESS PART.".toLocaleLowerCase()) {
+ config_ftion_plateforme_partners_func();
}
@@ -487,7 +760,7 @@ const Partner = (props) => {
function MenuItem_MySy({ item }) {
- const [open, setOpen] = useState(item.active || false);
+ const [open, setOpen] = useState(true);
const Icon = item.icon;
const Icon_Color = item.items_color;
const hasChildren = item.hasChildren && item.children?.length > 0;
@@ -495,14 +768,14 @@ const Partner = (props) => {
return (
@@ -547,18 +821,7 @@ const Partner = (props) => {
);
}
- const menuData_v2 = [
- {
- bloc_title: "Compte",
- title: "Compte",
- menu_color: "#7FB069",
- items: [
- { label: "Mon compte", icon: Home, items_color: "#7FB069", },
- { label: "Emails", icon: Mail, badge: 1, items_color: "#7FB069", },
- { label: "Documents", icon: FolderKanban, items_color: "#7FB069", },
- ],
- },
- ]
+
const stored_cookie_menu_gauche_reduit = getCookie('mysy_menu_gauche_reduit');
@@ -1817,7 +2080,7 @@ const Partner = (props) => {
}
}
- function DiplaytrainingList(event) {
+ function DiplaytrainingList(local_is_ftion_initiale) {
inactive_active_menu_header("my_class");
setmenu("affichage");
@@ -1860,6 +2123,11 @@ const Partner = (props) => {
//console.log(" filtres2 = " + filtre2 + " = " + filtre2_value);
//console.log(" filtres3 = " + filtre3 + " = " + filtre3_value);
+ //console.log("### local_is_ftion_initiale = ", local_is_ftion_initiale)
+
+ if (local_is_ftion_initiale === "1" || local_is_ftion_initiale === "" || local_is_ftion_initiale === "0")
+ form.append("is_ftion_initiale", local_is_ftion_initiale);
+
form.append("token", stored_cookie);
@@ -1868,7 +2136,7 @@ const Partner = (props) => {
axios.post(myurl, form).then(res => {
if (res.data.status !== "False") {
//console.log(" In test res.data.status = " + res.data.status);
- //console.log(" In test res.data.message = " + res.data.message);
+ // console.log(" In test res.data.message = " + res.data.message);
setmyApiResponse("true");
setResult(res.data.message)
//setmyApimyApiMessage("OK")
@@ -1962,6 +2230,8 @@ const Partner = (props) => {
const [formation_initiale, setformation_initiale] = useState("");
const [document_super_admin, setdocument_super_admin] = useState("");
+ const [user_menu, setuser_menu] = useState("");
+
const [conntected_employee_activite_retard, setconntected_employee_activite_retard] = useState("0");
const [conntected_employee_activite_new, setconntected_employee_activite_new] = useState("");
@@ -2048,6 +2318,13 @@ const Partner = (props) => {
setformation_initiale("");
}
+
+ if (JSON.parse(res.data.message).user_menu) {
+ setuser_menu(JSON.parse(res.data.message).user_menu);
+ } else {
+ setuser_menu("");
+ }
+
if (JSON.parse(res.data.message).document_super_admin) {
setdocument_super_admin(JSON.parse(res.data.message).document_super_admin);
} else {
@@ -2388,7 +2665,7 @@ const Partner = (props) => {
const [open_bloc_menu, setopen_bloc_menu] = useState(false);
const [open_menu_f_initiale, setopen_menu_f_initiale] = useState(false);
const [open_menu_f_continue, setopen_menu_f_continue] = useState(false);
- const [open_menu_compte, setopen_menu_compte] = useState(true);
+ const [open_menu_compte, setopen_menu_compte] = useState(false);
const [open_menu_gestion, setopen_menu_gestion] = useState(false);
const [open_menu_lms, setopen_menu_lms] = useState(false);
const [open_menu_crm, setopen_menu_crm] = useState(false);
@@ -2398,6 +2675,8 @@ const Partner = (props) => {
const [menu_active, setmenu_active] = useState("");
+ const [open_menu_admin_plateforme, setopen_menu_admin_plateforme] = useState(false);
+
return (
@@ -2537,53 +2816,58 @@ const Partner = (props) => {
@@ -2591,45 +2875,52 @@ const Partner = (props) => {
-