16/07/2025 - 20h
parent
1bc07bce26
commit
1ccb50cb06
|
@ -14,9 +14,9 @@ import { Editor } from '@tinymce/tinymce-react';
|
|||
import { IoArrowUndoCircle } from "react-icons/io5";
|
||||
import { GrUserAdmin, GrOrderedList } from "react-icons/gr";
|
||||
import parse from 'html-react-parser';
|
||||
import fileDownload from 'js-file-download'
|
||||
import 'react-tooltip/dist/react-tooltip.css'
|
||||
import { Tooltip } from 'react-tooltip'
|
||||
import fileDownload from 'js-file-download';
|
||||
import 'react-tooltip/dist/react-tooltip.css';
|
||||
import { Tooltip } from 'react-tooltip';
|
||||
import Popup from 'reactjs-popup';
|
||||
import 'reactjs-popup/dist/index.css';
|
||||
import img_loading_spin from "./../mysy_img/mysy_spin_loading.gif";
|
||||
|
@ -1771,6 +1771,7 @@ const AddClassManual = (props) => {
|
|||
if (mylocaltraining._id) {
|
||||
setselected_class_id(mylocaltraining._id);
|
||||
Get_List_Of_All_PJ(mylocaltraining._id);
|
||||
Get_Class_Catalogue_File(mylocaltraining._id);
|
||||
}
|
||||
|
||||
//document.getElementsByName("external_code")[0].value = mylocaltraining.external_code;
|
||||
|
@ -3838,6 +3839,96 @@ const AddClassManual = (props) => {
|
|||
};
|
||||
|
||||
|
||||
// Cette fonction permet d'enregister la fiche catalogue d'une formation
|
||||
const [Record_Class_Catalogue_File_api, setRecord_Class_Catalogue_File_api] = useState();
|
||||
const [Record_Class_Catalogue_File_result, setRecord_Class_Catalogue_File_result] = useState();
|
||||
const [Record_Class_Catalogue_File_message, setRecord_Class_Catalogue_File_message] = useState();
|
||||
|
||||
function Record_Class_Catalogue_File() {
|
||||
|
||||
if (!p_detail_one_file_to_download_type_name) {
|
||||
//alert(" Vous devez donner un nom à la pièce jointe");
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message("Vous devez donner un nom à la pièce jointe");
|
||||
setalert_type("error");
|
||||
return;
|
||||
}
|
||||
|
||||
if (file_1_name && file_1_name.name) {
|
||||
//console.log(" ### Traitement de : ", file_1_name.name);
|
||||
|
||||
const formData = new FormData();
|
||||
formData.append('File', file_1_name);
|
||||
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
formData.append("token", stored_cookie);
|
||||
formData.append("file_business_object", p_detail_one_file_to_download_type_name);
|
||||
formData.append("file_name", file_1_name.name);
|
||||
formData.append("status", "0");
|
||||
formData.append("object_owner_collection", "myclass");
|
||||
formData.append("object_owner_id", selected_class_id);
|
||||
formData.append("type_document", "catalogue_file");
|
||||
|
||||
//formData.append("class_internal_url", internal_url);
|
||||
//console.log("token = " + stored_cookie);
|
||||
|
||||
setLoading(true);
|
||||
fetch(
|
||||
process.env.REACT_APP_API_URL + "myclass/api/Store_User_Downloaded_File/",
|
||||
{
|
||||
method: 'POST',
|
||||
body: formData,
|
||||
}
|
||||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
|
||||
setLoading(false);
|
||||
//console.log(" ## result['status'] = ", result['status'])
|
||||
if (String(result['status']) === String("true")) {
|
||||
//console.log('Success:', result['message']);
|
||||
setRecord_Class_Catalogue_File_result(result['message']);
|
||||
setRecord_Class_Catalogue_File_api("true");
|
||||
|
||||
// Get_List_Of_All_PJ(selected_class_id);
|
||||
setfile_1_name();
|
||||
setp_detail_one_file_to_download_type_name();
|
||||
//GetCurrentClass_trainingsession();
|
||||
// alert(" La pièce jointe " + file_1_name.name + " a été bien enregistrée")
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(" La pièce jointe " + file_1_name.name + " a été bien enregistrée");
|
||||
setalert_type("success");
|
||||
|
||||
}
|
||||
else {
|
||||
setRecord_Class_Catalogue_File_message(result['message']);
|
||||
setRecord_Class_Catalogue_File_api("false");
|
||||
//alert(result['message']);
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(result['message']);
|
||||
setalert_type("error");
|
||||
}
|
||||
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error(' Record_Class_Catalogue_File Error:', error);
|
||||
setRecord_Class_Catalogue_File_api("false");
|
||||
// alert(" Impossible d'ajouter la pièce jointe");
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message("Impossible d'ajouter la pièce jointe");
|
||||
setalert_type("error");
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
const [add_one_eu_to_class, setadd_one_eu_to_class] = useState("");
|
||||
|
||||
const [Record_All_PJ_api, setRecord_All_PJ_api] = useState();
|
||||
|
@ -3892,6 +3983,7 @@ const AddClassManual = (props) => {
|
|||
setRecord_All_PJ_api("true");
|
||||
|
||||
Get_List_Of_All_PJ(selected_class_id);
|
||||
Get_Class_Catalogue_File(selected_class_id);
|
||||
setfile_1_name();
|
||||
setp_detail_one_file_to_download_type_name();
|
||||
//GetCurrentClass_trainingsession();
|
||||
|
@ -3961,6 +4053,7 @@ const AddClassManual = (props) => {
|
|||
setDelete_one_attached_document_result(result['message']);
|
||||
setDelete_one_attached_document_api("true");
|
||||
Get_List_Of_All_PJ(selected_class_id);
|
||||
Get_Class_Catalogue_File(selected_class_id);
|
||||
// alert(result['message']);
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(result['message']);
|
||||
|
@ -3997,8 +4090,66 @@ const AddClassManual = (props) => {
|
|||
|
||||
}
|
||||
|
||||
|
||||
|
||||
const [Get_Class_Catalogue_File_api, setGet_Class_Catalogue_File_api] = useState();
|
||||
const [Get_Class_Catalogue_File_result, setGet_Class_Catalogue_File_result] = useState([]);
|
||||
const [Get_Class_Catalogue_File_message, setGet_Class_Catalogue_File_message] = useState();
|
||||
|
||||
function Get_Class_Catalogue_File(local_employee_id) {
|
||||
|
||||
const formData = new FormData();
|
||||
|
||||
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
formData.append("token", stored_cookie);
|
||||
formData.append("filter_object_owner_collection", "myclass");
|
||||
formData.append("filter_object_owner_id", local_employee_id);
|
||||
formData.append("filter_type_document", "catalogue_file");
|
||||
|
||||
|
||||
//formData.append("class_internal_url", internal_url);
|
||||
//console.log("token = " + stored_cookie);
|
||||
setLoading(true);
|
||||
|
||||
fetch(
|
||||
process.env.REACT_APP_API_URL + "myclass/api/Get_List_object_owner_collection_Stored_Files_With_Filter/",
|
||||
{
|
||||
method: 'POST',
|
||||
body: formData,
|
||||
}
|
||||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
setLoading(false);
|
||||
|
||||
//console.log(" ## result['status'] = ", result['status'])
|
||||
if (String(result['status']) === String("true")) {
|
||||
//console.log('Message :', result['message']);
|
||||
setGet_Class_Catalogue_File_result(result['message']);
|
||||
setGet_Class_Catalogue_File_api("true");
|
||||
|
||||
}
|
||||
else {
|
||||
setGet_Class_Catalogue_File_message(result['message']);
|
||||
setGet_Class_Catalogue_File_api("false");
|
||||
}
|
||||
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error(' Get_Class_Catalogue_File Error:', error);
|
||||
setGet_Class_Catalogue_File_api("false");
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
const [Get_List_Of_All_PJ_api, setGet_List_Of_All_PJ_api] = useState();
|
||||
const [Get_List_Of_All_PJ_result, setGet_List_Of_All_PJ_result] = useState();
|
||||
const [Get_List_Of_All_PJ_result, setGet_List_Of_All_PJ_result] = useState([]);
|
||||
const [Get_List_Of_All_PJ_message, setGet_List_Of_All_PJ_message] = useState();
|
||||
|
||||
function Get_List_Of_All_PJ(local_employee_id) {
|
||||
|
@ -5575,6 +5726,7 @@ const AddClassManual = (props) => {
|
|||
{String(props.formation_initiale) !== "1" &&
|
||||
<div className="div_row" style={{ "border": "None", "marginLeft": '10px' }} ref={myRef}>
|
||||
<Button variant="outlined" onClick={submenu_detail_formation} className="detail_class_submenu" id='detail_formation' name='detail_formation'>Détail Formation</Button>
|
||||
<Button variant="outlined" onClick={submenu_unite_enseignement} className="detail_class_submenu" id='unite_enseignement' name='unite_enseignement'>Unite Enseign. </Button>
|
||||
{String(props.mytrainingclass.ref).trim() !== "" && <Button variant="outlined" onClick={submenu_piece_jointe}
|
||||
className="detail_class_submenu" id='piece_jointe' name='piece_jointe'>Pièces Jointes </Button>}
|
||||
</div>}
|
||||
|
@ -7321,7 +7473,7 @@ const AddClassManual = (props) => {
|
|||
resize: false,
|
||||
height: 300,
|
||||
menubar: true,
|
||||
plugins: [
|
||||
plugins: [
|
||||
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'print', 'preview', 'anchor', 'searchreplace',
|
||||
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'paste', 'code', 'help', 'wordcount',
|
||||
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
|
||||
|
@ -7381,7 +7533,7 @@ const AddClassManual = (props) => {
|
|||
resize: false,
|
||||
height: 300,
|
||||
menubar: true,
|
||||
plugins: [
|
||||
plugins: [
|
||||
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'print', 'preview', 'anchor', 'searchreplace',
|
||||
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'paste', 'code', 'help', 'wordcount',
|
||||
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
|
||||
|
@ -7479,7 +7631,7 @@ const AddClassManual = (props) => {
|
|||
resize: false,
|
||||
height: 300,
|
||||
menubar: true,
|
||||
plugins: [
|
||||
plugins: [
|
||||
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'print', 'preview', 'anchor', 'searchreplace',
|
||||
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'paste', 'code', 'help', 'wordcount',
|
||||
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
|
||||
|
@ -7516,7 +7668,7 @@ const AddClassManual = (props) => {
|
|||
resize: false,
|
||||
height: 300,
|
||||
menubar: true,
|
||||
plugins: [
|
||||
plugins: [
|
||||
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'print', 'preview', 'anchor', 'searchreplace',
|
||||
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'paste', 'code', 'help', 'wordcount',
|
||||
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
|
||||
|
@ -7554,7 +7706,7 @@ const AddClassManual = (props) => {
|
|||
resize: false,
|
||||
height: 300,
|
||||
menubar: true,
|
||||
plugins: [
|
||||
plugins: [
|
||||
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'print', 'preview', 'anchor', 'searchreplace',
|
||||
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'paste', 'code', 'help', 'wordcount',
|
||||
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
|
||||
|
@ -7614,7 +7766,7 @@ const AddClassManual = (props) => {
|
|||
resize: false,
|
||||
height: 300,
|
||||
menubar: true,
|
||||
plugins: [
|
||||
plugins: [
|
||||
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'print', 'preview', 'anchor', 'searchreplace',
|
||||
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'paste', 'code', 'help', 'wordcount',
|
||||
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
|
||||
|
@ -7650,7 +7802,7 @@ const AddClassManual = (props) => {
|
|||
resize: false,
|
||||
height: 300,
|
||||
menubar: true,
|
||||
plugins: [
|
||||
plugins: [
|
||||
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'print', 'preview', 'anchor', 'searchreplace',
|
||||
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'paste', 'code', 'help', 'wordcount',
|
||||
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
|
||||
|
@ -7686,7 +7838,7 @@ const AddClassManual = (props) => {
|
|||
resize: false,
|
||||
height: 300,
|
||||
menubar: true,
|
||||
plugins: [
|
||||
plugins: [
|
||||
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'print', 'preview', 'anchor', 'searchreplace',
|
||||
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'paste', 'code', 'help', 'wordcount',
|
||||
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
|
||||
|
@ -7745,7 +7897,7 @@ const AddClassManual = (props) => {
|
|||
resize: false,
|
||||
height: 300,
|
||||
menubar: true,
|
||||
plugins: [
|
||||
plugins: [
|
||||
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'print', 'preview', 'anchor', 'searchreplace',
|
||||
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'paste', 'code', 'help', 'wordcount',
|
||||
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
|
||||
|
@ -7804,7 +7956,7 @@ const AddClassManual = (props) => {
|
|||
resize: false,
|
||||
height: 300,
|
||||
menubar: true,
|
||||
plugins: [
|
||||
plugins: [
|
||||
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'print', 'preview', 'anchor', 'searchreplace',
|
||||
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'paste', 'code', 'help', 'wordcount',
|
||||
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
|
||||
|
@ -7930,16 +8082,155 @@ const AddClassManual = (props) => {
|
|||
</nav>
|
||||
*/}
|
||||
|
||||
<nav >
|
||||
|
||||
</nav>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
}
|
||||
|
||||
|
||||
{String(props.check_user_acces_right("formation", "write")) === "1" && <div className="div_row_bis"
|
||||
style={{ "marginBottom": "10px", "marginTop": "1rem", fontFamily:"DM Sans" }} >
|
||||
|
||||
Fiche catalogue <br />
|
||||
{String(props.check_user_acces_right("formation", "write")) === "1" && <div className="div_row" style={{ "padding": "5px", "border": "None", "marginBottom": "1px" }}>
|
||||
|
||||
{Get_Class_Catalogue_File_result && Get_Class_Catalogue_File_result.length <= 0 && <div style={{ "fontSize": "12px" }}>
|
||||
<label htmlFor="upload-photo">
|
||||
<input
|
||||
style={{ display: "none" }}
|
||||
id="upload-photo"
|
||||
name="upload-photo"
|
||||
type="file"
|
||||
onChange={sessions_file_change_1}
|
||||
/>
|
||||
|
||||
<Fab
|
||||
color="secondary"
|
||||
size="small"
|
||||
component="span"
|
||||
aria-label="add"
|
||||
variant="extended"
|
||||
>
|
||||
<IoMdAddCircle /> <nav style={{ "fontSize": "12px" }}> Ajouter un fichier </nav>
|
||||
</Fab>
|
||||
|
||||
</label>
|
||||
</div>}
|
||||
{file_1_name && file_1_name.name &&
|
||||
<nav style={{ "fontSize": "12px" }}>
|
||||
<div className="session_caract">Nom du fichier <br />
|
||||
<TextField
|
||||
name="file_to_download_type_name"
|
||||
id="file_to_download_type_name"
|
||||
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
|
||||
disabled={!Boolean(props.check_user_acces_right("formation", "write"))}
|
||||
className="disabled_style enable_style"
|
||||
value={p_detail_one_file_to_download_type_name}
|
||||
onChange={(e) => {
|
||||
setp_detail_one_file_to_download_type_name(e.target.value);
|
||||
|
||||
}}
|
||||
/>
|
||||
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
Fichier : {file_1_name.name} <br /> <font style={{ "cursor": "pointer", fontFamily:"DM Sans" }}
|
||||
onClick={Delete_file_1_name}> Supprimer <IoIosRemoveCircleOutline /> </font>
|
||||
</nav>}
|
||||
|
||||
{Record_Class_Catalogue_File_api && String(Record_Class_Catalogue_File_api) === "true" && <div className="okUpdateData"> Pièce jointe enregistrée </div>}
|
||||
|
||||
{Record_Class_Catalogue_File_api && String(Record_Class_Catalogue_File_api) === "false" && <div className="koUpdateData"> {Record_Class_Catalogue_File_message} </div>}
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
|
||||
{file_1_name && file_1_name.name && <div className="div_row" style={{ "padding": "5px", "border": "none" }}>
|
||||
|
||||
<div className="div_row_gauche" style={{ "padding": "5px", "border": "none" }}>
|
||||
<Button variant="contained" onClick={Record_Class_Catalogue_File}
|
||||
startIcon={<AiTwotoneSave />} className="bton_enreg" style={{ "width": "80%", fontFamily:"DM Sans" }}>ENREGISTRER LA PIECE</Button>
|
||||
</div>
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
{Get_Class_Catalogue_File_result && <div className="div_row" style={{ "padding": "5px", "border": "None" }}>
|
||||
<div className="div_row" style={{ "padding": "5px", "border": "None", "marginBottom": "1px" }}>
|
||||
|
||||
<div className="div_row" style={{ "padding": "5px", "border": "None", fontFamily:"DM Sans" }}>
|
||||
{Get_Class_Catalogue_File_result && Get_Class_Catalogue_File_result.map((val) => (
|
||||
<div className="div_row_list_pj" >
|
||||
|
||||
<nav name={(JSON.parse(val).file_name)}
|
||||
id={(JSON.parse(val).file_name)}> <i> <AttachFileIcon />{(JSON.parse(val).file_business_object)} </i> <br /><font style={{ "color": "green", "cursor": "pointer" }}
|
||||
name={(JSON.parse(val).file_name)}
|
||||
id={(JSON.parse(val).file_name)} onClick={Download_one_attached_document}> Télécharger </font></nav>
|
||||
|
||||
|
||||
{String(props.check_user_acces_right("formation", "write")) === "1" && <Popup
|
||||
trigger={
|
||||
<nav style={{ "color": "red", "cursor": "pointer" }} > Supprimer</nav>
|
||||
|
||||
|
||||
}
|
||||
modal
|
||||
nested
|
||||
position="center center"
|
||||
>
|
||||
{close => (
|
||||
<div>
|
||||
<button className="gest_close" onClick={close}>
|
||||
×
|
||||
</button>
|
||||
<div className="gest_header"> MySy Information </div>
|
||||
<div className="gest_content">
|
||||
{' '}
|
||||
|
||||
En confirmant cette opération, la pièce jointe sera <i><font color="red"> définitivement supprimée</font></i>. <br />
|
||||
|
||||
|
||||
</div>
|
||||
<div className="gest_actions">
|
||||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
|
||||
Delete_one_attached_document(event);
|
||||
close();
|
||||
}}
|
||||
name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}
|
||||
> 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>}
|
||||
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>}
|
||||
|
||||
|
||||
</div>}
|
||||
<div className="div_row_bis" style={{ "marginBottom": "10px", "marginTop": "1rem" }} >
|
||||
|
||||
|
||||
|
@ -7950,7 +8241,7 @@ const AddClassManual = (props) => {
|
|||
2 - Image Bannière <br/>
|
||||
3 - L'image par defaut du métier dans le système
|
||||
">
|
||||
<div className="div_row_gauche_image"> Image de profil <br />
|
||||
<div className="div_row_gauche_image" style={{ fontFamily:"DM Sans"}}> Image de profil <br />
|
||||
<img class="img_class_logo" src={userimgclassprofil} /><br />
|
||||
|
||||
</div>
|
||||
|
@ -7966,7 +8257,7 @@ const AddClassManual = (props) => {
|
|||
</div>}
|
||||
|
||||
</div>
|
||||
{String(props.check_user_acces_right("formation", "write")) === "1" && <div className="div_row_bis tips_img_class">
|
||||
{String(props.check_user_acces_right("formation", "write")) === "1" && <div className="div_row_bis tips_img_class" style={{fontFamily:"DM Sans"}}>
|
||||
<li>
|
||||
L'image doit etre carrée.
|
||||
</li>
|
||||
|
|
|
@ -4774,7 +4774,7 @@ const AddParnerClient = (props) => {
|
|||
/>
|
||||
</div>
|
||||
|
||||
<div className="session_caract"> <b> Conditions Paiement aa </b><br />
|
||||
<div className="session_caract"> <b> Conditions Paiement </b><br />
|
||||
{/*String(formedit_mode_invoice) !== "1" && <TextField
|
||||
required
|
||||
name="client_invoice_paiement_condition"
|
||||
|
|
|
@ -1619,7 +1619,7 @@ const DisplayDetailClass_new_v2 = (props) => {
|
|||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_long_txt">
|
||||
|
||||
<div className="mob_info_page_title_desc_title">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
|
||||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_desc pourqui_block">
|
||||
|
@ -2146,7 +2146,7 @@ const DisplayDetailClass_new_v2 = (props) => {
|
|||
|
||||
{DetailTraining["pourqui"] && String(DetailTraining["pourqui"]).length > 2 && <div className="block_info_page_pave_title_desc_long_text">
|
||||
<div className="block_info_page_pave_title_desc_title ">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
{DetailTraining["pourqui"] && <div className="block_info_page_pave_title_desc_desc pourqui_block">
|
||||
{parse(String(DetailTraining["pourqui"]))}
|
||||
|
|
|
@ -1836,7 +1836,7 @@ const DisplayDetailClass_new_v3 = (props) => {
|
|||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_long_txt">
|
||||
|
||||
<div className="mob_info_page_title_desc_title">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
|
||||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_desc pourqui_block">
|
||||
|
@ -2242,7 +2242,7 @@ const DisplayDetailClass_new_v3 = (props) => {
|
|||
|
||||
{DetailTraining["pourqui"] && String(DetailTraining["pourqui"]).length > 2 && <div className="block_info_page_pave_title_desc_long_text">
|
||||
<div className="block_info_page_pave_title_desc_title ">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
{DetailTraining["pourqui"] && <div className="block_info_page_pave_title_desc_desc pourqui_block">
|
||||
{parse(String(DetailTraining["pourqui"]))}
|
||||
|
|
|
@ -15,7 +15,7 @@ import { Tooltip } from 'react-tooltip'
|
|||
import TextareaAutosize from '@mui/material/TextareaAutosize';
|
||||
import excel_icone from "../mysy_img/excel_icone.png";
|
||||
import participants from "../mysy_img/participants.png";
|
||||
import fileDownload from 'js-file-download'
|
||||
import fileDownload from 'js-file-download';
|
||||
import Popup from 'reactjs-popup';
|
||||
import 'reactjs-popup/dist/index.css';
|
||||
import { FcSearch } from "react-icons/fc";
|
||||
|
@ -883,7 +883,7 @@ const DisplayPartnerPromotion = (props) => {
|
|||
setAnchorEl(null);
|
||||
|
||||
if (option && String(option) === "Mise à jour") {
|
||||
setdialogOpen_supp(true);
|
||||
setdialogOpen_update(true);
|
||||
}
|
||||
|
||||
else if (option && String(option) === "Valider Insc.") {
|
||||
|
@ -905,8 +905,8 @@ const DisplayPartnerPromotion = (props) => {
|
|||
</Menu>
|
||||
|
||||
{/*** GESTION Dialog menu pour la mise à jour */}
|
||||
{dialogOpen_supp && <Dialog
|
||||
open={dialogOpen_supp}
|
||||
{dialogOpen_update && <Dialog
|
||||
open={dialogOpen_update}
|
||||
className="displaypartnersession"
|
||||
static
|
||||
onClose={() => null}
|
||||
|
@ -936,7 +936,7 @@ const DisplayPartnerPromotion = (props) => {
|
|||
<DialogContent className="DialogContent_width" style={{ background: '#fff', border: '1px solid #eaecee' }}>
|
||||
|
||||
<div>
|
||||
<button className="gest_close" onClick={Dialog_menuitem_close_supp}>
|
||||
<button className="gest_close" onClick={Dialog_menuitem_close_update}>
|
||||
×
|
||||
</button>
|
||||
<div className="gest_header"> MySy Information </div>
|
||||
|
@ -950,7 +950,7 @@ const DisplayPartnerPromotion = (props) => {
|
|||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
handleClick_update_data(event, working_cellValues_preisnc);
|
||||
Dialog_menuitem_close_supp();
|
||||
Dialog_menuitem_close_update();
|
||||
}}> Valider </button>
|
||||
|
||||
</div>
|
||||
|
@ -959,7 +959,7 @@ const DisplayPartnerPromotion = (props) => {
|
|||
className="gest_bton_popup_annuler"
|
||||
onClick={() => {
|
||||
// console.log('modal closed ');
|
||||
Dialog_menuitem_close_supp();
|
||||
Dialog_menuitem_close_update();
|
||||
}}
|
||||
>
|
||||
Annuler
|
||||
|
@ -1213,6 +1213,10 @@ const DisplayPartnerPromotion = (props) => {
|
|||
|
||||
|
||||
|
||||
const [dialogOpen_update, setdialogOpen_update] = useState(false);
|
||||
const Dialog_menuitem_close_update = () => {
|
||||
setdialogOpen_update(false)
|
||||
};
|
||||
|
||||
|
||||
const [working_cellValues, setworking_cellValues] = useState(false);
|
||||
|
@ -5230,6 +5234,7 @@ const DisplayPartnerPromotion = (props) => {
|
|||
setLoading(false);
|
||||
|
||||
if (String(res.data.status) === String("true")) {
|
||||
Get_List_Partner_Clients();
|
||||
//console.log(" In Invoice_Session_Formation_By_Selected_Inscrit res.data.status = " + res.data.status);
|
||||
//console.log(" In Invoice_Session_Formation_By_Selected_Inscrit res.data.message r_class = " + res.data.message);
|
||||
setInvoice_Session_Formation_By_Selected_Inscrit_api("true");
|
||||
|
@ -12307,8 +12312,8 @@ const DisplayPartnerPromotion = (props) => {
|
|||
}
|
||||
var url = process.env.REACT_APP_API_URL + "myclass/api/Prepare_and_Send_Convention_From_Session_For_Selected_Inscrit_By_PDF/" + stored_cookie + "/" + selected_session_id + "/" + selected_convention_id + "/" + tab_my_inscription_ids;
|
||||
|
||||
console.log(" ### tab_my_inscription_ids = ", tab_my_inscription_ids);
|
||||
console.log(" ### url = ", url);
|
||||
// console.log(" ### tab_my_inscription_ids = ", tab_my_inscription_ids);
|
||||
// console.log(" ### url = ", url);
|
||||
|
||||
|
||||
|
||||
|
@ -26386,6 +26391,7 @@ const DisplayPartnerPromotion = (props) => {
|
|||
|
||||
{String(selected_session_invoiced_statut) !== "1" && String(selected_session_invoiced_statut) !== "2" &&
|
||||
<Button className="bton_emarge" onClick={(event, value) => {
|
||||
Getall_Sequence_Of_Session(selected_session_id);
|
||||
setVal([]);
|
||||
setValo([]);
|
||||
setDialog_Emargement_Selection_open(true);
|
||||
|
|
|
@ -886,7 +886,7 @@ const DisplayPartnerSession = (props) => {
|
|||
setAnchorEl(null);
|
||||
|
||||
if (option && String(option) === "Mise à jour") {
|
||||
setdialogOpen_supp(true);
|
||||
setdialogOpen_update(true);
|
||||
}
|
||||
|
||||
else if (option && String(option) === "Valider Insc.") {
|
||||
|
@ -908,8 +908,8 @@ const DisplayPartnerSession = (props) => {
|
|||
</Menu>
|
||||
|
||||
{/*** GESTION Dialog menu pour la mise à jour */}
|
||||
{dialogOpen_supp && <Dialog
|
||||
open={dialogOpen_supp}
|
||||
{dialogOpen_update && <Dialog
|
||||
open={dialogOpen_update}
|
||||
className="displaypartnersession"
|
||||
static
|
||||
onClose={() => null}
|
||||
|
@ -939,7 +939,7 @@ const DisplayPartnerSession = (props) => {
|
|||
<DialogContent className="DialogContent_width" style={{ background: '#fff', border: '1px solid #eaecee' }}>
|
||||
|
||||
<div>
|
||||
<button className="gest_close" onClick={Dialog_menuitem_close_supp}>
|
||||
<button className="gest_close" onClick={Dialog_menuitem_close_update}>
|
||||
×
|
||||
</button>
|
||||
<div className="gest_header"> MySy Information </div>
|
||||
|
@ -953,7 +953,7 @@ const DisplayPartnerSession = (props) => {
|
|||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
handleClick_update_data(event, working_cellValues_preisnc);
|
||||
Dialog_menuitem_close_supp();
|
||||
Dialog_menuitem_close_update();
|
||||
}}> Valider </button>
|
||||
|
||||
</div>
|
||||
|
@ -962,7 +962,7 @@ const DisplayPartnerSession = (props) => {
|
|||
className="gest_bton_popup_annuler"
|
||||
onClick={() => {
|
||||
// console.log('modal closed ');
|
||||
Dialog_menuitem_close_supp();
|
||||
Dialog_menuitem_close_update();
|
||||
}}
|
||||
>
|
||||
Annuler
|
||||
|
@ -1217,6 +1217,12 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
|
||||
|
||||
const [dialogOpen_update, setdialogOpen_update] = useState(false);
|
||||
const Dialog_menuitem_close_update = () => {
|
||||
setdialogOpen_update(false)
|
||||
};
|
||||
|
||||
|
||||
|
||||
const [working_cellValues, setworking_cellValues] = useState(false);
|
||||
const [dialogOpen_supp, setdialogOpen_supp] = useState(false);
|
||||
|
@ -3812,6 +3818,7 @@ const DisplayPartnerSession = (props) => {
|
|||
}
|
||||
|
||||
function submenu_preinscrit() {
|
||||
Get_List_Partner_Clients();
|
||||
setsubmenu("preinscrit");
|
||||
GetListePreinscrit(selected_session_id, selected_internal_url);
|
||||
|
||||
|
@ -3819,6 +3826,7 @@ const DisplayPartnerSession = (props) => {
|
|||
}
|
||||
|
||||
function submenu_inscrit() {
|
||||
Get_List_Partner_Clients();
|
||||
setsubmenu("inscrit");
|
||||
|
||||
GetListeInscrit(selected_session_id, selected_internal_url);
|
||||
|
@ -5243,6 +5251,7 @@ const DisplayPartnerSession = (props) => {
|
|||
setLoading(false);
|
||||
|
||||
if (String(res.data.status) === String("true")) {
|
||||
Get_List_Partner_Clients();
|
||||
//console.log(" In Invoice_Session_Formation_By_Selected_Inscrit res.data.status = " + res.data.status);
|
||||
//console.log(" In Invoice_Session_Formation_By_Selected_Inscrit res.data.message r_class = " + res.data.message);
|
||||
setInvoice_Session_Formation_By_Selected_Inscrit_api("true");
|
||||
|
@ -17820,7 +17829,7 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
|
||||
|
||||
<div className="session_caract_Dialog" > yyyChoisir un modèle d'émargement
|
||||
<div className="session_caract_Dialog" > Choisir un modèle d'émargement
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
name="event_dialog_version_emargement"
|
||||
|
@ -26452,6 +26461,7 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
{String(selected_session_invoiced_statut) !== "1" && String(selected_session_invoiced_statut) !== "2" &&
|
||||
<Button className="bton_emarge" onClick={(event, value) => {
|
||||
Getall_Sequence_Of_Session(selected_session_id);
|
||||
setVal([]);
|
||||
setValo([]);
|
||||
setDialog_Emargement_Selection_open(true);
|
||||
|
|
|
@ -1401,7 +1401,7 @@ const Display_Action_And_Class = (props) => {
|
|||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_long_txt">
|
||||
|
||||
<div className="mob_info_page_title_desc_title">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
|
||||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_desc pourqui_block">
|
||||
|
@ -1584,7 +1584,7 @@ const Display_Action_And_Class = (props) => {
|
|||
|
||||
{DetailTraining["pourqui"] && String(DetailTraining["pourqui"]).length > 2 && <div className="block_info_page_pave_title_desc_long_text">
|
||||
<div className="block_info_page_pave_title_desc_title ">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
{DetailTraining["pourqui"] && <div className="block_info_page_pave_title_desc_desc pourqui_block">
|
||||
{parse(String(DetailTraining["pourqui"]))}
|
||||
|
|
|
@ -2,33 +2,26 @@ import React, { useRef, useState, useEffect } from "react";
|
|||
|
||||
import "./detail_formation_automatic_files/new_s_detail_formation_2025.css";
|
||||
import Fotter_Catalog_Pub from "./Fotter_Catalog_Pub";
|
||||
|
||||
import fileDownload from 'js-file-download';
|
||||
import SendIcon from '@mui/icons-material/Send';
|
||||
import { useParams } from 'react-router-dom'
|
||||
import axios from "axios";
|
||||
import Popup from 'reactjs-popup';
|
||||
import 'reactjs-popup/dist/index.css';
|
||||
import bannerimg2 from "../mysy_img/MYSY-LOGO-BLUE.png";
|
||||
import logowhite from "../mysy_img/MYSY-LOGO-WHITE.png";
|
||||
|
||||
import { Helmet } from "react-helmet";
|
||||
import 'react-slideshow-image/dist/styles.css'
|
||||
import { Fade } from 'react-slideshow-image';
|
||||
|
||||
import slideimg1 from "../mysy_img/education.jpg";
|
||||
import slideimg4 from "../mysy_img/mysy_img.png";
|
||||
import Footer from "./Fotter";
|
||||
import Header from "./Header";
|
||||
import bannerimg from "../mysy_img/MYSY_banner_compte.png";
|
||||
|
||||
import img_met_program from "../mysy_img/met_programmation.jpg";
|
||||
import img_met_hotel from "../mysy_img/met_hotel.jpg";
|
||||
import img_met_graphisme from "../mysy_img/metier_graphisme.jpg";
|
||||
|
||||
import img_met_autre from "../mysy_img/met_autre.jpg";
|
||||
import img_met_digital from "../mysy_img/met_digital.jpg";
|
||||
import img_met_management from "../mysy_img/met_management.jpg";
|
||||
import img_met_projet from "../mysy_img/met_projet.jpg";
|
||||
|
||||
import img_met_market from "../mysy_img/met_market.jpg";
|
||||
import img_met_autre2 from "../mysy_img/met_autre2.jpg";
|
||||
import img_met_dev_perso from "../mysy_img/metier_dev_perso.jpg";
|
||||
import img_met_rh from "../mysy_img/met_rh.jpg";
|
||||
|
||||
|
@ -42,18 +35,14 @@ import img_met_sante_nat from "../mysy_img/met_sante_nat.jpeg";
|
|||
import { Button, } from "reactstrap";
|
||||
import { useHistory } from "react-router-dom";
|
||||
import { useCookies } from "react-cookie";
|
||||
import { FacebookShareButton, LinkedinShareButton, TwitterShareButton } from "react-share";
|
||||
import { SocialIcon } from 'react-social-icons';
|
||||
|
||||
import { confirmAlert } from 'react-confirm-alert';
|
||||
//import { Rating } from 'react-simple-star-rating';
|
||||
import Rating from '@mui/material/Rating';
|
||||
import parse from 'html-react-parser';
|
||||
import Inscription from "./Inscription_Information";
|
||||
|
||||
import mysy_logo2 from "../mysy_img2/Logo_MySy.png"
|
||||
import { FaSearch, FaRegArrowAltCircleDown, FaRegArrowAltCircleUp } from 'react-icons/fa';
|
||||
import { areOptionsEqual } from "@mui/base";
|
||||
import { style } from "@mui/system";
|
||||
|
||||
|
||||
import Accordion from '@mui/material/Accordion';
|
||||
import AccordionDetails from '@mui/material/AccordionDetails';
|
||||
|
@ -402,6 +391,54 @@ const Display_Partner_Catalog_DetailClass_new_v2 = (props) => {
|
|||
}
|
||||
|
||||
|
||||
const [Get_Class_Catalogue_File_api, setGet_Class_Catalogue_File_api] = useState();
|
||||
const [Get_Class_Catalogue_File_result, setGet_Class_Catalogue_File_result] = useState([]);
|
||||
const [Get_Class_Catalogue_File_message, setGet_Class_Catalogue_File_message] = useState();
|
||||
|
||||
function Get_Class_Catalogue_File(class_id) {
|
||||
|
||||
const formData = new FormData();
|
||||
|
||||
formData.append("filter_object_owner_collection", "myclass");
|
||||
formData.append("filter_object_owner_id", class_id);
|
||||
formData.append("filter_type_document", "catalogue_file");
|
||||
|
||||
|
||||
//formData.append("class_internal_url", internal_url);
|
||||
//console.log("token = " + stored_cookie);
|
||||
|
||||
fetch(
|
||||
process.env.REACT_APP_API_URL + "myclass/api/Get_List_object_owner_collection_Stored_Files_With_Filter_No_Token/",
|
||||
{
|
||||
method: 'POST',
|
||||
body: formData,
|
||||
}
|
||||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
|
||||
//console.log(" ## result['status'] = ", result['status'])
|
||||
if (String(result['status']) === String("true")) {
|
||||
//console.log('Message :', result['message']);
|
||||
setGet_Class_Catalogue_File_result(result['message']);
|
||||
setGet_Class_Catalogue_File_api("true");
|
||||
|
||||
}
|
||||
else {
|
||||
setGet_Class_Catalogue_File_message(result['message']);
|
||||
setGet_Class_Catalogue_File_api("false");
|
||||
}
|
||||
|
||||
})
|
||||
.catch((error) => {
|
||||
|
||||
console.error(' Get_Class_Catalogue_File Error:', error);
|
||||
setGet_Class_Catalogue_File_api("false");
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
function Display(e) {
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_class_for_partner_catalog/";
|
||||
|
@ -526,6 +563,8 @@ const Display_Partner_Catalog_DetailClass_new_v2 = (props) => {
|
|||
getClassImage_no_token(JSON.parse(res.data.message)._id, JSON.parse(res.data.message).external_code);
|
||||
|
||||
|
||||
Get_Class_Catalogue_File(JSON.parse(res.data.message)._id);
|
||||
|
||||
if (JSON.parse(res.data.message).note) {
|
||||
setratingvalue(JSON.parse(res.data.message).note);
|
||||
}
|
||||
|
@ -600,137 +639,137 @@ const Display_Partner_Catalog_DetailClass_new_v2 = (props) => {
|
|||
|
||||
|
||||
//console.log("nb_partner_certificat = ", JSON.parse(res.data.message).nb_partner_certificat);
|
||||
|
||||
|
||||
if (window.screen.width < 601) {
|
||||
|
||||
var decalage_pr_certificat = parseInt(String(JSON.parse(res.data.message).nb_partner_certificat)) * 150;
|
||||
//console.log("decalage_pr_certificat = ", decalage_pr_certificat);
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
|
||||
//console.log("### local_val = ", local_val)
|
||||
if (local_val >= 5) {
|
||||
//console.log(" ON PASSE au MAX")
|
||||
var local_tmp_val = 2300 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4000 + decalage_pr_certificat;
|
||||
//console.log("### local_tmp_val = ", local_tmp_val, " local_main_h_px = ",local_main_h_px);
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
|
||||
var local_tmp_val = 2800 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4500 + decalage_pr_certificat;
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
}
|
||||
|
||||
} else {
|
||||
//console.log(" ON PASSE au MIN");
|
||||
var local_tmp_val = 2100 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4800 + decalage_pr_certificat;
|
||||
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
var local_tmp_val = 2600 + decalage_pr_certificat;
|
||||
var local_main_h_px = 5300 + decalage_pr_certificat;
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
}
|
||||
}
|
||||
document.getElementById('mob_block_cross_sell_cat').style.top = local_tmp;
|
||||
document.getElementById('mobile').style.height = main_h_px;
|
||||
|
||||
}
|
||||
|
||||
if (window.screen.width >= 601 && window.screen.width <= 991) {
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
//console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2700px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2200px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
|
||||
}
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
|
||||
|
||||
}
|
||||
|
||||
if (window.screen.width >= 992 && window.screen.width <= 1199) {
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2800px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2200px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
|
||||
}
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
}
|
||||
|
||||
if (window.screen.width >= 1200) {
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2800px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2300px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
}
|
||||
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
if (window.screen.width < 601) {
|
||||
|
||||
var decalage_pr_certificat = parseInt(String(JSON.parse(res.data.message).nb_partner_certificat)) * 150;
|
||||
//console.log("decalage_pr_certificat = ", decalage_pr_certificat);
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
|
||||
//console.log("### local_val = ", local_val)
|
||||
if (local_val >= 5) {
|
||||
//console.log(" ON PASSE au MAX")
|
||||
var local_tmp_val = 2300 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4000 + decalage_pr_certificat;
|
||||
//console.log("### local_tmp_val = ", local_tmp_val, " local_main_h_px = ",local_main_h_px);
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
|
||||
var local_tmp_val = 2800 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4500 + decalage_pr_certificat;
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
}
|
||||
|
||||
} else {
|
||||
//console.log(" ON PASSE au MIN");
|
||||
var local_tmp_val = 2100 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4800 + decalage_pr_certificat;
|
||||
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
var local_tmp_val = 2600 + decalage_pr_certificat;
|
||||
var local_main_h_px = 5300 + decalage_pr_certificat;
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
}
|
||||
}
|
||||
document.getElementById('mob_block_cross_sell_cat').style.top = local_tmp;
|
||||
document.getElementById('mobile').style.height = main_h_px;
|
||||
|
||||
}
|
||||
|
||||
if (window.screen.width >= 601 && window.screen.width <= 991) {
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
//console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2700px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2200px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
|
||||
}
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
|
||||
|
||||
}
|
||||
|
||||
if (window.screen.width >= 992 && window.screen.width <= 1199) {
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2800px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2200px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
|
||||
}
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
}
|
||||
|
||||
if (window.screen.width >= 1200) {
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2800px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2300px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
}
|
||||
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
}
|
||||
*/
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -1256,8 +1295,9 @@ const Display_Partner_Catalog_DetailClass_new_v2 = (props) => {
|
|||
const subdomain = domain.split('.')[0];
|
||||
|
||||
var form = new FormData();
|
||||
form.append("subdomain", "colasrail");
|
||||
// form.append("subdomain", "nousformons");
|
||||
// form.append("subdomain", "colasrail");
|
||||
// form.append("subdomain", "nousformons");
|
||||
form.append("subdomain", subdomain);
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Partner_Data_From_Subdomain/";
|
||||
|
||||
|
@ -1365,6 +1405,34 @@ const Display_Partner_Catalog_DetailClass_new_v2 = (props) => {
|
|||
const myRef_informe = useRef(null)
|
||||
|
||||
/// ----
|
||||
|
||||
const [Download_one_attached_document_no_token_api, setDownload_one_attached_document_no_token_api] = useState();
|
||||
const [Download_one_attached_document_no_token_result, setDownload_one_attached_document_no_token_result] = useState();
|
||||
const [Download_one_attached_document_no_token_message, setDownload_one_attached_document_no_token_message] = useState();
|
||||
|
||||
const Download_one_attached_document_no_token = (event) => {
|
||||
|
||||
var nom_fiche_detaillee = "Fiche_catalogue.pdf";
|
||||
var file_name = event.target.id;
|
||||
|
||||
|
||||
var url = process.env.REACT_APP_API_URL + "myclass/api/Get_Stored_Downloaded_File_From_Id_WITHOUT_TOKEN/" + file_name;
|
||||
|
||||
// console.log(" ### url = ", url);
|
||||
|
||||
|
||||
axios.get(url, { responseType: 'blob', },)
|
||||
.then((res) => {
|
||||
fileDownload(res.data, nom_fiche_detaillee);
|
||||
setDownload_one_attached_document_no_token_api("true");
|
||||
}).catch((error) => {
|
||||
console.error('Error:', error);
|
||||
setDownload_one_attached_document_no_token_api("false");
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
return (
|
||||
|
||||
<div className="displaydetailclass_new_v3 new_detail_formation_2025">
|
||||
|
@ -2046,7 +2114,7 @@ const Display_Partner_Catalog_DetailClass_new_v2 = (props) => {
|
|||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_long_txt">
|
||||
|
||||
<div className="mob_info_page_title_desc_title">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
|
||||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_desc pourqui_block">
|
||||
|
@ -2310,9 +2378,18 @@ const Display_Partner_Catalog_DetailClass_new_v2 = (props) => {
|
|||
</div>
|
||||
}
|
||||
|
||||
|
||||
|
||||
<br />
|
||||
|
||||
{Get_Class_Catalogue_File_result && Get_Class_Catalogue_File_result.length > 0 && <div className="row_download_fiche">
|
||||
|
||||
<nav className="bton_download_fiche" name={(JSON.parse(Get_Class_Catalogue_File_result[0])._id)}
|
||||
id={(JSON.parse(Get_Class_Catalogue_File_result[0])._id)} onClick={Download_one_attached_document_no_token}>
|
||||
Télécharger fiche détaillée
|
||||
</nav>
|
||||
|
||||
</div>}
|
||||
|
||||
|
||||
<div className="block_info_page_pave_title_desc">
|
||||
<div className="block_info_page_pave_title_desc_title"> Description
|
||||
|
||||
|
@ -2480,7 +2557,7 @@ const Display_Partner_Catalog_DetailClass_new_v2 = (props) => {
|
|||
|
||||
{DetailTraining["pourqui"] && String(DetailTraining["pourqui"]).length > 2 && <div className="block_info_page_pave_title_desc_long_text">
|
||||
<div className="block_info_page_pave_title_desc_title ">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
{DetailTraining["pourqui"] && <div className="block_info_page_pave_title_desc_desc pourqui_block">
|
||||
{parse(String(DetailTraining["pourqui"]))}
|
||||
|
|
|
@ -269,7 +269,7 @@ const Ent_Student_Affichage_Ftion_Grid = (props) => {
|
|||
maxWidth: '100%',
|
||||
height: '200px',
|
||||
overflow: 'hidden',
|
||||
marginTop: '-2rem'
|
||||
margin: "auto",
|
||||
|
||||
},
|
||||
content: {
|
||||
|
|
|
@ -130,7 +130,7 @@ function Inscription_Information(props) {
|
|||
|
||||
var nom = leads_nom;
|
||||
|
||||
console.log(" ## leads_nom ==", leads_nom)
|
||||
// console.log(" ## leads_nom ==", leads_nom)
|
||||
|
||||
if (String(nom).trim().length <= 0) {
|
||||
document.getElementsByName("nom")[0].style.borderColor = "red";
|
||||
|
@ -746,9 +746,7 @@ function Inscription_Information(props) {
|
|||
|
||||
formData.append('is_company', is_company);
|
||||
|
||||
console.log(" ### formData = ", formData);
|
||||
|
||||
return;
|
||||
// console.log(" ### formData = ", formData);
|
||||
|
||||
fetch(
|
||||
url,
|
||||
|
|
|
@ -266,10 +266,10 @@ const Formation_Partner_Catalog_Special_JMJFormation = (props) => {
|
|||
flexDirection: 'column',
|
||||
},
|
||||
image: {
|
||||
maxWidth: '100%',
|
||||
maxWidth: '100%',
|
||||
height: '200px',
|
||||
overflow: 'hidden',
|
||||
marginTop: '-2rem'
|
||||
margin: "auto",
|
||||
|
||||
},
|
||||
content: {
|
||||
|
|
|
@ -1768,7 +1768,7 @@ const JmJ_Display_Partner_Catalog_DetailClass_new_v2 = (props) => {
|
|||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_long_txt">
|
||||
|
||||
<div className="mob_info_page_title_desc_title">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
|
||||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_desc pourqui_block">
|
||||
|
@ -2283,7 +2283,7 @@ const JmJ_Display_Partner_Catalog_DetailClass_new_v2 = (props) => {
|
|||
|
||||
{DetailTraining["pourqui"] && String(DetailTraining["pourqui"]).length > 2 && <div className="block_info_page_pave_title_desc_long_text">
|
||||
<div className="block_info_page_pave_title_desc_title ">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
{DetailTraining["pourqui"] && <div className="block_info_page_pave_title_desc_desc pourqui_block">
|
||||
{parse(String(DetailTraining["pourqui"]))}
|
||||
|
|
|
@ -4409,7 +4409,7 @@ const Jmjformation_Catalogue_Public = (props) => {
|
|||
|
||||
</div>
|
||||
|
||||
<div style={{ width: '100%' }}>
|
||||
<div style={{ width: '100%', marginBottom:"1rem" }}>
|
||||
|
||||
<div className="block_display_flex_formation" style={{ width: '100%' }}>
|
||||
|
||||
|
|
|
@ -200,6 +200,7 @@ const Module_Editique = (props) => {
|
|||
setLoading(false);
|
||||
|
||||
if (String(res.data.status) === String("true")) {
|
||||
|
||||
//console.log(" In Invoice_Session_Formation res.data.status = " + res.data.status);
|
||||
//console.log(" In Invoice_Session_Formation res.data.message r_class = " + res.data.message);
|
||||
setInvoice_Session_Formation_api("true");
|
||||
|
@ -1486,7 +1487,7 @@ const Module_Editique = (props) => {
|
|||
|
||||
const Dialog_Acces_Right_handleClose_buton = () => {
|
||||
setDialog_Acces_Right_open(false);
|
||||
};
|
||||
};
|
||||
|
||||
const New_Option_Automatic_Doc_Action_Target = [
|
||||
{ "id": "start_session", "label": "Date Début Session", "value": "start_session" },
|
||||
|
@ -1502,7 +1503,7 @@ const Module_Editique = (props) => {
|
|||
]
|
||||
|
||||
const New_Option_Automatic_Doc_Action_Target_For_Q_Position = [
|
||||
{ "id": "start_session", "label": "Date Début Session", "value": "start_session" },
|
||||
{ "id": "start_session", "label": "Date Début Session", "value": "start_session" },
|
||||
{ "id": "end_session", "label": "Date Fin Session", "value": "end_session" },
|
||||
{ "id": "preinscription", "label": "A la pré-inscription", "value": "preinscription" },
|
||||
{ "id": "inscription", "label": "A l'inscription", "value": "inscription" },
|
||||
|
@ -1511,11 +1512,11 @@ const Module_Editique = (props) => {
|
|||
|
||||
|
||||
const New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL = [
|
||||
{ "id": "start_session", "label": "Date Début Session", "value": "start_session" },
|
||||
{ "id": "start_session", "label": "Date Début Session", "value": "start_session" },
|
||||
{ "id": "end_session", "label": "Date Fin Session", "value": "end_session" },
|
||||
{ "id": "preinscription", "label": "A la pré-inscription", "value": "preinscription" },
|
||||
{ "id": "inscription", "label": "A l'inscription", "value": "inscription" },
|
||||
{ "id": "every_session_sequence_day", "label": "Envoyer chaque jour", "value": "every_session_sequence_day" },
|
||||
{ "id": "every_session_sequence_day", "label": "Envoyer chaque jour", "value": "every_session_sequence_day" },
|
||||
{ "id": "", "label": "", "value": "" },
|
||||
]
|
||||
|
||||
|
@ -1718,8 +1719,8 @@ const Module_Editique = (props) => {
|
|||
/>}
|
||||
</div>
|
||||
|
||||
{(String(p_doc_automatic_setup_action_target_date) === "start_session" || String(p_doc_automatic_setup_action_target_date) === "end_session") &&
|
||||
|
||||
{(String(p_doc_automatic_setup_action_target_date) === "start_session" || String(p_doc_automatic_setup_action_target_date) === "end_session") &&
|
||||
|
||||
<div className="session_caract_Dialog"> Nb Jours <br />
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
|
@ -1755,8 +1756,8 @@ const Module_Editique = (props) => {
|
|||
|
||||
|
||||
{String(p_doc_automatic_setup_nom_document) !== "EMARGEMENT" &&
|
||||
String(p_doc_automatic_setup_nom_document) !== "QUESTION POSITIONNEMENT" &&
|
||||
<Autocomplete
|
||||
String(p_doc_automatic_setup_nom_document) !== "QUESTION POSITIONNEMENT" &&
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 } }}
|
||||
|
||||
|
@ -1809,7 +1810,7 @@ const Module_Editique = (props) => {
|
|||
}
|
||||
/>}
|
||||
|
||||
{String(p_doc_automatic_setup_nom_document) === "QUESTION POSITIONNEMENT" &&
|
||||
{String(p_doc_automatic_setup_nom_document) === "QUESTION POSITIONNEMENT" &&
|
||||
<Autocomplete
|
||||
disablePortal
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 } }}
|
||||
|
@ -3180,9 +3181,9 @@ const Module_Editique = (props) => {
|
|||
>
|
||||
|
||||
{x && String(x.actif) === "1" && New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.length > 0 &&
|
||||
<nav>
|
||||
<nav>
|
||||
<Tooltip className="tooltip_css" id={x.courrier_template_type_document_id} style={{ textAlign: 'left' }} />
|
||||
{(String(x.action_target_date) === "start_session" || String(x.action_target_date) === "end_session") && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
{(String(x.action_target_date) === "start_session" || String(x.action_target_date) === "end_session") && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={" Traitement Automatique : Oui <br/> Nb Jours : " + `${x.nb_jour_action}` + " <br/>Date Cible: " + `${x.action_target_date}` + " <br/>Exécution dans : " + `${x.delta_day}` + " Jour(s)"}>
|
||||
|
||||
{String(x.delta_day) < "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#FFA500' }} />}
|
||||
|
@ -3190,8 +3191,8 @@ const Module_Editique = (props) => {
|
|||
|
||||
</a>}
|
||||
|
||||
{String(x.action_target_date) !== "start_session" && String(x.action_target_date) !== "end_session" && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={"Traitement Automatique : Oui <br/>Exécution : " + `${New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.filter((data) => (data).value === String(x.action_target_date))[0].label}` }>
|
||||
{String(x.action_target_date) !== "start_session" && String(x.action_target_date) !== "end_session" && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={"Traitement Automatique : Oui <br/>Exécution : " + `${New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.filter((data) => (data).value === String(x.action_target_date))[0].label}`}>
|
||||
|
||||
{String(x.delta_day) < "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#FFA500' }} />}
|
||||
{String(x.delta_day) >= "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#218e1f' }} />}
|
||||
|
@ -3375,9 +3376,9 @@ const Module_Editique = (props) => {
|
|||
>
|
||||
|
||||
{x && String(x.actif) === "1" && New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.length > 0 &&
|
||||
<nav>
|
||||
<nav>
|
||||
<Tooltip className="tooltip_css" id={x.courrier_template_type_document_id} style={{ textAlign: 'left' }} />
|
||||
{(String(x.action_target_date) === "start_session" || String(x.action_target_date) === "end_session") && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
{(String(x.action_target_date) === "start_session" || String(x.action_target_date) === "end_session") && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={" Traitement Automatique : Oui <br/> Nb Jours : " + `${x.nb_jour_action}` + " <br/>Date Cible: " + `${x.action_target_date}` + " <br/>Exécution dans : " + `${x.delta_day}` + " Jour(s)"}>
|
||||
|
||||
{String(x.delta_day) < "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#FFA500' }} />}
|
||||
|
@ -3385,8 +3386,8 @@ const Module_Editique = (props) => {
|
|||
|
||||
</a>}
|
||||
|
||||
{String(x.action_target_date) !== "start_session" && String(x.action_target_date) !== "end_session" && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={"Traitement Automatique : Oui <br/>Exécution : " + `${New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.filter((data) => (data).value === String(x.action_target_date))[0].label}` }>
|
||||
{String(x.action_target_date) !== "start_session" && String(x.action_target_date) !== "end_session" && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={"Traitement Automatique : Oui <br/>Exécution : " + `${New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.filter((data) => (data).value === String(x.action_target_date))[0].label}`}>
|
||||
|
||||
{String(x.delta_day) < "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#FFA500' }} />}
|
||||
{String(x.delta_day) >= "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#218e1f' }} />}
|
||||
|
@ -3568,9 +3569,9 @@ const Module_Editique = (props) => {
|
|||
>
|
||||
|
||||
{x && String(x.actif) === "1" && New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.length > 0 &&
|
||||
<nav>
|
||||
<nav>
|
||||
<Tooltip className="tooltip_css" id={x.courrier_template_type_document_id} style={{ textAlign: 'left' }} />
|
||||
{(String(x.action_target_date) === "start_session" || String(x.action_target_date) === "end_session") && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
{(String(x.action_target_date) === "start_session" || String(x.action_target_date) === "end_session") && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={" Traitement Automatique : Oui <br/> Nb Jours : " + `${x.nb_jour_action}` + " <br/>Date Cible: " + `${x.action_target_date}` + " <br/>Exécution dans : " + `${x.delta_day}` + " Jour(s)"}>
|
||||
|
||||
{String(x.delta_day) < "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#FFA500' }} />}
|
||||
|
@ -3578,8 +3579,8 @@ const Module_Editique = (props) => {
|
|||
|
||||
</a>}
|
||||
|
||||
{String(x.action_target_date) !== "start_session" && String(x.action_target_date) !== "end_session" && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={"Traitement Automatique : Oui <br/>Exécution : " + `${New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.filter((data) => (data).value === String(x.action_target_date))[0].label}` }>
|
||||
{String(x.action_target_date) !== "start_session" && String(x.action_target_date) !== "end_session" && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={"Traitement Automatique : Oui <br/>Exécution : " + `${New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.filter((data) => (data).value === String(x.action_target_date))[0].label}`}>
|
||||
|
||||
{String(x.delta_day) < "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#FFA500' }} />}
|
||||
{String(x.delta_day) >= "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#218e1f' }} />}
|
||||
|
@ -3664,9 +3665,9 @@ const Module_Editique = (props) => {
|
|||
>
|
||||
|
||||
{x && String(x.actif) === "1" && New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.length > 0 &&
|
||||
<nav>
|
||||
<nav>
|
||||
<Tooltip className="tooltip_css" id={x.courrier_template_type_document_id} style={{ textAlign: 'left' }} />
|
||||
{(String(x.action_target_date) === "start_session" || String(x.action_target_date) === "end_session") && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
{(String(x.action_target_date) === "start_session" || String(x.action_target_date) === "end_session") && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={" Traitement Automatique : Oui <br/> Nb Jours : " + `${x.nb_jour_action}` + " <br/>Date Cible: " + `${x.action_target_date}` + " <br/>Exécution dans : " + `${x.delta_day}` + " Jour(s)"}>
|
||||
|
||||
{String(x.delta_day) < "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#FFA500' }} />}
|
||||
|
@ -3674,8 +3675,8 @@ const Module_Editique = (props) => {
|
|||
|
||||
</a>}
|
||||
|
||||
{String(x.action_target_date) !== "start_session" && String(x.action_target_date) !== "end_session" && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={"Traitement Automatique : Oui <br/>Exécution : " + `${New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.filter((data) => (data).value === String(x.action_target_date))[0].label}` }>
|
||||
{String(x.action_target_date) !== "start_session" && String(x.action_target_date) !== "end_session" && <a data-tooltip-id={x.courrier_template_type_document_id}
|
||||
data-tooltip-html={"Traitement Automatique : Oui <br/>Exécution : " + `${New_Option_Automatic_Doc_Action_Target_GLOBAL_FOR_ALL.filter((data) => (data).value === String(x.action_target_date))[0].label}`}>
|
||||
|
||||
{String(x.delta_day) < "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#FFA500' }} />}
|
||||
{String(x.delta_day) >= "0" && <MdFlashAuto style={{ fontSize: '25px', color: '#218e1f' }} />}
|
||||
|
|
|
@ -2232,7 +2232,7 @@ const Module_Ent_Mes_Formations = (props) => {
|
|||
{
|
||||
affichage_class && String(affichage_class) === "grid" && <div className="div_row" style={{ paddingRight: '10px' }}>
|
||||
|
||||
<div style={{ width: '100%', float: 'left', }}>
|
||||
<div style={{ width: '100%', float: 'left', marginBottom:"1rem" }}>
|
||||
<div className="block_display_flex_formation">
|
||||
|
||||
{New_Get_List_Ent_Formation_result && New_Get_List_Ent_Formation_result.map((formation) => (
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import React, { useRef, useState, useEffect } from "react";
|
||||
import TextField from '@mui/material/TextField';
|
||||
|
||||
import fileDownload from 'js-file-download';
|
||||
import 'react-confirm-alert/src/react-confirm-alert.css'; // Import css
|
||||
import Button from '@mui/material/Button';
|
||||
import axios from "axios";
|
||||
|
@ -2013,6 +2013,7 @@ const Module_Session_Notes_Classement = (props) => {
|
|||
const [actionmass_ftion_val, setactionmass_ftion_val] = useState();
|
||||
const New_Option = [
|
||||
{ "id": "0", "label": "(R)Inscrire", "value": "inscription" },
|
||||
{ "id": "1", "label": "Imp. Bulletin", "value": "print_bulletin" },
|
||||
{ "id": "2", "label": "", "value": "" },
|
||||
]
|
||||
|
||||
|
@ -2167,6 +2168,51 @@ const Module_Session_Notes_Classement = (props) => {
|
|||
}
|
||||
|
||||
|
||||
function Download_Bulletins_Notes() {
|
||||
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
var nom_fichier_cmd = "Bulletin.zip";
|
||||
|
||||
|
||||
var tab_inscrit_ids = []
|
||||
for (var i = 0; i < selectionModel_note_Session_classement.length; i++) {
|
||||
var myid = parseInt(String(selectionModel_note_Session_classement[i]));
|
||||
var line = New_Getall_Session_Final_Note_Classement_result[myid];
|
||||
tab_inscrit_ids.push(line._id);
|
||||
//console.log(rowss[myid]['external_code']);
|
||||
}
|
||||
|
||||
// console.log(" ### tab_inscrit_ids = ", tab_inscrit_ids)
|
||||
|
||||
var url = process.env.REACT_APP_API_URL + "myclass/api/Prepare_and_Send_Inscrit_Bulletin_Note_By_PDF/" + stored_cookie + "/" + tab_inscrit_ids + "/685ebd41ed392125a88f1574";
|
||||
|
||||
setLoading(true);
|
||||
axios.get(url, { responseType: 'blob', },)
|
||||
.then((res) => {
|
||||
setLoading(false);
|
||||
//console.log(" In Download_Stagiaire_Conventions_PDF res.data = " + res.data);
|
||||
if (String(res.data) === String("false")) {
|
||||
alert("Impossible de télécharger les bulletins (2) ");
|
||||
} else {
|
||||
fileDownload(res.data, nom_fichier_cmd);
|
||||
setactionmass_ftion_val("");
|
||||
|
||||
}
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.error('Error:', error);
|
||||
|
||||
setdisplay_alert_mysy("1");
|
||||
setalert_message(" Impossible de télécharger les bulletins");
|
||||
setalert_type("error");
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
const [Add_Inscription_List_Apprenant_api, setAdd_Inscription_List_Apprenant_api] = useState();
|
||||
const [Add_Inscription_List_Apprenant_message, setAdd_Inscription_List_Apprenant_message] = useState();
|
||||
const [Add_Inscription_List_Apprenant_result, setAdd_Inscription_List_Apprenant_result] = useState();
|
||||
|
@ -2425,7 +2471,7 @@ const Module_Session_Notes_Classement = (props) => {
|
|||
|
||||
<DialogActions>
|
||||
<IconButton
|
||||
autoFocus
|
||||
// autoFocus
|
||||
onClick={Dialog_add_inscription_handleClose_buton}
|
||||
color="primary"
|
||||
className={classes.customizedButton}
|
||||
|
@ -2802,11 +2848,12 @@ const Module_Session_Notes_Classement = (props) => {
|
|||
options={New_Option}
|
||||
onChange={(event, value) => {
|
||||
if (value && value.value) {
|
||||
if (String(value.value) === "inscription") {
|
||||
if (String(value.value) === "inscription"
|
||||
|| String(value.value) === "print_bulletin") {
|
||||
setactionmass_ftion_val(value.value);
|
||||
}
|
||||
else {
|
||||
setactionmass_ftion_val();
|
||||
setactionmass_ftion_val("");
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -2833,6 +2880,16 @@ const Module_Session_Notes_Classement = (props) => {
|
|||
|
||||
</nav>}
|
||||
|
||||
{actionmass_ftion_val && String(actionmass_ftion_val) === "print_bulletin" && <nav className='block_en_mass_bton_action'>
|
||||
<Button className="bton_enreg" style={{ "width": "90%" }} onClick={(event) => {
|
||||
|
||||
Download_Bulletins_Notes();
|
||||
}}>
|
||||
<FcAcceptDatabase /> Traiter
|
||||
</Button>
|
||||
|
||||
</nav>}
|
||||
|
||||
|
||||
|
||||
</div>}
|
||||
|
|
|
@ -3,7 +3,7 @@ import { useForm } from "react-hook-form";
|
|||
import axios from "axios";
|
||||
import Formation_Partner_Catalog from "./Formation_Partner_Catalog";
|
||||
import { FaSearch, FaRegArrowAltCircleDown, FaRegArrowAltCircleUp } from 'react-icons/fa';
|
||||
|
||||
|
||||
import { IoAppsSharp, IoListSharp } from "react-icons/io5";
|
||||
import Formation_Grid_2Col from "./Formation_Grid_2Col";
|
||||
import Pagination from "./TestPagination";
|
||||
|
@ -4877,7 +4877,7 @@ const Mon_Catalogue_Public = (props) => {
|
|||
|
||||
</div>
|
||||
|
||||
<div style={{ width: '100%' }}>
|
||||
<div style={{ width: '100%', marginBottom:"1rem" }}>
|
||||
|
||||
<div className="block_display_flex_formation" style={{ width: '100%' }}>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React, { useState, useEffect } from "react";
|
||||
|
||||
import { useHistory } from "react-router-dom";
|
||||
|
||||
|
||||
import { useCookies } from "react-cookie";
|
||||
import { confirmAlert } from 'react-confirm-alert';
|
||||
|
||||
|
@ -23,7 +23,7 @@ import axios from "axios";
|
|||
import Rating from '@mui/material/Rating';
|
||||
import parse from 'html-react-parser'
|
||||
import { CiLocationOn } from "react-icons/ci";
|
||||
|
||||
|
||||
const New_C_Formation_2025 = (props) => {
|
||||
const [userconnected, setuserconnected] = useState("0");
|
||||
const [partnerconnected, setpartnerconnected] = useState("0");
|
||||
|
@ -265,11 +265,12 @@ const New_C_Formation_2025 = (props) => {
|
|||
display: 'flex',
|
||||
flexDirection: 'column',
|
||||
},
|
||||
|
||||
image: {
|
||||
maxWidth: '100%',
|
||||
height: '200px',
|
||||
overflow: 'hidden',
|
||||
marginTop: '-2rem'
|
||||
margin: "auto",
|
||||
|
||||
},
|
||||
content: {
|
||||
|
@ -420,7 +421,7 @@ const New_C_Formation_2025 = (props) => {
|
|||
{/*props.formation.institut_formation && <div style={{ width: '100%', "textAlign": "center" }}> Dispensé par : <br />
|
||||
{String(props.formation.institut_formation)} </div>*/}
|
||||
</div>}
|
||||
|
||||
|
||||
|
||||
<div className="block_main_contente">
|
||||
<div className="block_top_content">
|
||||
|
@ -441,8 +442,8 @@ const New_C_Formation_2025 = (props) => {
|
|||
<p style={{ width: '100%', float: 'left' }}>
|
||||
|
||||
<p className="formation_prix" style={{ width: '100%', float: 'left' }}>{props.formation.business_prices[0].discounted_price}€ HT
|
||||
<font className='training_price_barre' style={{ fontSize:'14px' }}> {props.formation.price} € HT </font>
|
||||
<font className='discount_block' style={{ fontSize:'14px' }}> ({props.formation.business_prices[0].discount} %) </font></p>
|
||||
<font className='training_price_barre' style={{ fontSize: '14px' }}> {props.formation.price} € HT </font>
|
||||
<font className='discount_block' style={{ fontSize: '14px' }}> ({props.formation.business_prices[0].discount} %) </font></p>
|
||||
</p>}
|
||||
|
||||
<p className="formation_description"> {String(parse(String(props.formation.description).replace(/(<([^>]+)>)/ig, ''))).substring(0, 80)}...</p>
|
||||
|
@ -472,7 +473,7 @@ const New_C_Formation_2025 = (props) => {
|
|||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
)
|
||||
|
|
|
@ -1967,8 +1967,8 @@ const Partner = (props) => {
|
|||
{String(menu) !== "affichage" && <MenuItem onClick={DiplaytrainingList} className="sousmenu" icon={<FcList className="icone_menu" />}> CATALOGUE </MenuItem>}
|
||||
{String(menu) === "affichage" && <MenuItem onClick={DiplaytrainingList} className="sousmenu_selected" icon={<FcList className="icone_menu" />}> CATALOGUE </MenuItem>}
|
||||
|
||||
{String(formation_initiale) === "1" && String(menu) !== "mes_ue" && <MenuItem onClick={DiplayPartner_UE} className="sousmenu" icon={<FcOrgUnit className="icone_menu" />}> UNIT. ENSEI. </MenuItem>}
|
||||
{String(formation_initiale) === "1" && String(menu) === "mes_ue" && <MenuItem onClick={DiplayPartner_UE} className="sousmenu_selected" icon={<FcOrgUnit className="icone_menu" />}> UNIT. ENSEI. </MenuItem>}
|
||||
{String(menu) !== "mes_ue" && <MenuItem onClick={DiplayPartner_UE} className="sousmenu" icon={<FcOrgUnit className="icone_menu" />}> UNIT. ENSEI. </MenuItem>}
|
||||
{String(menu) === "mes_ue" && <MenuItem onClick={DiplayPartner_UE} className="sousmenu_selected" icon={<FcOrgUnit className="icone_menu" />}> UNIT. ENSEI. </MenuItem>}
|
||||
|
||||
{String(menu) !== "domaine_categorie_metier" && <MenuItem onClick={DiplayPartner_Domaine_Categorie_Metier} className="sousmenu" icon={<FcEngineering className="icone_menu" />}> CARACTERISTIQUES </MenuItem>}
|
||||
{String(menu) === "domaine_categorie_metier" && <MenuItem onClick={DiplayPartner_Domaine_Categorie_Metier} className="sousmenu_selected" icon={<FcEngineering className="icone_menu" />}> CARACTERISTIQUES </MenuItem>}
|
||||
|
|
|
@ -2708,7 +2708,7 @@ function UpdateParnterInfo(props) {
|
|||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('UpdateStagiaireData : Not good man :( Add_Update_Catalog_Pub_Banniere = ' + error);
|
||||
console.warn('Add_Update_Catalog_Pub_Banniere : Not good man :( Add_Update_Catalog_Pub_Banniere = ' + error);
|
||||
setAdd_Update_Catalog_Pub_Banniere_api("false");
|
||||
alert(" Impossible de mettre à jour la bannière ");
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ import { useParams } from 'react-router-dom'
|
|||
import axios from "axios";
|
||||
import { FcInfo } from "react-icons/fc";
|
||||
import 'reactjs-popup/dist/index.css';
|
||||
|
||||
import fileDownload from 'js-file-download';
|
||||
import { Helmet } from "react-helmet";
|
||||
import 'react-slideshow-image/dist/styles.css'
|
||||
import 'react-tooltip/dist/react-tooltip.css'
|
||||
|
@ -360,6 +360,56 @@ const New_C_Detail_Formation_2025 = (props) => {
|
|||
}
|
||||
|
||||
|
||||
const [Get_Class_Catalogue_File_api, setGet_Class_Catalogue_File_api] = useState();
|
||||
const [Get_Class_Catalogue_File_result, setGet_Class_Catalogue_File_result] = useState([]);
|
||||
const [Get_Class_Catalogue_File_message, setGet_Class_Catalogue_File_message] = useState();
|
||||
|
||||
function Get_Class_Catalogue_File(class_id) {
|
||||
|
||||
const formData = new FormData();
|
||||
|
||||
formData.append("filter_object_owner_collection", "myclass");
|
||||
formData.append("filter_object_owner_id", class_id);
|
||||
formData.append("filter_type_document", "catalogue_file");
|
||||
|
||||
|
||||
//formData.append("class_internal_url", internal_url);
|
||||
//console.log("token = " + stored_cookie);
|
||||
|
||||
fetch(
|
||||
process.env.REACT_APP_API_URL + "myclass/api/Get_List_object_owner_collection_Stored_Files_With_Filter_No_Token/",
|
||||
{
|
||||
method: 'POST',
|
||||
body: formData,
|
||||
}
|
||||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
|
||||
//console.log(" ## result['status'] = ", result['status'])
|
||||
if (String(result['status']) === String("true")) {
|
||||
//console.log('Message :', result['message']);
|
||||
setGet_Class_Catalogue_File_result(result['message']);
|
||||
setGet_Class_Catalogue_File_api("true");
|
||||
|
||||
}
|
||||
else {
|
||||
setGet_Class_Catalogue_File_message(result['message']);
|
||||
setGet_Class_Catalogue_File_api("false");
|
||||
}
|
||||
|
||||
})
|
||||
.catch((error) => {
|
||||
|
||||
console.error(' Get_Class_Catalogue_File Error:', error);
|
||||
setGet_Class_Catalogue_File_api("false");
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
function Display(e) {
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_class/";
|
||||
|
@ -484,6 +534,9 @@ const New_C_Detail_Formation_2025 = (props) => {
|
|||
getClassImage_no_token(JSON.parse(res.data.message)._id, JSON.parse(res.data.message).external_code);
|
||||
|
||||
|
||||
Get_Class_Catalogue_File(JSON.parse(res.data.message)._id);
|
||||
|
||||
|
||||
if (JSON.parse(res.data.message).note) {
|
||||
setratingvalue(JSON.parse(res.data.message).note);
|
||||
}
|
||||
|
@ -559,136 +612,139 @@ const New_C_Detail_Formation_2025 = (props) => {
|
|||
|
||||
//console.log("nb_partner_certificat = ", JSON.parse(res.data.message).nb_partner_certificat);
|
||||
|
||||
|
||||
if (window.screen.width < 601) {
|
||||
|
||||
var decalage_pr_certificat = parseInt(String(JSON.parse(res.data.message).nb_partner_certificat)) * 150;
|
||||
//console.log("decalage_pr_certificat = ", decalage_pr_certificat);
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
|
||||
//console.log("### local_val = ", local_val)
|
||||
if (local_val >= 5) {
|
||||
//console.log(" ON PASSE au MAX")
|
||||
var local_tmp_val = 2300 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4000 + decalage_pr_certificat;
|
||||
//console.log("### local_tmp_val = ", local_tmp_val, " local_main_h_px = ",local_main_h_px);
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
|
||||
var local_tmp_val = 2800 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4500 + decalage_pr_certificat;
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
}
|
||||
|
||||
} else {
|
||||
//console.log(" ON PASSE au MIN");
|
||||
var local_tmp_val = 2100 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4800 + decalage_pr_certificat;
|
||||
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
var local_tmp_val = 2600 + decalage_pr_certificat;
|
||||
var local_main_h_px = 5300 + decalage_pr_certificat;
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
}
|
||||
}
|
||||
// document.getElementById('mob_block_cross_sell_cat').style.top = local_tmp;
|
||||
//document.getElementById('mobile').style.height = main_h_px;
|
||||
|
||||
}
|
||||
|
||||
if (window.screen.width >= 601 && window.screen.width <= 991) {
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
//console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2700px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2200px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
|
||||
}
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
|
||||
|
||||
}
|
||||
|
||||
if (window.screen.width >= 992 && window.screen.width <= 1199) {
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2800px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2200px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
|
||||
}
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
}
|
||||
|
||||
if (window.screen.width >= 1200) {
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2800px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
//console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2300px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
}
|
||||
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
}
|
||||
|
||||
/*
|
||||
if (window.screen.width < 601) {
|
||||
|
||||
var decalage_pr_certificat = parseInt(String(JSON.parse(res.data.message).nb_partner_certificat)) * 150;
|
||||
//console.log("decalage_pr_certificat = ", decalage_pr_certificat);
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
|
||||
//console.log("### local_val = ", local_val)
|
||||
if (local_val >= 5) {
|
||||
//console.log(" ON PASSE au MAX")
|
||||
var local_tmp_val = 2300 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4000 + decalage_pr_certificat;
|
||||
//console.log("### local_tmp_val = ", local_tmp_val, " local_main_h_px = ",local_main_h_px);
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
|
||||
var local_tmp_val = 2800 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4500 + decalage_pr_certificat;
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
}
|
||||
|
||||
} else {
|
||||
//console.log(" ON PASSE au MIN");
|
||||
var local_tmp_val = 2100 + decalage_pr_certificat;
|
||||
var local_main_h_px = 4800 + decalage_pr_certificat;
|
||||
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
var local_tmp_val = 2600 + decalage_pr_certificat;
|
||||
var local_main_h_px = 5300 + decalage_pr_certificat;
|
||||
local_tmp = local_tmp_val + "px";
|
||||
main_h_px = local_main_h_px + "px";
|
||||
}
|
||||
}
|
||||
// document.getElementById('mob_block_cross_sell_cat').style.top = local_tmp;
|
||||
//document.getElementById('mobile').style.height = main_h_px;
|
||||
|
||||
}
|
||||
|
||||
if (window.screen.width >= 601 && window.screen.width <= 991) {
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
//console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2700px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2200px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
|
||||
}
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
|
||||
|
||||
}
|
||||
|
||||
if (window.screen.width >= 992 && window.screen.width <= 1199) {
|
||||
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2800px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2200px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
|
||||
}
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
}
|
||||
|
||||
if (window.screen.width >= 1200) {
|
||||
var local_val = parseInt(String(JSON.parse(res.data.message).nb_pave_a_afficher));
|
||||
if (local_val >= 5) {
|
||||
console.log(" ON PASSE au MAX")
|
||||
local_tmp = "2000px";
|
||||
main_h_px = "2800px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2500px";
|
||||
main_h_px = "3200px";
|
||||
}
|
||||
|
||||
} else {
|
||||
//console.log(" ON PASSE au MIN");
|
||||
local_tmp = "1700px";
|
||||
main_h_px = "2500px";
|
||||
|
||||
if (String(action).toLowerCase() === "information" || String(action).toLowerCase() === "inscription") {
|
||||
local_tmp = "2300px";
|
||||
main_h_px = "3000px";
|
||||
}
|
||||
}
|
||||
|
||||
if (document.getElementById('block_crossell_meme_orga')) {
|
||||
document.getElementById('block_crossell_meme_orga').style.top = local_tmp;
|
||||
}
|
||||
document.getElementById('desktop').style.height = main_h_px;
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -1211,6 +1267,32 @@ const New_C_Detail_Formation_2025 = (props) => {
|
|||
}
|
||||
|
||||
|
||||
const [Download_one_attached_document_no_token_api, setDownload_one_attached_document_no_token_api] = useState();
|
||||
const [Download_one_attached_document_no_token_result, setDownload_one_attached_document_no_token_result] = useState();
|
||||
const [Download_one_attached_document_no_token_message, setDownload_one_attached_document_no_token_message] = useState();
|
||||
|
||||
const Download_one_attached_document_no_token = (event) => {
|
||||
|
||||
var nom_fiche_detaillee = "Fiche_catalogue.pdf";
|
||||
var file_name = event.target.id;
|
||||
|
||||
|
||||
var url = process.env.REACT_APP_API_URL + "myclass/api/Get_Stored_Downloaded_File_From_Id_WITHOUT_TOKEN/" + file_name;
|
||||
|
||||
//console.log(" ### url = ", url);
|
||||
|
||||
|
||||
axios.get(url, { responseType: 'blob', },)
|
||||
.then((res) => {
|
||||
fileDownload(res.data, nom_fiche_detaillee);
|
||||
setDownload_one_attached_document_no_token_api("true");
|
||||
}).catch((error) => {
|
||||
console.error('Error:', error);
|
||||
setDownload_one_attached_document_no_token_api("false");
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// ----
|
||||
|
@ -1890,12 +1972,12 @@ const New_C_Detail_Formation_2025 = (props) => {
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div style={{ width: '90%', marginLeft: 'auto', marginRight: 'auto', background: "#FFF", borderRadius: '10px' }}>
|
||||
<div style={{ width: '90%', marginLeft: 'auto', marginRight: 'auto', background: "#FFF", borderRadius: '10px' }}>
|
||||
<div style={{ width: '90%', marginLeft: 'auto', marginRight: 'auto', background: "#FFF", marginTop: '1rem' }}>
|
||||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_long_txt">
|
||||
|
||||
<div className="mob_info_page_title_desc_title">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
|
||||
{DetailTraining["pourqui"] && <div className="mob_info_page_title_desc_desc pourqui_block">
|
||||
|
@ -1915,7 +1997,7 @@ const New_C_Detail_Formation_2025 = (props) => {
|
|||
{DetailTraining["prerequis"] && <div className="mob_info_page_title_desc_long_txt">
|
||||
|
||||
<div className="mob_info_page_title_desc_title">
|
||||
Pré-requis
|
||||
Pré-requis
|
||||
</div>
|
||||
|
||||
{DetailTraining["prerequis"] && <div className="mob_info_page_title_desc_desc pourqui_block">
|
||||
|
@ -2162,6 +2244,16 @@ const New_C_Detail_Formation_2025 = (props) => {
|
|||
|
||||
|
||||
<br />
|
||||
{Get_Class_Catalogue_File_result && Get_Class_Catalogue_File_result.length > 0 && <div className="row_download_fiche">
|
||||
|
||||
<nav className="bton_download_fiche" name={(JSON.parse(Get_Class_Catalogue_File_result[0])._id)}
|
||||
id={(JSON.parse(Get_Class_Catalogue_File_result[0])._id)} onClick={Download_one_attached_document_no_token}>
|
||||
Télécharger fiche détaillée
|
||||
</nav>
|
||||
|
||||
</div>}
|
||||
|
||||
|
||||
<div className="block_info_page_pave_title_desc">
|
||||
<div className="block_info_page_pave_title_desc_title"> Description
|
||||
|
||||
|
@ -2330,7 +2422,7 @@ const New_C_Detail_Formation_2025 = (props) => {
|
|||
|
||||
{DetailTraining["pourqui"] && String(DetailTraining["pourqui"]).length > 2 && <div className="block_info_page_pave_title_desc_long_text">
|
||||
<div className="block_info_page_pave_title_desc_title ">
|
||||
Pour Qui ?
|
||||
Pour Qui
|
||||
</div>
|
||||
{DetailTraining["pourqui"] && <div className="block_info_page_pave_title_desc_desc pourqui_block">
|
||||
{parse(String(DetailTraining["pourqui"]))}
|
||||
|
@ -2344,7 +2436,7 @@ const New_C_Detail_Formation_2025 = (props) => {
|
|||
|
||||
{DetailTraining["prerequis"] && String(DetailTraining["prerequis"]).length > 2 && <div className="block_info_page_pave_title_desc_long_text">
|
||||
<div className="block_info_page_pave_title_desc_title ">
|
||||
Pré-requis
|
||||
Pré-requis
|
||||
</div>
|
||||
{DetailTraining["prerequis"] && <div className="block_info_page_pave_title_desc_desc objectif_block">
|
||||
{parse(String(DetailTraining["prerequis"]))}
|
||||
|
|
|
@ -63,6 +63,42 @@
|
|||
}
|
||||
|
||||
|
||||
|
||||
.row_download_fiche {
|
||||
width: 100%;
|
||||
margin-bottom: 40px;
|
||||
font-family: "DM Sans";
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
|
||||
.bton_download_fiche {
|
||||
width: auto;
|
||||
min-width: 10rem;
|
||||
padding: 10px;
|
||||
padding-top: 10px;
|
||||
padding-bottom: 10px;
|
||||
|
||||
height: auto;
|
||||
font-family: 'DM Sans';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
font-size: 12px;
|
||||
line-height: 120%;
|
||||
text-transform: uppercase;
|
||||
font-feature-settings: 'liga' off;
|
||||
color: #0AA690;
|
||||
float: right;
|
||||
text-align: center;
|
||||
border-radius: 5px;
|
||||
margin-right: 10px;
|
||||
padding-top: 5px;
|
||||
padding-bottom: 5px;
|
||||
border: 1px solid #E2E9FB;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
|
||||
@media only screen and (max-width: 600px) {
|
||||
|
||||
.nob_new_content_1 {}
|
||||
|
@ -1513,7 +1549,7 @@
|
|||
min-height: 8rem;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
font-family: "DM sans";
|
||||
font-family: "DM sans" !important;
|
||||
font-size: 16px;
|
||||
line-height: 180%;
|
||||
min-height: 15rem;
|
||||
|
@ -1523,7 +1559,7 @@
|
|||
min-height: 8rem;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
font-family: "DM sans";
|
||||
font-family: "DM sans" !important;
|
||||
font-size: 16px;
|
||||
line-height: 180%;
|
||||
min-height: 15rem;
|
||||
|
@ -1533,7 +1569,7 @@
|
|||
min-height: 8rem;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
font-family: "DM sans";
|
||||
font-family: "DM sans" !important;
|
||||
font-size: 16px;
|
||||
line-height: 180%;
|
||||
min-height: 15rem;
|
||||
|
@ -1543,7 +1579,7 @@
|
|||
min-height: 8rem;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
font-family: "DM sans";
|
||||
font-family: "DM sans" !important;
|
||||
font-size: 16px;
|
||||
line-height: 120%;
|
||||
min-height: 15rem;
|
||||
|
@ -1554,7 +1590,7 @@
|
|||
min-height: 8rem;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
font-family: "DM sans";
|
||||
font-family: "DM sans" !important;
|
||||
font-size: 16px;
|
||||
line-height: 180%;
|
||||
min-height: 15rem;
|
||||
|
@ -6886,7 +6922,7 @@
|
|||
|
||||
height: 24px;
|
||||
|
||||
font-family: 'Albert Sans';
|
||||
font-family: 'Inter' !important;
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
font-size: 20px;
|
||||
|
@ -6911,7 +6947,7 @@
|
|||
.block_info_page_pave_title_desc_desc {
|
||||
width: 100%;
|
||||
|
||||
font-family: Roboto, Verdana, Georgia, Arial, 'Times New Roman';
|
||||
font-family: 'Inter' !important;
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
font-size: 16px;
|
||||
|
@ -6922,7 +6958,7 @@
|
|||
|
||||
/* Bold Grey */
|
||||
|
||||
color: #4B4B4B;
|
||||
color: #4B4B4B !important;
|
||||
|
||||
|
||||
/* Inside auto layout */
|
||||
|
@ -6934,7 +6970,7 @@
|
|||
}
|
||||
|
||||
.programme_block {
|
||||
font-family: 'Inter';
|
||||
font-family: 'Inter' !important;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
|
@ -6943,7 +6979,7 @@
|
|||
font-feature-settings: 'liga' off;
|
||||
|
||||
/* Foundation /Blue-Grey/Normal */
|
||||
color: #4B5162;
|
||||
color: #4B5162 !important;
|
||||
|
||||
|
||||
/* Inside auto layout */
|
||||
|
@ -6955,7 +6991,7 @@
|
|||
}
|
||||
|
||||
.description_block {
|
||||
font-family: 'Inter';
|
||||
font-family: 'Inter' !important;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
|
@ -6964,7 +7000,7 @@
|
|||
font-feature-settings: 'liga' off;
|
||||
|
||||
/* Foundation /Blue-Grey/Normal */
|
||||
color: #4B5162;
|
||||
color: #4B5162 !important;
|
||||
|
||||
|
||||
/* Inside auto layout */
|
||||
|
@ -6977,7 +7013,7 @@
|
|||
}
|
||||
|
||||
.objectif_block {
|
||||
font-family: 'Inter';
|
||||
font-family: 'Inter' !important;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
|
@ -6986,7 +7022,7 @@
|
|||
font-feature-settings: 'liga' off;
|
||||
|
||||
/* Foundation /Blue-Grey/Normal */
|
||||
color: #4B5162;
|
||||
color: #4B5162 !important;
|
||||
|
||||
|
||||
/* Inside auto layout */
|
||||
|
@ -7002,7 +7038,7 @@
|
|||
min-height: 5rem;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
font-family: 'Inter';
|
||||
font-family: 'Inter' !important;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
|
@ -7011,7 +7047,7 @@
|
|||
font-feature-settings: 'liga' off;
|
||||
|
||||
/* Foundation /Blue-Grey/Normal */
|
||||
color: #4B5162;
|
||||
color: #4B5162 !important;
|
||||
|
||||
|
||||
/* Inside auto layout */
|
||||
|
@ -7023,7 +7059,7 @@
|
|||
|
||||
|
||||
.pourqui_block {
|
||||
font-family: 'Inter';
|
||||
font-family: 'Inter' !important;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
|
@ -7032,7 +7068,7 @@
|
|||
font-feature-settings: 'liga' off;
|
||||
|
||||
/* Foundation /Blue-Grey/Normal */
|
||||
color: #4B5162;
|
||||
color: #4B5162 !important;
|
||||
|
||||
|
||||
/* Inside auto layout */
|
||||
|
|
Loading…
Reference in New Issue