12/03/24 - 20h30

recette2
cherif 2024-03-12 20:33:24 +01:00
parent 93df6220bb
commit d9f83fa846
4 changed files with 355 additions and 88 deletions

View File

@ -1726,7 +1726,139 @@ const DisplayPartnerSession = (props) => {
}, []) }, [])
const [Accept_List_Inscritpion_api, setAccept_List_Inscritpion_api] = useState();
const [Accept_List_Inscritpion_message, setAccept_List_Inscritpion_message] = useState();
const [Accept_List_Inscritpion_result, setAccept_List_Inscritpion_result] = useState();
function Accept_List_Inscritpion(list_inscription_id) {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("list_inscription_id", list_inscription_id);
setLoading(true);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Accept_List_AttendeeInscription/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === String("true")) {
setLoading(false);
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
setAccept_List_Inscritpion_api("true");
setAccept_List_Inscritpion_result(res.data.message);
GetListePreinscrit(selected_session_id, selected_internal_url);
GetListeInscrit(selected_session_id, selected_internal_url);
setselectionModel_preinsc([]);
setactionmass_preinsc_val();
alert(res.data.message);
} else if (String(res.data.status) === String("Err_Connexion")) {
setLoading(false);
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setLoading(false);
setAccept_List_Inscritpion_api("false");
setAccept_List_Inscritpion_message(res.data.message);
alert(res.data.message);
}
}).catch((error) => {
setLoading(false);
console.warn('Accept_List_Inscritpion : Not good man :( mysearchtext = ' + error);
setAccept_List_Inscritpion_api("false");
alert(" Impossible de valider la liste d'inscriptions");
})
}
const [Refuse_List_Inscritpion_api, setRefuse_List_Inscritpion_api] = useState();
const [Refuse_List_Inscritpion_message, setRefuse_List_Inscritpion_message] = useState();
const [Refuse_List_Inscritpion_result, setRefuse_List_Inscritpion_result] = useState();
function Refuse_List_Inscritpion(local_liste_class) {
var form = new FormData();
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
// console.log(" #### local_liste_class = ", local_liste_class)
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("list_inscription_id", local_liste_class);
form.append("motif", "");
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Refuse_List_AttendeeInscription_with_motif/";
axios.post(myurl, form).then(res => {
//console.log(" In Refuse_List_Inscritpion res.data.status = " + res.data.status);
//console.log(" In Refuse_List_Inscritpion res.data.message r_class = " + res.data.message);
if (String(res.data.status) === String("true")) {
setRefuse_List_Inscritpion_api("true");
setRefuse_List_Inscritpion_result(res.data.message);
GetListePreinscrit(selected_session_id, selected_internal_url);
GetListeInscrit(selected_session_id, selected_internal_url);
setselectionModel_preinsc([]);
setactionmass_preinsc_val();
alert(res.data.message);
}
else {
setRefuse_List_Inscritpion_api("false");
setRefuse_List_Inscritpion_message(res.data.message);
alert(res.data.message);
}
}).catch((error) => {
console.warn('Refuse_List_Inscritpion : Not good man :( mysearchtext = ' + error);
setRefuse_List_Inscritpion_api("false");
alert(" Impossible de refuser la liste d'inscription");
})
}
async function actionmass_preinsc_Traitemet() { async function actionmass_preinsc_Traitemet() {
var liste_preinscr_id = GetSelectedRows_PreInsc_Ids();
// console.log(" liste_preinscr_id = ", liste_preinscr_id);
var tab_mongo_preins_ids = [];
for (var i = 0; i < liste_preinscr_id.length; i++) {
var line = rowss_preinsc[i]
var line_json = JSON.parse(line)
// console.log(" line_json['_id'] = ", line_json['_id']);
tab_mongo_preins_ids.push(line_json['_id'])
}
if (String(actionmass_preinsc_val) === String("valide_inscr")) {
Accept_List_Inscritpion(tab_mongo_preins_ids);
}
if (String(actionmass_preinsc_val) === String("refuse_inscr")) {
Refuse_List_Inscritpion(tab_mongo_preins_ids);
}
} }
const [selectionModel, setSelectionModel] = React.useState([]); const [selectionModel, setSelectionModel] = React.useState([]);
@ -1736,7 +1868,7 @@ const DisplayPartnerSession = (props) => {
const actionmass_preinsc = (event) => { const actionmass_preinsc = (event) => {
const value = event.target.value; const value = event.target.value;
if (String(value) === "valider" || String(value) === "refuser") { if (String(value) === "valide_inscr" || String(value) === "refuse_inscr") {
setactionmass_preinsc_val(value); setactionmass_preinsc_val(value);
} }
else { else {
@ -1746,6 +1878,7 @@ const DisplayPartnerSession = (props) => {
function submenu_preinscrit() { function submenu_preinscrit() {
setsubmenu("preinscrit"); setsubmenu("preinscrit");
GetListePreinscrit(selected_session_id, selected_internal_url);
if (document.getElementById("preinscrit")) { if (document.getElementById("preinscrit")) {
document.getElementById("preinscrit").style.backgroundColor = "#104277"; document.getElementById("preinscrit").style.backgroundColor = "#104277";
@ -3155,9 +3288,24 @@ const DisplayPartnerSession = (props) => {
tab_tmp.push(myid); tab_tmp.push(myid);
} }
return tab_tmp; return tab_tmp;
}
function GetSelectedRows_PreInsc_Ids() {
var tab_tmp = []
for (var i = 0; i < selectionModel_preinsc.length; i++) {
//console.log(" ### selectionModel_insc[i] = ", selectionModel_insc[i]);
var myid = parseInt(String(selectionModel_preinsc[i]));
//var line = JSON.parse(rowss[myid]);
tab_tmp.push(myid);
}
return tab_tmp;
} }
const [SendInscriptionConfirmation_api, setSendInscriptionConfirmation_api] = useState(); const [SendInscriptionConfirmation_api, setSendInscriptionConfirmation_api] = useState();
const [SendInscriptionConfirmation_message, setSendInscriptionConfirmation_message] = useState(); const [SendInscriptionConfirmation_message, setSendInscriptionConfirmation_message] = useState();
const [SendInscriptionConfirmation_result, setSendInscriptionConfirmation_result] = useState(); const [SendInscriptionConfirmation_result, setSendInscriptionConfirmation_result] = useState();
@ -9594,6 +9742,14 @@ const DisplayPartnerSession = (props) => {
{ "id": "annule inscription", "label": "Annuler inscription", "value": "annule inscription" }, { "id": "annule inscription", "label": "Annuler inscription", "value": "annule inscription" },
{ "id": "facturer", "label": "Facturer", "value": "facturer" }, { "id": "facturer", "label": "Facturer", "value": "facturer" },
] ]
const New_Option_PreInscription = [
{ "id": "valide_inscr", "label": "Valider Inscription", "value": "valide_inscr" },
{ "id": "refuse_inscr", "label": "Refuser Inscription", "value": "refuse_inscr" },
]
const [Dialog_FACTURATION_FORMATION_open, setDialog_FACTURATION_FORMATION_open] = React.useState(false); const [Dialog_FACTURATION_FORMATION_open, setDialog_FACTURATION_FORMATION_open] = React.useState(false);
const Dialog_FACTURATION_FORMATION_handleClose = () => { const Dialog_FACTURATION_FORMATION_handleClose = () => {
@ -11215,7 +11371,7 @@ const DisplayPartnerSession = (props) => {
</div> </div>
</div>*/} </div>*/}
<br/> <br />
<div className="session_caract"> <b> Formation </b><br /> <div className="session_caract"> <b> Formation </b><br />
<TextField <TextField
@ -14105,73 +14261,118 @@ const DisplayPartnerSession = (props) => {
</div>} </div>}
</div> </div>
{String(addOneParticipant) !== "1" && <div className="session_data" style={{ height: 500, width: '100%' }}> {String(addOneParticipant) !== "1" &&
<DataGrid <div className="session_data" >
checkboxSelection <div style={{ height: 550, width: '100%', paddingRight: '5px' }}>
onSelectionModelChange={(newSelectionModel) => { <Box
setselectionModel_preinsc(newSelectionModel);
//console.log("ch selected--" + newSelectionModel);
}}
selectionModel={selectionModel_preinsc}
localeText={frFR.components.MuiDataGrid.defaultProps.localeText}
rows={rowss_preinsc.map((item, index) => (
{
id: index,
_id: JSON.parse(item)._id,
nom: JSON.parse(item).nom,
prenom: JSON.parse(item).prenom,
employeur: JSON.parse(item).employeur,
email: JSON.parse(item).email,
amount: JSON.parse(item).price,
opco: JSON.parse(item).opco,
modefinancement: JSON.parse(item).modefinancement,
civilite: JSON.parse(item).civilite,
client_rattachement_nom: JSON.parse(item).client_rattachement_nom,
client_rattachement_id: JSON.parse(item).client_rattachement_id,
}
))}
columns={columns_preinscrit}
pageSize={10}
className="datagridclass"
rowsPerPageOptions={[10]}
disableSelectionOnClick
components={{
Toolbar: GridToolbar,
}}
getEstimatedRowHeight={() => 200}
getRowHeight={() => "auto"}
sx={{ sx={{
"& .MuiDataGrid-cellContent": { height: 500,
minHeight: 50, width: '100%',
paddingRight: '2px',
},
[`& .${gridClasses.cell}`]: { [`& .${gridClasses.cell}`]: {
py: 1, py: 1,
}, },
'& .line--statut--invoiced': {
backgroundColor: '#EAFAF1',
color: '#239B56',
fontWeight: '700'
},
"& .MuiDataGrid-columnHeaders": {
backgroundColor: "#c8cfd5",
color: "black",
fontSize: 14
},
}} }}
/>
>
<DataGrid
checkboxSelection
onSelectionModelChange={(newSelectionModel) => {
setselectionModel_preinsc(newSelectionModel);
//console.log("ch selected--" + newSelectionModel);
}}
selectionModel={selectionModel_preinsc}
localeText={frFR.components.MuiDataGrid.defaultProps.localeText}
rows={rowss_preinsc.map((item, index) => (
{
id: index,
_id: JSON.parse(item)._id,
nom: JSON.parse(item).nom,
prenom: JSON.parse(item).prenom,
employeur: JSON.parse(item).employeur,
email: JSON.parse(item).email,
amount: JSON.parse(item).price,
opco: JSON.parse(item).opco,
modefinancement: JSON.parse(item).modefinancement,
civilite: JSON.parse(item).civilite,
client_rattachement_nom: JSON.parse(item).client_rattachement_nom,
client_rattachement_id: JSON.parse(item).client_rattachement_id,
}
))}
columns={columns_preinscrit}
pageSize={10}
className="datagridclass"
rowsPerPageOptions={[10]}
disableSelectionOnClick
components={{
Toolbar: GridToolbar,
}}
getEstimatedRowHeight={() => 200}
getRowHeight={() => "auto"}
sx={{
"& .MuiDataGrid-cellContent": {
minHeight: 50,
},
[`& .${gridClasses.cell}`]: {
py: 1,
},
}}
/>
</Box>
{selectionModel_preinsc && selectionModel_preinsc.length >= 1 && {selectionModel_preinsc && selectionModel_preinsc.length >= 1 &&
<div className="div_row" style={{ "border": "none" }}> <div className="div_row" style={{ "border": "none", "marginLeft": "10px" }}>
<div className="block_en_mass"> <div className="block_en_mass">
<nav className='traitement_mass'>Traitement en masse</nav> <nav className='traitement_mass'>Traitement en masse</nav>
&nbsp;<select &nbsp;
id={"actionmass_preinsc"} name={"actionmass_preinsc"}
onChange={actionmass_preinsc}
className="action_mass">
<option selected value="n/a">Choisir une action</option>
<option value="valider">Valider</option>
<option value="refuser">Refuser</option>
</select> &nbsp; <Autocomplete
{actionmass_preinsc_val && disablePortal
id="combo-box-demo"
className="block_en_mass_select"
fullWidth
options={New_Option_PreInscription}
onChange={(event, value) => {
if (String(value.value) === "valide_inscr" || String(value.value) === "refuse_inscr") {
setactionmass_preinsc_val(value.value);
}
else {
setactionmass_preinsc_val();
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
}
/>
&nbsp;
{actionmass_preinsc_val && <nav className='block_en_mass_bton_action'>
<Popup <Popup
trigger={<Button className="bton_traiter_en_mass" > trigger={<Button className="bton_enreg" style={{ "width": "90%" }}>
<FcAcceptDatabase /> Traiter <FcAcceptDatabase /> Traiter
</Button>} </Button>}
@ -14188,8 +14389,17 @@ const DisplayPartnerSession = (props) => {
<div className="gest_header"> MySy Information </div> <div className="gest_header"> MySy Information </div>
<div className="gest_content"> <div className="gest_content">
{' '} {' '}
{String(actionmass_preinsc_val) === "valide_inscr" &&
<font> Confirmer la <b> validation des inscriptions </b> en masse pour {selectionModel_preinsc.length} lignes.
</font>}
{String(actionmass_preinsc_val) === "refuse_inscr" &&
<font> Confirmer la <b> l'annulation des inscriptions </b> en masse pour {selectionModel_preinsc.length} lignes.
</font>}
Confirmer l'action <b> {actionmass_preinsc_val} </b> en masse.
</div> </div>
<div className="gest_actions"> <div className="gest_actions">
<div style={{ "width": "45%", "float": "left" }}> <div style={{ "width": "45%", "float": "left" }}>
@ -14214,6 +14424,7 @@ const DisplayPartnerSession = (props) => {
</div> </div>
)} )}
</Popup> </Popup>
</nav>
} }
<br /> <br />
@ -14256,6 +14467,8 @@ const DisplayPartnerSession = (props) => {
</div>} </div>}
</div>
</div>} </div>}
@ -14949,17 +15162,7 @@ const DisplayPartnerSession = (props) => {
<div className="block_en_mass"> <div className="block_en_mass">
<nav className='traitement_mass'>Traitement en masse / Inscrit</nav> <nav className='traitement_mass'>Traitement en masse / Inscrit</nav>
&nbsp; &nbsp;
{/*<select
id={"actionmassinscr"} name={"actionmassinscr"}
onChange={actionmass_inscrit}
className="action_mass">
<option selected value="n/a">Choisir une action</option>
<option value="confirmation">Renvoyer une confirmation</option>
<option value="impression">Imprimer fiches</option>
<option value="annule inscription">Annuler inscription</option>
<option value="facturer">Facturer</option>
</select> &nbsp;*/}
<Autocomplete <Autocomplete
disablePortal disablePortal
id="combo-box-demo" id="combo-box-demo"

View File

@ -611,6 +611,55 @@ const DisplayPartnerStagiaires = (props) => {
}) })
} }
const [Accept_List_Inscritpion_api, setAccept_List_Inscritpion_api] = useState();
const [Accept_List_Inscritpion_message, setAccept_List_Inscritpion_message] = useState();
const [Accept_List_Inscritpion_result, setAccept_List_Inscritpion_result] = useState();
function Accept_List_Inscritpion(list_inscription_id) {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
form.append("list_inscription_id", list_inscription_id);
setLoading(true);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Accept_List_AttendeeInscription/";
axios.post(myurl, form).then(res => {
if (String(res.data.status) === String("true")) {
setLoading(false);
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
setAccept_List_Inscritpion_api("true");
setAccept_List_Inscritpion_result(res.data.message);
Getall_TrainingParticipant();
alert(res.data.message);
} else if (String(res.data.status) === String("Err_Connexion")) {
setLoading(false);
alert('Erreur: ' + res.data.message);
history.push("/Connexion");
}
else {
setLoading(false);
setAccept_List_Inscritpion_api("false");
setAccept_List_Inscritpion_message(res.data.message);
alert(res.data.message);
}
}).catch((error) => {
setLoading(false);
console.warn('Accept_List_Inscritpion : Not good man :( mysearchtext = ' + error);
setAccept_List_Inscritpion_api("false");
alert(" Impossible de valider la liste d'inscriptions");
})
}
function handleClick_delete(event, cellValues) { function handleClick_delete(event, cellValues) {
// Recuperation du motif du refus : // Recuperation du motif du refus :
@ -1546,7 +1595,7 @@ const DisplayPartnerStagiaires = (props) => {
function disableAttendeeDetailFields() { function disableAttendeeDetailFields() {
setparticipant_data_edit_mode("0"); setparticipant_data_edit_mode("0");
if (document.getElementsByName("detail_session_class")[0]) { if (document.getElementsByName("detail_session_class")[0]) {
document.getElementsByName("detail_session_class")[0].disabled = true; document.getElementsByName("detail_session_class")[0].disabled = true;
document.getElementsByName("detail_session_class")[0].style.backgroundColor = "#ECEFF1"; document.getElementsByName("detail_session_class")[0].style.backgroundColor = "#ECEFF1";
@ -2264,7 +2313,7 @@ const DisplayPartnerStagiaires = (props) => {
if (new_data2.length > 0) { if (new_data2.length > 0) {
setNew_Getall_TrainingSession_result(new_data2); setNew_Getall_TrainingSession_result(new_data2);
// console.log(" ### new_data2 = ", new_data2); // console.log(" ### new_data2 = ", new_data2);
} }
@ -2677,7 +2726,7 @@ const DisplayPartnerStagiaires = (props) => {
if (mylocalattendee.tuteur1_civilite) { if (mylocalattendee.tuteur1_civilite) {
setp_detail_tuteur1_civilite(mylocalattendee.tuteur1_civilite); setp_detail_tuteur1_civilite(mylocalattendee.tuteur1_civilite);
} else { } else {
setp_detail_tuteur1_civilite(""); setp_detail_tuteur1_civilite("");
} }
@ -2816,7 +2865,7 @@ const DisplayPartnerStagiaires = (props) => {
}); });
} }
disableAttendeeDetailFields(); disableAttendeeDetailFields();
@ -4448,6 +4497,12 @@ const DisplayPartnerStagiaires = (props) => {
//console.log(" liste_formation = ", liste_formation); //console.log(" liste_formation = ", liste_formation);
//console.log(" actionmass_ftion_val = ", actionmass_ftion_val); //console.log(" actionmass_ftion_val = ", actionmass_ftion_val);
if (String(actionmass_ftion_val) === String("valide_inscr")) {
Accept_List_Inscritpion(liste_session);
}
if (String(actionmass_ftion_val) === String("supprimer")) { if (String(actionmass_ftion_val) === String("supprimer")) {
Delete_LIST_Stagiaires(liste_session); Delete_LIST_Stagiaires(liste_session);
@ -5373,9 +5428,12 @@ const DisplayPartnerStagiaires = (props) => {
}; };
const New_Option = [ const New_Option = [
{ "id": "0", "label": "Exporter", "value": "exporter" }, { "id": "0", "label": "Valider Insc.", "value": "valide_inscr" },
{ "id": "1", "label": "Supprimer", "value": "supprimer" }, { "id": "1", "label": "Supprimer", "value": "supprimer" },
{ "id": "2", "label": "Exporter", "value": "exporter" },
] ]
const New_civilite = [ const New_civilite = [
{ "id": "nme", "label": "Mme", "value": "mme" }, { "id": "nme", "label": "Mme", "value": "mme" },
{ "id": "m", "label": "M", "value": "m" }, { "id": "m", "label": "M", "value": "m" },
@ -6999,7 +7057,7 @@ const DisplayPartnerStagiaires = (props) => {
onChange={(event, value) => { onChange={(event, value) => {
if (value && value.value) { if (value && value.value) {
if (String(value.value) === "supprimer" if (String(value.value) === "supprimer"
|| String(value.value) === "convention" || String(value.value) === "exporter") { || String(value.value) === "convention" || String(value.value) === "exporter" || String(value.value) === "valide_inscr") {
setactionmass_ftion_val(value.value); setactionmass_ftion_val(value.value);
} }
else { else {
@ -7056,6 +7114,11 @@ const DisplayPartnerStagiaires = (props) => {
<div className="gest_header"> MySy Information </div> <div className="gest_header"> MySy Information </div>
<div className="gest_content"> <div className="gest_content">
{' '} {' '}
{String(actionmass_ftion_val) === "valide_inscr" &&
<font> Confirmer la <b> validation des inscriptions </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "supprimer" && {String(actionmass_ftion_val) === "supprimer" &&
<font color="red"> Confirmer la <b> suppression </b> en masse pour {selectionModel.length} lignes. <font color="red"> Confirmer la <b> suppression </b> en masse pour {selectionModel.length} lignes.
</font>} </font>}
@ -8650,7 +8713,7 @@ const DisplayPartnerStagiaires = (props) => {
<div className="tuteur_field"> <b> Civilité </b><br /> <div className="tuteur_field"> <b> Civilité </b><br />
{p_detail_tuteur1_civilite && <TextField {p_detail_tuteur1_civilite && <TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }} sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required required

View File

@ -1349,26 +1349,26 @@ const Partner = (props) => {
<div> <div>
<hr className="my_hr" /> <hr className="my_hr" />
{String(menu) !== "pricing" && <div className="sousmenu" onClick={pricing_func} ><FcCurrencyExchange className="icone_menu" />&nbsp; MES PRIX CLIENT</div>} {String(menu) !== "pricing" && <div className="sousmenu" onClick={pricing_func} ><FcCurrencyExchange className="icone_menu" />MES PRIX CLIENT</div>}
{String(menu) === "pricing" && <div className="sousmenu_selected" onClick={pricing_func} ><FcCurrencyExchange className="icone_menu" />&nbsp;MES PRIX CLIENT</div>} {String(menu) === "pricing" && <div className="sousmenu_selected" onClick={pricing_func} ><FcCurrencyExchange className="icone_menu" />MES PRIX CLIENT</div>}
</div> </div>
<div> <div>
<hr className="my_hr" /> <hr className="my_hr" />
{String(menu) !== "mes_cmd" && <div className="sousmenu" onClick={mes_cmd_func}><FcCollect className="icone_menu" />&nbsp;MES COMMANDES & DEVIS</div>} {String(menu) !== "mes_cmd" && <div className="sousmenu" onClick={mes_cmd_func}><FcCollect className="icone_menu" />MES COMMANDES & DEVIS</div>}
{String(menu) === "mes_cmd" && <div className="sousmenu_selected" onClick={mes_cmd_func}><FcCollect className="icone_menu" />&nbsp;MES COMMANDES & DEVIS</div>} {String(menu) === "mes_cmd" && <div className="sousmenu_selected" onClick={mes_cmd_func}><FcCollect className="icone_menu" />MES COMMANDES & DEVIS</div>}
</div> </div>
<div> <div>
<hr className="my_hr" /> <hr className="my_hr" />
{String(menu) !== "factures_client" && <div className="sousmenu" onClick={mes_factures_client_func}><FcKindle className="icone_menu" />&nbsp;MES FACTURES</div>} {String(menu) !== "factures_client" && <div className="sousmenu" onClick={mes_factures_client_func}><FcKindle className="icone_menu" />MES FACTURES</div>}
{String(menu) === "factures_client" && <div className="sousmenu_selected" onClick={mes_factures_client_func}> <FcCollect FcKindle="icone_menu" />&nbsp;MES FACTURES</div>} {String(menu) === "factures_client" && <div className="sousmenu_selected" onClick={mes_factures_client_func}> <FcCollect FcKindle="icone_menu" />MES FACTURES</div>}
</div> </div>
<div> <div>
<hr className="my_hr" /> <hr className="my_hr" />
{String(menu) !== "prix_achat" && <div className="sousmenu" onClick={prix_achat_func}><BiPurchaseTag className="icone_menu" />&nbsp;MES PRIX ACHAT</div>} {String(menu) !== "prix_achat" && <div className="sousmenu" onClick={prix_achat_func}><BiPurchaseTag className="icone_menu" />MES PRIX ACHAT</div>}
{String(menu) === "prix_achat" && <div className="sousmenu_selected" onClick={prix_achat_func}> <BiPurchaseTag FcKindle="icone_menu" />&nbsp;MES PRIX ACHAT</div>} {String(menu) === "prix_achat" && <div className="sousmenu_selected" onClick={prix_achat_func}> <BiPurchaseTag FcKindle="icone_menu" />MES PRIX ACHAT</div>}
</div> </div>
@ -1381,12 +1381,12 @@ const Partner = (props) => {
partner_lms_url, partner_lms_url,
'_blank' '_blank'
); );
}}>&nbsp;&nbsp;<FcVideoCall className="icone_menu" />&nbsp;MON HEBERGEMENT </div>} }}><FcVideoCall className="icone_menu" />MON HEBERGEMENT </div>}
{String(has_partner_lms_url) === "1" && <div> {String(has_partner_lms_url) === "1" && <div>
<hr className="my_hr" /> <hr className="my_hr" />
{String(menu) !== "statistique" && <div className="sousmenu" onClick={DisplaySetUpLMS}><FcServices className="icone_menu" />&nbsp;CONFIGURATION</div>} {String(menu) !== "statistique" && <div className="sousmenu" onClick={DisplaySetUpLMS}><FcServices className="icone_menu" />CONFIGURATION</div>}
{String(menu) === "statistique" && <div className="sousmenu_hebergement_lms" onClick={DisplaySetUpLMS}> <FcServices className="icone_menu" />&nbsp;CONFIGURATION</div>} {String(menu) === "statistique" && <div className="sousmenu_hebergement_lms" onClick={DisplaySetUpLMS}> <FcServices className="icone_menu" />CONFIGURATION</div>}
</div>} </div>}
<div class="separator"> Configuration </div> <div class="separator"> Configuration </div>
@ -2117,7 +2117,8 @@ const Partner = (props) => {
<Button variant="outlined" onClick={changeHandler2} className="detail_class_submenu" style={{ <Button variant="outlined" onClick={changeHandler2} className="detail_class_submenu" style={{
"background": "#c8cfd5", "background": "#c8cfd5",
"minWidth": "15rem", "color": "black", "width": "auto" "minWidth": "15rem", "color": "black", "width": "auto",
}} }}
id='menu_import_formation' name='menu_import_formation'>Choisir un fichier et importer des formations &nbsp; <SendIcon /> id='menu_import_formation' name='menu_import_formation'>Choisir un fichier et importer des formations &nbsp; <SendIcon />
</Button><br /> </Button><br />

View File

@ -2062,7 +2062,7 @@
margin-bottom: 1rem !important; margin-bottom: 1rem !important;
list-style-type: none !important; list-style-type: none !important;
border: none !important; border: none !important;
font-size: 11px; font-size: 13px;
text-align: left; text-align: left;
} }