03/07/26 - 20h

branche_01062025
Cherif 2026-07-03 19:35:49 +02:00
parent d702d44af0
commit 75a9c77bbb
13 changed files with 1488 additions and 796 deletions

View File

@ -13870,7 +13870,8 @@ const DisplayPartnerSession = (props) => {
{ "id": "code_session", "label": "Code Session", "value": "code_session" },
{ "id": "class_external_code", "label": "Ftion. Ref. Interne", "value": "class_external_code" },
{ "id": "class_title", "label": "Titre Formation", "value": "class_title" },
{ "id": "client_name", "label": "Client (Nom / R.Sociale / Email / Tel)", "value": "client_name" },
{ "id": "client_name", "label": "Client (Nom / R.Sociale / Email / Tel)", "value": "client_name" },
{ "id": "inscrit_name", "label": "Inscrit (Nom / Prénom / Email / Tel)", "value": "inscrit_name" },
{ "id": "session_etape", "label": "Session Etape", "value": "session_etape" },
{ "id": "session_start_date", "label": "Date début session", "value": "session_start_date" },
{ "id": "session_end_date", "label": "Date fin session", "value": "session_end_date" },

View File

@ -13894,11 +13894,11 @@ const Employes = (props) => {
{String(acces_right_data_edit_mode) === "1" &&
<div style={{ height: 550, width: '98%', paddingRight: '1px', "marginLeft": "10px", "marginRight": "10px", }}>
<div style={{ height: 950, width: '98%', paddingRight: '1px', "marginLeft": "10px", "marginRight": "10px", }}>
&nbsp;
<Box
sx={{
height: 500,
height: 900,
width: '100%',
paddingRight: '1px',
"& .MuiDataGrid-columnHeaders": {
@ -13948,11 +13948,11 @@ const Employes = (props) => {
columns={columns_employee_acces_right}
pageSize={10}
pageSize={15}
className="datagridclass"
disabled={true}
rowsPerPageOptions={[10]}
rowsPerPageOptions={[15]}
//disableSelectionOnClick
components={{
Toolbar: GridToolbar,
@ -13967,11 +13967,11 @@ const Employes = (props) => {
}
{String(acces_right_data_edit_mode) !== "1" &&
<div style={{ height: 550, width: '100%', paddingRight: '1px', "marginLeft": "10px", "marginRight": "10px", }}>
<div style={{ height: 950, width: '100%', paddingRight: '1px', "marginLeft": "10px", "marginRight": "10px", }}>
&nbsp;
<Box
sx={{
height: 500,
height: 900,
width: '100%',
paddingRight: '1px',
"& .MuiDataGrid-columnHeaders": {
@ -14015,11 +14015,11 @@ const Employes = (props) => {
columns={columns_employee_acces_right_disabled}
pageSize={10}
pageSize={15}
className="datagridclass"
disabled={true}
rowsPerPageOptions={[10]}
rowsPerPageOptions={[15]}
//disableSelectionOnClick
components={{
Toolbar: GridToolbar,

View File

@ -16,6 +16,7 @@ import 'react-tooltip/dist/react-tooltip.css'
import { Tooltip } from 'react-tooltip'
import ent_studend_img from "../mysy_img/ent_studend_img.jpg";
import { getCookie } from 'react-use-cookie';
import Module_Alert_Confirmation from "./Module_Alert_Confirmation";
function Module_Connexion_Ent_Student() {
const [isconnected, setisconnected] = useState("");
@ -174,7 +175,8 @@ function Module_Connexion_Ent_Student() {
// si c'est une connexion user qui est active
if (typeof (stored_user) != "undefined" && String(stored_user) !== String('')) {
//alert(" c'est une connexion USERR qui est active");
Logout_User();
logout_user_confirmation();
}
@ -375,12 +377,22 @@ function Module_Connexion_Ent_Student() {
setResult(res.data.message);
setdisplay_alert_mysy("1");
setalert_message(" Si cette adresse e-mail correspond à un compte actif, vous recevrez un lien de réinitialisation dans quelques minutes.");
setalert_type("success");
//alert(" iiiiiiiii ");
}
else {
//console.log(" In test res.data.status = " + res.data.status);
//console.log(" In test res.data.message = " + res.data.message);
setmyApiResponse("false");
setResult(res.data.message);
setdisplay_alert_mysy("1");
setalert_message(res.data.message);
setalert_type("error");
}
@ -466,9 +478,35 @@ function Module_Connexion_Ent_Student() {
}
};
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 (
<div style={{ width: "100%", float: "left" }}>
{/*** Affichage des messages d'alerte*/}
{display_alert_mysy && String(display_alert_mysy) === "1" &&
<Module_Alert_Confirmation alert_message={alert_message}
alert_type={alert_type}
clear_alert_message={clear_alert_message}
clear_alert_type={clear_alert_type}
clear_display_alert_mysy={clear_display_alert_mysy}
/>
}
{/*** FIN Affichage des messages d'alerte*/}
<div className="module_connexion_intranet_client">

View File

@ -398,12 +398,20 @@ function Module_Connexion_Ent_Student_V2() {
setResult(res.data.message);
setdisplay_alert_mysy("1");
setalert_message(" Si cette adresse e-mail correspond à un compte actif, vous recevrez un lien de réinitialisation dans quelques minutes.");
setalert_type("success");
}
else {
//console.log(" In test res.data.status = " + res.data.status);
//console.log(" In test res.data.message = " + res.data.message);
setmyApiResponse("false");
setResult(res.data.message);
setdisplay_alert_mysy("1");
setalert_message(res.data.message);
setalert_type("error");
}
@ -571,13 +579,15 @@ function Module_Connexion_Ent_Student_V2() {
{String(initpasswd) !== String("true") && String(closepopup) !== String("1")
&& <Popup trigger={<font className="mdp_oublie"> Mot de passe oublié</font>}
position="center" className="signin popup-reset-pwd">
position="center" className="signin popup-reset-pwd" >
<div className="signin-content popup-reset-pwd-content">
<div className="div_row" style={{
"textAlign": "center", "background": "orangered",
"height": "2rem", "paddingTop": "5px", "fontSize": "14px", "fontWeight": "bold"
"textAlign": "center",
"height": "2rem", "paddingTop": "5px", "fontSize": "12px", "fontWeight": "bold"
}}
> Modifier le mot de passe</div>
> Réinitialiser votre mot de passe</div>
<br />
<label for="exampleFormControlTextarea1">Saisir votre email</label>
@ -611,14 +621,14 @@ function Module_Connexion_Ent_Student_V2() {
/>
{errors.sommerandom && (
<span className='koUpdateData'>la sommes est incorrect</span>
<span className='koUpdateData'>La somme est incorrecte</span>
)}
</div>
</div>
</div>
<button type="submit" class="btn btn-secondary btn-sm" onClick={resetpasswd_ok}>Envoyer</button> &nbsp; &nbsp; &nbsp;
<button type="submit" class="btn btn-secondary btn-sm" onClick={closepopupinitpwd}> Annuler</button>
<button type="submit" class="btn btn-success btn-sm" onClick={resetpasswd_ok} style={{width:'100%'}}>Recevoir le lien de réinitialisation</button> &nbsp; &nbsp; &nbsp;
<button type="submit" class="btn btn-info btn-sm" onClick={closepopupinitpwd} style={{width:'100%'}}> Annuler</button>
</div>
</Popup>
@ -679,6 +689,12 @@ const local_css = `
box-sizing: border-box;
}
.popup-content{
margin-left: -7rem !important;
margin-top: -15rem !important;
}
body {
margin: 0;
font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
@ -707,6 +723,7 @@ a {
border-radius: 999px;
filter: blur(70px);
z-index: 0;
}
.ent-bg-shape-1 {
@ -993,16 +1010,33 @@ font-family: 'DM Sans';
@media only screen and (min-width: 601px) and (max-width: 991px) {
width: 70%;
margin: auto;
.popup-content{
margin-left: -7rem !important;
margin-top: -15rem !important;
}
}
@media only screen and (min-width: 992px){
width: 70%;
margin: auto;
}
.popup-content{
margin-left: -7rem !important;
margin-top: -15rem !important;
}
}
@media (max-width: 640px) {
.popup-content{
margin-left: -5rem !important;
margin-top: -18rem !important;
}
.ent-page {
padding: 20px 14px;
}
@ -1056,4 +1090,7 @@ font-family: 'DM Sans';
}
}
`;

View File

@ -2843,7 +2843,7 @@ const Module_Ent_Mes_Formations = (props) => {
<Button variant="outlined" onClick={submenu_planning} className="detail_class_submenu" id='planning' name='planning'>Planning </Button>
<Button variant="outlined" onClick={submenu_notes} className="detail_class_submenu" id='notes' name='notes'>Notes </Button>
<Button variant="outlined" onClick={submenu_piece_jointe} className="detail_class_submenu" id='piece_jointe' name='contrat'>Documents </Button>
<Button variant="outlined" onClick={submenu_absences} className="detail_class_submenu" id='piece_jointe' name='contrat'>Absences </Button>
<Button variant="outlined" onClick={submenu_absences} className="detail_class_submenu" id='absence' name='absence'>Absences </Button>
</div>
}
{selected_id && String(selected_id).length > 0 && <div className="div_row">

File diff suppressed because it is too large Load Diff

View File

@ -407,15 +407,15 @@ const Modules_ENT_Mes_Documents = (props) => {
useEffect(() => {
console.log(" props.inscription_id={selected_inscription_id} = ", props.inscription_id)
//console.log(" props.inscription_id={selected_inscription_id} = ", props.inscription_id)
let windowWidth = window.innerWidth;
if (windowWidth <= 991) {
setDevice('mobile');
setaffichage_doc("grid");
}
if (props.partner_client_id && props.type_document && autorized_type_document.includes(String(props.type_document)) &&
props.partner_owner_recid === "") {
@ -785,11 +785,11 @@ const Modules_ENT_Mes_Documents = (props) => {
const stored_cookie = getCookie('tokenmysych');
formData.append("token", stored_cookie);
formData.append("apprenant_id", props.apprenant_id);
formData.append("object_owner_collection", "inscription");
formData.append("object_owner_id", props.inscription_id);
formData.append("object_owner_id", props.inscription_id);
if (props.class_id && props.class_id.length > 5) {
formData.append("class_id", props.class_id);
@ -800,7 +800,7 @@ const Modules_ENT_Mes_Documents = (props) => {
formData.append("object_owner_collection", props.object_owner_collection);
}
//formData.append("class_internal_url", internal_url);
//console.log("token = " + stored_cookie);
setLoading(true);
@ -1272,19 +1272,19 @@ const Modules_ENT_Mes_Documents = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1343,19 +1343,19 @@ const Modules_ENT_Mes_Documents = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1460,19 +1460,19 @@ const Modules_ENT_Mes_Documents = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1525,19 +1525,19 @@ const Modules_ENT_Mes_Documents = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1593,19 +1593,19 @@ const Modules_ENT_Mes_Documents = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1659,19 +1659,19 @@ const Modules_ENT_Mes_Documents = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>

View File

@ -13,6 +13,7 @@ import {
DataGrid, frFR, GridToolbar,
} from '@mui/x-data-grid';
import { FcLock } from "react-icons/fc";
import { FcCancel } from "react-icons/fc";
import Popup from 'reactjs-popup';
@ -72,6 +73,8 @@ import Paper from '@material-ui/core/Paper';
import Draggable from 'react-draggable';
import FilePresentIcon from '@mui/icons-material/FilePresent';
import { MdVisibility, MdVisibilityOff } from "react-icons/md";
function PaperComponent(props) {
return (
<Draggable
@ -440,6 +443,365 @@ const Modules_Mes_Documents = (props) => {
]
const columns_for_inscrit = [
{ field: '_id', headerName: '_id', hide: true, editable: false, disableExport: true },
{ field: 'id', headerName: 'id', hide: true, editable: false, disableExport: true },
{ field: 'file_extention', hide: true, editable: false, disableExport: true },
{ field: 'file_expired', hide: true, editable: false, disableExport: true },
{ field: 'file_name', headerName: 'tech_file_name', hide: true, disableExport: true },
{
field: 'is_secure_file', headerName: 'Sécu.', hide: false, Width: 100, hide: true, disableExport: true
},
{
field: 'creation_date', headerName: 'Date Création', Width: 100, flex: 1, hide: false, editable: false,
renderCell: (cellValues) => {
return (
<>
{cellValues.row.is_secure_file !== "1" && <nav style={{ width: '100%', 'textAlign': 'left' }}>
{String(cellValues.row.creation_date).substring(0, 16)}
</nav>}
{cellValues.row.is_secure_file === "1" && <nav style={{ width: '100%', 'textAlign': 'left' }}>
{String(cellValues.row.creation_date).substring(0, 16)} &nbsp; <FcLock />
</nav>}
</>
)
},
},
{ field: 'file_business_object', headerName: 'Nom Fichier', minWidth: 200, flex: 1, hide: false, editable: false, },
{ field: 'object_owner_collection', headerName: 'System_Pro', minWidth: 200, flex: 1, hide: true, editable: false },
{ field: 'client_raison_sociale', headerName: 'Client Raison Soc.', minWidth: 200, flex: 1, hide: true, editable: false },
{ field: 'client_nom', headerName: 'Client Nom', minWidth: 150, flex: 1, hide: false, editable: false },
{ field: 'related_client_nom', headerName: 'Client Nom (2)', Width: 0, flex: 1, hide: true, editable: false },
{ field: 'related_ftion_external_code', headerName: 'Cde Ftion', minWidth: 150, flex: 1, hide: false, editable: false },
{ field: 'related_code_session', headerName: 'Cde Session', minWidth: 150, flex: 1, hide: false, editable: false },
{ field: 'related_inscrit_email', headerName: 'Email Inscrit', minWidth: 150, flex: 1, hide: false, editable: false },
{
field: 'type_document', headerName: 'Type doc.', minWidth: 100, flex: 1, hide: false, editable: false,
renderCell: (cellValues) => {
return (
<nav style={{ width: '100%', 'textAlign': 'left' }}>
{String(cellValues.row.type_document).charAt(0).toUpperCase() + String(cellValues.row.type_document).slice(1)}
</nav>)
},
},
{
field: 'publish_ent', headerName: 'Visible ENT', minWidth: 100, flex: 1, hide: false, editable: false, align: 'center', headerAlign: "center",
renderCell: (cellValues) => {
return (<>
{cellValues.row.publish_ent === "1" && <Popup
trigger={
<nav style={{ width: '100%', 'textAlign': 'center', color: 'green', cursor: 'pointer' }}>
<MdVisibility size={18} />
</nav>
}
modal
nested
position="center center"
>
{close => (
<div>
<button className="gest_close" onClick={close}>
&times;
</button>
<div className="gest_header"> MySy Information </div>
<div className="gest_content">
{' '}
En confirmant cette opération, le document sera <i> <b> dépublié </b> de l'espace ENT de l'apprenant </i>. <br />
</div>
<div className="gest_actions">
<div style={{ "width": "45%", "float": "left" }}>
<button className="gest_bton_popup" onClick={(event) => {
Publish_Unpublish_ENT(cellValues.row._id, cellValues.row.publish_ent);
close();
}}> Valider </button>
</div>
<div style={{ "width": "45%", "float": "right" }}>
<button
className="gest_bton_popup_annuler"
onClick={() => {
//console.log('modal closed ');
close();
}}
>
Annuler
</button>
</div>
</div>
</div>
)}
</Popup>}
{cellValues.row.publish_ent !== "1" && <Popup
trigger={
<nav style={{ width: '100%', 'textAlign': 'center', color: 'red', cursor: 'pointer' }}>
<MdVisibilityOff size={18} />
</nav>
}
modal
nested
position="center center"
>
{close => (
<div>
<button className="gest_close" onClick={close}>
&times;
</button>
<div className="gest_header"> MySy Information </div>
<div className="gest_content">
{' '}
En confirmant cette opération, le document sera <i> <b> publié </b> dans l'esapce ENT de l'apprenant </i>. <br />
</div>
<div className="gest_actions">
<div style={{ "width": "45%", "float": "left" }}>
<button className="gest_bton_popup" onClick={(event) => {
Publish_Unpublish_ENT(cellValues.row._id, cellValues.row.publish_ent);
close();
}}> Valider </button>
</div>
<div style={{ "width": "45%", "float": "right" }}>
<button
className="gest_bton_popup_annuler"
onClick={() => {
//console.log('modal closed ');
close();
}}
>
Annuler
</button>
</div>
</div>
</div>
)}
</Popup>}
</>)
},
},
{
field: 'file_date_expiration', headerName: 'Expiration', minWidth: 100, flex: 1, hide: false, editable: false,
renderCell: (cellValues) => {
return (<>
{cellValues.row.file_expired === "1" && <nav style={{ width: '100%', 'textAlign': 'left', color: 'red' }}>
{String(cellValues.row.file_date_expiration)}
</nav>}
{cellValues.row.file_expired !== "1" && <nav style={{ width: '100%', 'textAlign': 'left', }}>
{String(cellValues.row.file_date_expiration)}
</nav>}
</>)
},
},
{
field: 'Visualiser', headerName: 'Visualiser', minWidth: 50, flex: 1, maxWidth: 100, hide: false, editable: false,
renderCell: (cellValues) => {
return (
<nav style={{ width: '100%', 'textAlign': 'center', cursor: 'pointer' }} onClick={(e) => {
preview_document_pdf(cellValues.row._id, cellValues.row.file_extention, cellValues.row.file_business_object);
setselected_doc_name(cellValues.row.file_business_object);
setDialog_Preview_Doc_open(true);
}}>
<VisibilityIcon style={{ color: '#6a329f' }} />
</nav>)
},
},
{
field: 'Télécharger', headerName: 'Télécharger', minWidth: 50, flex: 1, maxWidth: 100, hide: false, editable: false,
renderCell: (cellValues) => {
return (
<nav style={{ width: '100%', 'textAlign': 'center', cursor: 'pointer' }} onClick={(e) => {
print_document_pdf(cellValues.row._id, cellValues.row.file_extention, cellValues.row.file_business_object);
setselected_doc_name(cellValues.row.file_business_object);
}}>
<ArrowCircleDownIcon style={{ color: '#107758' }} />
</nav>)
},
},
{
field: 'Supprimer', headerName: 'Supprimer', minWidth: 50, flex: 1, maxWidth: 100, hide: false, editable: false,
renderCell: (cellValues) => {
return (
<>
{props && props.authorize_deletion && props.authorize_deletion === "1" &&
<Popup
trigger={<Button
onClick={(event) => {
// handleClick_delete(event, cellValues);
}}
>
<CiTrash style={{ color: 'red', fontSize: '16px' }} />
</Button>}
modal
nested
position="center center"
>
{close => (
<div>
<button className="gest_close" onClick={close}>
&times;
</button>
<div className="gest_header"> MySy Information </div>
<div className="gest_content">
{' '}
En confirmant cette opération, le document sera <i><font color="red"> définitivement supprimé</font></i>. <br />
</div>
<div className="gest_actions">
<div style={{ "width": "45%", "float": "left" }}>
<button className="gest_bton_popup" onClick={(event) => {
Delete_List_document(cellValues.row._id);
close();
}}> Valider </button>
</div>
<div style={{ "width": "45%", "float": "right" }}>
<button
className="gest_bton_popup_annuler"
onClick={() => {
//console.log('modal closed ');
close();
}}
>
Annuler
</button>
</div>
</div>
</div>
)}
</Popup>}
{props.authorize_deletion !== "1" && <nav style={{ width: '100%', textAlign: 'center' }}>
<Tooltip className="tooltip_css" id="my_tooltip_no_delete" />
<a data-tooltip-id="my_tooltip_no_delete" data-tooltip-html={"Suppression non autorisée."}>
<FcCancel style={{ color: 'red', fontSize: '18px' }} />
</a>
</nav>}
</>
);
}
},
/*
{
field: 'bton_vertif', headerName: 'Gestion', minWidth: 50, flex: 1, maxWidth: 100, hideable: true, hide: false, editable: false, align: "center",
renderCell: (cellValues,) => {
return (
<nav style={{ width: '100%', 'textAlign': 'center' }}>
<IconButton
aria-label="more"
id="long-button"
aria-controls={open ? 'long-menu' : undefined}
aria-expanded={open ? 'true' : undefined}
aria-haspopup="true"
onClick={(e) => {
handleClick_option_button_vertical(e);
setprint_doc_id(cellValues.row._id);
setprint_file_extention(cellValues.row.file_extention);
setprint_file_business_object(cellValues.row.file_business_object);
}}
>
<MoreVertIcon />
</IconButton>
<Menu
id="long-menu"
MenuListProps={{
'aria-labelledby': 'long-button',
}}
anchorEl={anchorEl}
open={open}
onClose={handleClose_option_button_vertical}
onClick={(e) => {
}}
slotProps={{
paper: {
style: {
maxHeight: ITEM_HEIGHT * 4.5,
width: '20ch',
boxShadow: "-3px 4px 0px -30px #000000",
borderRadius: '0px !important',
lineHeight: '3rem'
},
},
}}
>
{options_menu_vertical.map((option) => (
<MenuItem key={option}
onClick={(e) => {
if (option && String(option) === "Télécharger") {
setselected_id(cellValues.row._id);
print_document_pdf(print_doc_id, print_file_extention, print_file_business_object);
}
if (option && String(option) === "Visualiser") {
setselected_id(cellValues.row._id);
preview_document_pdf(print_doc_id, print_file_extention, print_file_business_object);
setselected_doc_name(print_file_business_object);
setDialog_Preview_Doc_open(true);
}
setAnchorEl(null);
}}
>
{option}
</MenuItem>
))}
</Menu>
</nav>
);
},
},*/
]
const [selected_doc_img, setselected_doc_img] = React.useState("");
function preview_document_pdf(doc_id, file_extention, file_business_object) {
@ -1138,7 +1500,7 @@ const Modules_Mes_Documents = (props) => {
}).catch((error) => {
console.warn('Not good man :( Get_All_Documents_With_Filter = ', error);
setGet_All_Documents_With_Filter_api("false");
// alert(" Impossible de recuperer la liste des factures");
// alert(" Impossible de recuperer la liste des factures");
setdisplay_alert_mysy("1");
setalert_message(" Impossible de récuperer les documents ");
setalert_type("error");
@ -1315,7 +1677,7 @@ const Modules_Mes_Documents = (props) => {
.catch((error) => {
console.error(' Record_All_PJ Error:', error);
setDelete_List_document_api("false");
// alert(" Impossible de supprimer le document")
// alert(" Impossible de supprimer le document")
setdisplay_alert_mysy("1");
setalert_message(" Impossible de supprimer le document");
@ -1327,6 +1689,93 @@ const Modules_Mes_Documents = (props) => {
}
const [Publish_Unpublish_ENT_api, setPublish_Unpublish_ENT_api] = useState();
const [Publish_Unpublish_ENT_result, setPublish_Unpublish_ENT_result] = useState();
const [Publish_Unpublish_ENT_message, setPublish_Unpublish_ENT_message] = useState();
const Publish_Unpublish_ENT = (local_tab_ids, local_publish_statut) => {
const stored_cookie = getCookie('tokenmysypart');
var formData = new FormData();
formData.append("token", stored_cookie);
formData.append("tab_document_ids", local_tab_ids);
if (local_publish_statut === "1") {
formData.append("publish_ent", "0");
} else {
formData.append("publish_ent", "1");
}
fetch(
process.env.REACT_APP_API_URL + "myclass/api/Update_List_Stored_Downloaded_File_From_Id/",
{
method: 'POST',
body: formData,
}
)
.then((response) => response.json())
.then((result) => {
//console.log(" ## result['status'] = ", result['status'])
if (String(result['status']) === String("true")) {
//console.log('Success:', result['message']);
setPublish_Unpublish_ENT_result(result['message']);
setPublish_Unpublish_ENT_api("true");
if (props.partner_client_id && props.type_document && autorized_type_document.includes(String(props.type_document)) &&
props.partner_owner_recid === "") {
setmyprops_type_document(props.type_document);
setp_filtre1("filter_type_document");
setp_filtre1_value(props.type_document);
Get_All_Documents_With_Filter();
} else if (props.partner_client_id && props.type_document && String(props.type_document) === "all" &&
props.partner_owner_recid === "") {
Get_All_Documents_With_Filter();
}
else if (props.partner_owner_recid && props.partner_client_id === "") {
Get_All_Documents_With_Filter();
}
else {
Get_List_Of_All_PJ();
}
setdisplay_alert_mysy("1");
setalert_message(result['message']);
setalert_type("success");
}
else {
setPublish_Unpublish_ENT_message(result['message']);
setPublish_Unpublish_ENT_api("false");
setdisplay_alert_mysy("1");
setalert_message(result['message']);
setalert_type("error");
}
})
.catch((error) => {
console.error(' Record_All_PJ Error:', error);
setPublish_Unpublish_ENT_api("false");
// alert(" Impossible de supprimer le document")
setdisplay_alert_mysy("1");
setalert_message(" Impossible de publier ou dépublier le document");
setalert_type("error");
});
}
return (
<div className="modules_mes_documents">
@ -2272,7 +2721,7 @@ const Modules_Mes_Documents = (props) => {
}}
>
<DataGrid
{props.object_owner_collection !== "inscription" && <DataGrid
components={{
Toolbar: CustomToolbar
@ -2324,6 +2773,9 @@ const Modules_Mes_Documents = (props) => {
file_date_expiration: JSON.parse(item).file_date_expiration,
file_expired: JSON.parse(item).file_expired,
publish_ent: JSON.parse(item).publish_ent,
}
))}
@ -2372,7 +2824,111 @@ const Modules_Mes_Documents = (props) => {
}}
/>
/>}
{props && props.object_owner_collection && props.object_owner_collection === "inscription" && <DataGrid
components={{
Toolbar: CustomToolbar
}}
componentsProps={{ toolbar: { data_colums: columns } }}
// checkboxSelection
disableSelectionOnClick
onSelectionModelChange={(newSelectionModel) => {
setSelectionModel(newSelectionModel);
/*if (newSelectionModel.length === 1)
handleClick_edit_invoice_From_Line(newSelectionModel);*/
if (newSelectionModel.length !== 1) {
//clean_order_detail_fields();
//setsubmenu();
setdisplay_detail_invoice();
}
}}
onRowDoubleClick={(newSelectionModel) => {
setgridline_id(newSelectionModel.row.id);
// setp_detail_header_client_nom_id(newSelectionModel.row.order_header_client_id);
// handleClick_edit_invoice_From_Line(newSelectionModel.row.id);
}
}
selectionModel={selectionModel}
localeText={frFR.components.MuiDataGrid.defaultProps.localeText}
rows={rowss.map((item, index) => (
{
id: index,
_id: JSON.parse(item)._id,
file_name: JSON.parse(item).file_name,
file_business_object: JSON.parse(item).file_business_object,
object_owner_collection: JSON.parse(item).object_owner_collection,
type_document: JSON.parse(item).type_document,
file_extention: JSON.parse(item).file_extention,
client_raison_sociale: JSON.parse(item).client_raison_sociale,
client_nom: JSON.parse(item).client_nom,
creation_date: JSON.parse(item).creation_date,
related_client_nom: JSON.parse(item).related_client_nom,
related_inscrit_email: JSON.parse(item).related_inscrit_email,
related_code_session: JSON.parse(item).related_code_session,
related_ftion_external_code: JSON.parse(item).related_ftion_external_code,
is_secure_file: JSON.parse(item).is_secure_file,
file_date_expiration: JSON.parse(item).file_date_expiration,
file_expired: JSON.parse(item).file_expired,
publish_ent: JSON.parse(item).publish_ent,
}
))}
columns={columns_for_inscrit}
pageSize={10}
className="datagridclass"
rowsPerPageOptions={[10]}
//disableSelectionOnClick
/* components={{
Toolbar: GridToolbar,
}}*/
//sx={datagridSx}
getCellClassName={(params) => {
}}
getRowClassName={(params) => {
// Pour la gestion de la couleur de zone double cliquée
if (String(params.row.file_expired) === "1") {
return 'line--statut-expired';
}
else if (String(params.row.id) === String(gridline_id)) {
if (String(params.row.is_secure_file) === "1")
return 'line--statut--selected-secure';
else
return 'line--statut--selected';
}
else if (parseInt(String(params.row.id)) % 2 === 0) {
if (String(params.row.is_secure_file) === "1")
return 'line--statut--pair--secure';
else
return 'line--statut--pair';
}
else if (parseInt(String(params.row.id)) % 2 !== 0) {
if (String(params.row.is_secure_file) === "1")
return 'line--statut--impair--secure';
else
return 'line--statut--impair';
}
}}
/>}
</Box>
<br />

View File

@ -554,7 +554,7 @@ function Student_Account_Ent() {
{connected_user_data && connected_user_data.type &&
<div style={{ width: '100%', maxWidth: '1600px', margin: 'auto', marginTop: '3rem' }}>
<h3 className="titre_ent_h3"> Espace numérique de travail de <br /> {connected_user_data.prenom && connected_user_data.nom && <font style={{ fontWeight: "600" }}> {connected_user_data.prenom.charAt(0).toUpperCase() + connected_user_data.prenom.slice(1).toLocaleLowerCase()} &nbsp;{connected_user_data.nom.toUpperCase()} </font>}
<h3 className="titre_ent_h3"> Espace numérique de travail de <br /> {connected_user_data.prenom && connected_user_data.nom && <font style={{ fontWeight: "600" }}> {connected_user_data.prenom.charAt(0).toUpperCase() + connected_user_data.prenom.slice(1).toLocaleLowerCase()} &nbsp;{connected_user_data.nom.toUpperCase()} </font>}
</h3>
</div>}

View File

@ -128,14 +128,19 @@ function UpdateUserInfo(props) {
setResult(res.data.message);
var mylocaltraining = JSON.parse(res.data.message);
if (mylocaltraining) {
console.log(" ### mylocaltraining = ", mylocaltraining)
//console.log(" ### mylocaltraining = ", mylocaltraining)
var current_apprenant_data = {}
if (mylocaltraining && mylocaltraining.apprenant_data) {
current_apprenant_data = mylocaltraining.apprenant_data
}
console.log(" ### current_apprenant_data = ", current_apprenant_data)
setp_detail_age("?");
if (mylocaltraining.age) {
setp_detail_age(mylocaltraining.age);
}
//console.log(" ### current_apprenant_data = ", current_apprenant_data)
setp_detail_civilite("neutre");
if (current_apprenant_data.civilite) {
@ -188,6 +193,8 @@ function UpdateUserInfo(props) {
}
setp_detail_is_rgpd(false);
if (current_apprenant_data.is_rgpd && current_apprenant_data.is_rgpd === "1") {
setp_detail_is_rgpd(true);
@ -294,7 +301,7 @@ function UpdateUserInfo(props) {
var liste_champs = ["detail_civilite", "last_name", "filds_nom_jeune_fille", "surname", "filds_date_naissance", "mob_phone",
"mail", "field_matricule", "field_ine", "field_cvec", "adr_street", "adr_zip",
"adr_city", "adr_country", "link_linkedin", "link_facebook", "link_twitter"]
"adr_city", "adr_country", "link_linkedin", "link_facebook", "link_twitter", "field_num_ss", "field_sitation_famille"]
for (let i = 0; i < liste_champs.length; i++) {
@ -314,7 +321,7 @@ function UpdateUserInfo(props) {
setuser_data_changed("");
var liste_champs = ["detail_civilite", "last_name", "filds_nom_jeune_fille", "surname", "filds_date_naissance", "mob_phone",
"mail", "field_matricule", "field_ine", "field_cvec", "adr_street", "adr_zip",
"field_cvec", "adr_street", "adr_zip",
"adr_city", "adr_country", "link_linkedin", "link_facebook", "link_twitter"]
@ -1153,14 +1160,14 @@ function UpdateUserInfo(props) {
InputLabelProps={{
shrink: true,
}}
disabled={!Boolean(parseInt(user_edit_data))}
disabled={false}
className="disabled_style enable_style"
value={p_detail_num_secu}
onChange={(e) => {
/* onChange={(e) => {
setp_detail_num_secu(e.target.value);
setuser_data_changed("1");
}
}
}*/
/>
</nav>
</div>
@ -1222,7 +1229,7 @@ function UpdateUserInfo(props) {
}}> Situation Maritale </nav>
<nav style={{ width: '60%', float: 'right', textAlign: 'left' }}>
{String(user_edit_data) === "1" && New_Option_Famille_Situation && New_Option_Famille_Situation.length > 0 &&
{/*String(user_edit_data) === "1" && New_Option_Famille_Situation && New_Option_Famille_Situation.length > 0 &&
<Autocomplete
disablePortal
name="field_sitation_famille"
@ -1260,9 +1267,9 @@ function UpdateUserInfo(props) {
/>
}
/>}
/>*/}
{String(user_edit_data) !== "1" && New_Option_Famille_Situation && New_Option_Famille_Situation.length > 0 &&
{New_Option_Famille_Situation && New_Option_Famille_Situation.length > 0 &&
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
@ -1488,14 +1495,14 @@ function UpdateUserInfo(props) {
id="mail"
disabled={true}
disabled={false}
className="disabled_style enable_style"
value={p_detail_mail}
onChange={(e) => {
setp_detail_mail(e.target.value);
setuser_data_changed("1");
}
}
/*onChange={(e) => {
setp_detail_mail(e.target.value);
setuser_data_changed("1");
}
}*/
/>
</div>
@ -1519,14 +1526,14 @@ function UpdateUserInfo(props) {
id="field_matricule"
disabled={true}
disabled={false}
className="disabled_style enable_style"
value={p_detail_matricule}
onChange={(e) => {
setp_detail_matricule(e.target.value);
setuser_data_changed("1");
}
}
/* onChange={(e) => {
setp_detail_matricule(e.target.value);
setuser_data_changed("1");
}
}*/
/>
</div>
@ -1542,14 +1549,14 @@ function UpdateUserInfo(props) {
id="field_ine"
disabled={true}
disabled={false}
className="disabled_style enable_style"
value={p_detail_ine}
onChange={(e) => {
setp_detail_ine(e.target.value);
setuser_data_changed("1");
}
}
/*onChange={(e) => {
setp_detail_ine(e.target.value);
setuser_data_changed("1");
}
}*/
/>
</div>

View File

@ -2378,7 +2378,7 @@
text-align: center;
margin-bottom: 0.8rem;
color: white;
cursor: pointer;
cursor: default;
font-style: italic;
background-color: gray;
font-weight: normal;
@ -3211,7 +3211,7 @@
text-align: center;
margin-bottom: 0.8rem;
color: white;
cursor: pointer;
cursor: default;
font-style: italic;
background-color: gray;
font-weight: normal;

View File

@ -71,7 +71,7 @@
text-align: center;
margin-bottom: 0.8rem;
color: white;
cursor: pointer;
cursor: default;
font-style: italic;
background-color: gray;
font-weight: normal;

View File

@ -11,7 +11,7 @@
.popup-reset-pwd-content {
top: 10% !important;
left: 2rem !important;
width: 15rem !important;
height: 15rem !important;
font-family: "DMS Sans", "verdana", "Quicksand", "Signika", sans-serif !important;
font-size: small !important;