15/10/2023 - 22h40
parent
cf02e6782c
commit
e56dc69c76
|
@ -27,6 +27,7 @@ import { Tooltip } from 'react-tooltip'
|
|||
import Popup from 'reactjs-popup';
|
||||
import 'reactjs-popup/dist/index.css';
|
||||
import GestionAdministrative from "./GestionAdministrative";
|
||||
import img_loading_spin from "./../mysy_img/mysy_spin_loading.gif";
|
||||
|
||||
const AddClassManual = (props) => {
|
||||
const history = useHistory();
|
||||
|
@ -555,6 +556,8 @@ const AddClassManual = (props) => {
|
|||
|
||||
|
||||
function RecordTraining(event) {
|
||||
|
||||
|
||||
var code = document.getElementsByName("external_code")[0].value;
|
||||
|
||||
if (code.length < 1) {
|
||||
|
@ -657,25 +660,37 @@ const AddClassManual = (props) => {
|
|||
|
||||
// Verification si il y a plus de 3 mot clés separés par des ";"
|
||||
mots_cle = mots_cle.replace(/(<([^>]+)>)/ig, '');
|
||||
mots_cle = mots_cle.replace(" ", '');
|
||||
mots_cle = mots_cle.replaceAll(" ", '');
|
||||
mots_cle = mots_cle.replaceAll(",", ";");
|
||||
|
||||
|
||||
var local_mot_cle = "";
|
||||
if (mots_cle.endsWith(";")) {
|
||||
local_mot_cle = mots_cle.substring(0, mots_cle.length - 1);
|
||||
} else {
|
||||
local_mot_cle = mots_cle;
|
||||
var words = mots_cle.split(';');
|
||||
|
||||
var traited_list_mot_cle = []
|
||||
for (let i = 0; i < words.length; i++) {
|
||||
//console.log(" ### alanlyse du mot "+String(words[i]))
|
||||
if (words[i] && String(words[i]).length > 2 && String(words[i]).length < 50)
|
||||
traited_list_mot_cle.push(String(words[i]));
|
||||
else if (words[i] && (String(words[i]).length < 2 || String(words[i]).length > 50) ) {
|
||||
alert(" Chaque mot clé doit faire entre 2 et 50 caractères. Le mot '"+String(words[i])+"' est incorrecte");
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//console.log(" ## local_mot_cle = ", local_mot_cle);
|
||||
var words = local_mot_cle.split(';');
|
||||
//console.log(" ## words = ", words);
|
||||
//console.log(" ## traited_list_mot_cle = ", traited_list_mot_cle);
|
||||
|
||||
if (words.length > 3) {
|
||||
if (traited_list_mot_cle.length > 3) {
|
||||
alert(" Il a plus de 3 mots clés. le max autorisé est 3");
|
||||
return;
|
||||
}
|
||||
|
||||
var list_mot_cle_string = traited_list_mot_cle.toString().replaceAll(",", ";");
|
||||
|
||||
//console.log(" ## list_mot_cle_string = ", list_mot_cle_string);
|
||||
|
||||
//return;
|
||||
|
||||
|
||||
var myurl = "";
|
||||
|
||||
|
@ -717,7 +732,7 @@ const AddClassManual = (props) => {
|
|||
formData.append('url', url);
|
||||
formData.append('lms_class_code', lms_class_code);
|
||||
formData.append('class_inscription_url', class_inscription_url);
|
||||
formData.append('mots_cle', mots_cle);
|
||||
formData.append('mots_cle', list_mot_cle_string);
|
||||
formData.append('plus_produit', plus_produit);
|
||||
formData.append('internal_url', displayedinternalurl);
|
||||
formData.append('zone_diffusion', "");
|
||||
|
@ -736,6 +751,7 @@ const AddClassManual = (props) => {
|
|||
|
||||
|
||||
//console.log(" domaine = "+domaine);
|
||||
setLoading(true);
|
||||
|
||||
fetch(
|
||||
myurl,
|
||||
|
@ -747,6 +763,7 @@ const AddClassManual = (props) => {
|
|||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
//console.log('Success:', result['message'], "result['status'] = ", result['status']);
|
||||
setLoading(false);
|
||||
setimportmessage(result['message']);
|
||||
setmyApiResponse(result['status']);
|
||||
setdatamodification("0");
|
||||
|
@ -769,6 +786,7 @@ const AddClassManual = (props) => {
|
|||
}
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error('Error:', error);
|
||||
setmyApiResponse("false");
|
||||
});
|
||||
|
@ -1165,8 +1183,14 @@ const AddClassManual = (props) => {
|
|||
props.closeTrainingForm();
|
||||
|
||||
}
|
||||
|
||||
const [isLoading, setLoading] = useState();
|
||||
|
||||
return (
|
||||
<div className="addclassmanual">
|
||||
{isLoading && <div className="loader-container">
|
||||
<div className="mysy_spinner"> <img src={img_loading_spin} /> </div>
|
||||
</div>}
|
||||
|
||||
{String(props.mytrainingclass.ref).trim() !== "" && <div className="div_row_ch">
|
||||
|
||||
|
|
|
@ -2861,7 +2861,7 @@ const AddParnerClient = (props) => {
|
|||
|
||||
|
||||
{String(submenu).trim() === "submenu_activite" && <div className="training_data">
|
||||
< PartnerClientActivite email={p_client_email} />
|
||||
< PartnerClientActivite email={p_client_email} conntected_employee_id={props.conntected_employee_id} />
|
||||
</div>}
|
||||
|
||||
|
||||
|
|
|
@ -860,6 +860,12 @@ const DisplayPartnerSession = (props) => {
|
|||
setdatagrid_columns_size_model2(50);
|
||||
}
|
||||
|
||||
window.scrollTo({
|
||||
top: 0,
|
||||
behavior: "smooth",
|
||||
});
|
||||
|
||||
|
||||
}, [])
|
||||
|
||||
|
||||
|
@ -1134,6 +1140,7 @@ const DisplayPartnerSession = (props) => {
|
|||
return;
|
||||
}
|
||||
|
||||
setLoading(true);
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAllClassStagiaire/";
|
||||
|
||||
fetch(myurl,
|
||||
|
@ -1143,6 +1150,7 @@ const DisplayPartnerSession = (props) => {
|
|||
})
|
||||
.then((data) => data.json())
|
||||
.then((data) => {
|
||||
setLoading(false);
|
||||
//console.log(' GetListeInscrit : Success:', data['message'], "data['status'] = ", data['status']);
|
||||
setGetListePreinscrit_insc_result(data['message']);
|
||||
setRows_insc(data['message']);
|
||||
|
@ -1162,6 +1170,7 @@ const DisplayPartnerSession = (props) => {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.error('Error:', error);
|
||||
setGetListePreinscrit_insc_api("false");
|
||||
});
|
||||
|
@ -1316,7 +1325,7 @@ const DisplayPartnerSession = (props) => {
|
|||
}
|
||||
|
||||
|
||||
|
||||
setLoading(true);
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAllClassStagiaire/";
|
||||
|
||||
fetch(myurl,
|
||||
|
@ -1326,6 +1335,7 @@ const DisplayPartnerSession = (props) => {
|
|||
})
|
||||
.then((data) => data.json())
|
||||
.then((data) => {
|
||||
setLoading(false);
|
||||
//console.log('GetListePreinscrit:', data['message'], "data['status'] = ", data['status']);
|
||||
setGetListePreinscrit_result(data['message']);
|
||||
setRows_preinsc(data['message']);
|
||||
|
@ -1348,6 +1358,7 @@ const DisplayPartnerSession = (props) => {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.error('Error:', error);
|
||||
setGetListePreinscrit_api("false");
|
||||
alert(" Impossible de recuperer la liste des préinscriptions");
|
||||
|
@ -2034,8 +2045,6 @@ const DisplayPartnerSession = (props) => {
|
|||
document.getElementsByName("formateur")[0].disabled = true;
|
||||
document.getElementsByName("formateur")[0].style.backgroundColor = "#ECEFF1";
|
||||
|
||||
document.getElementsByName("lms_class_code")[0].disabled = true;
|
||||
document.getElementsByName("lms_class_code")[0].style.backgroundColor = "#ECEFF1";
|
||||
|
||||
document.getElementsByName("nb_participant")[0].disabled = true;
|
||||
document.getElementsByName("nb_participant")[0].style.backgroundColor = "#ECEFF1";
|
||||
|
@ -2100,8 +2109,6 @@ const DisplayPartnerSession = (props) => {
|
|||
document.getElementsByName("pays")[0].disabled = false;
|
||||
document.getElementsByName("pays")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
||||
document.getElementsByName("lms_class_code")[0].disabled = false;
|
||||
document.getElementsByName("lms_class_code")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
||||
document.getElementsByName("formateur")[0].disabled = false;
|
||||
document.getElementsByName("formateur")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
@ -2276,8 +2283,8 @@ const DisplayPartnerSession = (props) => {
|
|||
setp_one_session_status_label();
|
||||
setp_one_session_etape();
|
||||
setp_one_session_etape_label();
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
const [is_lms_class_code, setis_lms_class_code] = useState();
|
||||
|
@ -2387,14 +2394,6 @@ const DisplayPartnerSession = (props) => {
|
|||
formateur = document.getElementById("formateur").value;
|
||||
|
||||
|
||||
var lms_class_code = "";
|
||||
if (document.getElementById("lms_class_code") && document.getElementById("lms_class_code").value != "") {
|
||||
lms_class_code = document.getElementById("lms_class_code").value;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
@ -2419,7 +2418,7 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
form.append("code_session", code_session);
|
||||
form.append("formateur", formateur);
|
||||
form.append("lms_class_code", lms_class_code);
|
||||
|
||||
form.append("date_debut_inscription", format(SessionstartDateInscription, 'dd/MM/yyyy kk:mm:ss'));
|
||||
form.append("date_fin_inscription", format(SessionendDateInscription, 'dd/MM/yyyy kk:mm:ss'));
|
||||
form.append("attestation_certif", selectedCertif);
|
||||
|
@ -2584,11 +2583,7 @@ const DisplayPartnerSession = (props) => {
|
|||
formateur = document.getElementById("one_formateur").value;
|
||||
|
||||
|
||||
var lms_class_code = "";
|
||||
if (document.getElementById("one_lms_class_code") && document.getElementById("one_lms_class_code").value != "") {
|
||||
lms_class_code = document.getElementById("one_lms_class_code").value;
|
||||
|
||||
}
|
||||
|
||||
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
@ -2607,7 +2602,7 @@ const DisplayPartnerSession = (props) => {
|
|||
form.append("ville", p_one_ville);
|
||||
form.append("pays", p_one_pays);
|
||||
form.append("formateur", p_one_formateur);
|
||||
form.append("lms_class_code", p_one_lms_class_code);
|
||||
|
||||
form.append("session_status", p_one_session_status);
|
||||
form.append("date_debut_inscription", format(one_SessionstartDateInscription, 'dd/MM/yyyy kk:mm:ss'));
|
||||
form.append("date_fin_inscription", format(one_SessionendDateInscription, 'dd/MM/yyyy kk:mm:ss'));
|
||||
|
@ -2639,7 +2634,7 @@ const DisplayPartnerSession = (props) => {
|
|||
setone_CreateSessionFormation_result(res.data.message);
|
||||
setsessionChanged(false);
|
||||
Getall_TrainingSession();
|
||||
|
||||
|
||||
One_clearSessionFields();
|
||||
setaddOneSession();
|
||||
|
||||
|
@ -2647,7 +2642,7 @@ const DisplayPartnerSession = (props) => {
|
|||
setdisplay_detail_insc();
|
||||
setselected_code_session();
|
||||
setsubmenu();
|
||||
|
||||
|
||||
alert(res.data.message);
|
||||
//GetCurrentSession(p_one_code_session, one_selected_internal_url);
|
||||
|
||||
|
@ -2880,7 +2875,6 @@ const DisplayPartnerSession = (props) => {
|
|||
setp_formateur(mylocaltraining.formateur);
|
||||
}
|
||||
|
||||
document.getElementsByName("lms_class_code")[0].value = "";
|
||||
if (mylocaltraining.lms_class_code) {
|
||||
|
||||
setis_lms_class_code(mylocaltraining.lms_class_code);
|
||||
|
@ -3521,8 +3515,10 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAttendeeDetail_perSession/";
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === "true") {
|
||||
console.log(" In GetAttendee res.data.status = " + res.data.status);
|
||||
console.log(" In GetAttendee res.data.message r_class = " + res.data.message);
|
||||
|
@ -3560,6 +3556,9 @@ const DisplayPartnerSession = (props) => {
|
|||
document.getElementsByName("detail_opco")[0].value = "";
|
||||
if (mylocalattendee.opco)
|
||||
setp_detail_opco(mylocalattendee.opco);
|
||||
else {
|
||||
setp_detail_opco("")
|
||||
}
|
||||
|
||||
|
||||
document.getElementsByName("detail_client_rattachement")[0].value = "";
|
||||
|
@ -3567,60 +3566,93 @@ const DisplayPartnerSession = (props) => {
|
|||
setp_detail_client_rattachement_id(mylocalattendee.client_rattachement_id);
|
||||
setp_detail_client_rattachement_nom(mylocalattendee.client_rattachement_nom);
|
||||
|
||||
} else {
|
||||
setp_detail_client_rattachement_id("");
|
||||
setp_detail_client_rattachement_nom("");
|
||||
}
|
||||
|
||||
|
||||
document.getElementsByName("detail_nom")[0].value = "";
|
||||
if (mylocalattendee.nom)
|
||||
setp_detail_nom(mylocalattendee.nom);
|
||||
else {
|
||||
setp_detail_nom("")
|
||||
}
|
||||
|
||||
document.getElementsByName("detail_prenom")[0].value = "";
|
||||
if (mylocalattendee.prenom)
|
||||
setp_detail_prenom(mylocalattendee.prenom);
|
||||
else {
|
||||
setp_detail_prenom("")
|
||||
}
|
||||
|
||||
document.getElementsByName("detail_mail")[0].value = "";
|
||||
if (mylocalattendee.email) {
|
||||
setp_detail_mail(mylocalattendee.email);
|
||||
setattendee_lms_login(mylocalattendee.email);
|
||||
}
|
||||
else {
|
||||
setp_detail_mail("");
|
||||
setattendee_lms_login("")
|
||||
}
|
||||
|
||||
|
||||
document.getElementsByName("detail_tel")[0].value = "";
|
||||
if (mylocalattendee.telephone) {
|
||||
setp_detail_tel(mylocalattendee.telephone);
|
||||
}
|
||||
else {
|
||||
setp_detail_tel("")
|
||||
}
|
||||
|
||||
document.getElementsByName("detail_adresse")[0].value = "";
|
||||
if (mylocalattendee.adresse) {
|
||||
setp_detail_adresse(mylocalattendee.adresse);
|
||||
}
|
||||
else {
|
||||
setp_detail_adresse("")
|
||||
}
|
||||
|
||||
document.getElementsByName("detail_code_postal")[0].value = "";
|
||||
if (mylocalattendee.code_postal) {
|
||||
setp_detail_code_postal(mylocalattendee.code_postal);
|
||||
}
|
||||
else {
|
||||
setp_detail_code_postal("")
|
||||
}
|
||||
|
||||
document.getElementsByName("detail_ville")[0].value = "";
|
||||
if (mylocalattendee.ville) {
|
||||
setp_detail_ville(mylocalattendee.ville);
|
||||
}
|
||||
else {
|
||||
setp_detail_ville("")
|
||||
}
|
||||
|
||||
|
||||
document.getElementsByName("detail_cout")[0].value = "";
|
||||
if (mylocalattendee.price) {
|
||||
setp_detail_cout(mylocalattendee.price);
|
||||
}
|
||||
else {
|
||||
setp_detail_cout("")
|
||||
}
|
||||
|
||||
|
||||
document.getElementsByName("detail_mode_fin")[0].value = "";
|
||||
if (mylocalattendee.modefinancement) {
|
||||
setp_detail_mode_fin(mylocalattendee.modefinancement);
|
||||
}
|
||||
else {
|
||||
setp_detail_mode_fin("")
|
||||
}
|
||||
|
||||
|
||||
document.getElementsByName("detail_employeur")[0].value = "";
|
||||
if (mylocalattendee.employeur) {
|
||||
setp_detail_employeur(mylocalattendee.employeur);
|
||||
} else {
|
||||
setp_detail_employeur("")
|
||||
}
|
||||
|
||||
document.getElementsByName("date_evaluation")[0].value = "";
|
||||
|
@ -3684,6 +3716,7 @@ const DisplayPartnerSession = (props) => {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('Not good man :( GetAttendee = ', error);
|
||||
setGetAttendee_api("false");
|
||||
alert(" Impossible de recuperer les données du participant");
|
||||
|
@ -4127,6 +4160,7 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
function AnnuleAttendeeDetailFields() {
|
||||
|
||||
clearDetailAttendeFields();
|
||||
GetAttendee_Data(selectedattendeeemail, selected_session_id);
|
||||
disableAttendeeDetailFields();
|
||||
setparticipant_data_changed();
|
||||
|
@ -4164,6 +4198,23 @@ const DisplayPartnerSession = (props) => {
|
|||
}
|
||||
|
||||
|
||||
if (document.getElementsByName("detail_mode_fin")[0]) {
|
||||
document.getElementsByName("detail_mode_fin")[0].disabled = true;
|
||||
document.getElementsByName("detail_mode_fin")[0].style.backgroundColor = "#ECEFF1";
|
||||
}
|
||||
|
||||
|
||||
if (document.getElementsByName("detail_employeur")[0]) {
|
||||
document.getElementsByName("detail_employeur")[0].disabled = true;
|
||||
document.getElementsByName("detail_employeur")[0].style.backgroundColor = "#ECEFF1";
|
||||
}
|
||||
|
||||
if (document.getElementsByName("detail_cout")[0]) {
|
||||
document.getElementsByName("detail_cout")[0].disabled = true;
|
||||
document.getElementsByName("detail_cout")[0].style.backgroundColor = "#ECEFF1";
|
||||
}
|
||||
|
||||
|
||||
if (document.getElementsByName("detail_prenom")[0]) {
|
||||
document.getElementsByName("detail_prenom")[0].disabled = true;
|
||||
document.getElementsByName("detail_prenom")[0].style.backgroundColor = "#ECEFF1";
|
||||
|
@ -4276,6 +4327,15 @@ const DisplayPartnerSession = (props) => {
|
|||
document.getElementsByName("detail_opco")[0].disabled = false;
|
||||
document.getElementsByName("detail_opco")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
||||
document.getElementsByName("detail_cout")[0].disabled = false;
|
||||
document.getElementsByName("detail_cout")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
||||
document.getElementsByName("detail_employeur")[0].disabled = false;
|
||||
document.getElementsByName("detail_employeur")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
||||
document.getElementsByName("detail_mode_fin")[0].disabled = false;
|
||||
document.getElementsByName("detail_mode_fin")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
||||
|
||||
document.getElementsByName("detail_prenom")[0].disabled = false;
|
||||
document.getElementsByName("detail_prenom")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
@ -4721,6 +4781,114 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
// -- end gestion pièces jointes
|
||||
|
||||
// Action en mass
|
||||
|
||||
const [actionmass_ftion_val, setactionmass_ftion_val] = useState();
|
||||
const actionmass_ftion = (event) => {
|
||||
const value = event.target.value;
|
||||
|
||||
|
||||
if (String(value) === "supprimer" || String(value) === "depublier" || String(value) === "desactiver") {
|
||||
setactionmass_ftion_val(value);
|
||||
}
|
||||
else {
|
||||
setactionmass_ftion_val();
|
||||
}
|
||||
}
|
||||
|
||||
async function actionmass_ftion_Traitemet() {
|
||||
|
||||
|
||||
var liste_session = GetSelectedRowsSession();
|
||||
|
||||
//console.log(" liste_formation = ", liste_formation);
|
||||
//console.log(" actionmass_ftion_val = ", actionmass_ftion_val);
|
||||
|
||||
if (String(actionmass_ftion_val) === String("supprimer")) {
|
||||
|
||||
console.log(" ### liste session : ", liste_session)
|
||||
Delete_LIST_Session_Formation(liste_session);
|
||||
|
||||
}
|
||||
|
||||
else if (String(actionmass_ftion_val) === String("publier")) {
|
||||
|
||||
}
|
||||
|
||||
else if (String(actionmass_ftion_val) === String("desactiver")) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function GetSelectedRowsSession() {
|
||||
///alert(" les lignes slected sont : " + selectionModel + " nb item = " + selectionModel.length);
|
||||
//const selectedRowsData = selectionModel.map((id) => rowss.find((row) => row.id === id));
|
||||
//console.log(rowss[0]);
|
||||
var tab_tmp = []
|
||||
for (var i = 0; i < selectionModel.length; i++) {
|
||||
var myid = parseInt(String(selectionModel[i]));
|
||||
var line = JSON.parse(rowss[myid]);
|
||||
tab_tmp.push(line._id);
|
||||
//console.log(rowss[myid]['external_code']);
|
||||
}
|
||||
setselectedtraining(tab_tmp);
|
||||
return tab_tmp;
|
||||
|
||||
}
|
||||
|
||||
const [Delete_LIST_Session_Formation_api, setDelete_LIST_Session_Formation_api] = useState();
|
||||
const [Delete_LIST_Session_Formation_message, setDelete_LIST_Session_Formation_message] = useState();
|
||||
const [Delete_LIST_Session_Formation_result, setDelete_LIST_Session_Formation_result] = useState();
|
||||
function Delete_LIST_Session_Formation(local_liste_session) {
|
||||
|
||||
setSendInscriptionCancell_api();
|
||||
var form = new FormData();
|
||||
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||
|
||||
console.log(" #### local_liste_session = ", local_liste_session)
|
||||
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
form.append("token", stored_cookie);
|
||||
form.append("list_session_id", local_liste_session);
|
||||
|
||||
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_List_SessionFormation/";
|
||||
|
||||
axios.post(myurl, form).then(res => {
|
||||
//console.log(" In Delete_LIST_Session_Formation res.data.status = " + res.data.status);
|
||||
//console.log(" In Delete_LIST_Session_Formation res.data.message r_class = " + res.data.message);
|
||||
|
||||
if (String(res.data.status) === String("true")) {
|
||||
setDelete_LIST_Session_Formation_api("true");
|
||||
setDelete_LIST_Session_Formation_result(res.data.message);
|
||||
setSelectionModel([]);
|
||||
setaddOneParticipant();
|
||||
setdisplay_detail_insc();
|
||||
setselected_code_session();
|
||||
setsubmenu();
|
||||
Getall_TrainingSession();
|
||||
|
||||
alert(res.data.message);
|
||||
}
|
||||
else {
|
||||
setDelete_LIST_Session_Formation_api("false");
|
||||
setDelete_LIST_Session_Formation_message(res.data.message);
|
||||
alert(res.data.message);
|
||||
|
||||
}
|
||||
|
||||
}).catch((error) => {
|
||||
|
||||
console.warn('Delete_LIST_Session_Formation : Not good man :( mysearchtext = ' + error);
|
||||
setDelete_LIST_Session_Formation_api("false");
|
||||
alert(" Impossible de supprimer la liste des sessions de formation");
|
||||
})
|
||||
}
|
||||
|
||||
// -- end action en mass
|
||||
|
||||
return (
|
||||
<div className="displaypartnersession">
|
||||
|
||||
|
@ -5115,6 +5283,83 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
</div>
|
||||
|
||||
<div className="div_row">
|
||||
|
||||
{selectionModel && selectionModel.length > 1 && <div className="block_en_mass">
|
||||
<nav >Traitement en masse </nav>
|
||||
|
||||
<TextField
|
||||
|
||||
select
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
inputProps={{ min: "0", max: "1", step: "1" }}
|
||||
disabled={false}
|
||||
className="block_en_mass_select"
|
||||
|
||||
value={actionmass_ftion_val}
|
||||
onChange={actionmass_ftion}
|
||||
>
|
||||
<MenuItem value="n/a" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Action </MenuItem>
|
||||
<MenuItem value="supprimer" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Supprimer </MenuItem>
|
||||
|
||||
</TextField>
|
||||
|
||||
|
||||
{actionmass_ftion_val && <nav className='block_en_mass_bton_action'>
|
||||
<Popup
|
||||
trigger={<Button className="bton_enreg" style={{ "width": "90%" }}>
|
||||
|
||||
<FcAcceptDatabase /> Traiter
|
||||
|
||||
</Button>}
|
||||
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">
|
||||
{' '}
|
||||
|
||||
<font color="red"> Confirmer l'action <b> {actionmass_ftion_val} </b> en masse pour {selectionModel.length} lignes.
|
||||
</font>
|
||||
</div>
|
||||
<div className="gest_actions">
|
||||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
actionmass_ftion_Traitemet();
|
||||
close();
|
||||
}}> Valider </button>
|
||||
|
||||
</div>
|
||||
<div style={{ "width": "45%", "float": "right" }}>
|
||||
<button
|
||||
className="gest_bton_popup"
|
||||
onClick={() => {
|
||||
//console.log('modal closed ');
|
||||
close();
|
||||
}}
|
||||
>
|
||||
Annuler
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</Popup>
|
||||
</nav>
|
||||
}
|
||||
|
||||
</div>}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
@ -5648,23 +5893,7 @@ const DisplayPartnerSession = (props) => {
|
|||
/>
|
||||
</div>
|
||||
|
||||
<div className="session_caract"> Code Formation LMS
|
||||
<i> (le code créé dans le LMS) </i>
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
required
|
||||
name="lms_class_code"
|
||||
id="lms_class_code"
|
||||
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
disabled={false}
|
||||
className="disabled_style"
|
||||
value={p_lms_class_code}
|
||||
onChange={(e) => setp_lms_class_code(e.target.value)}
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
<div className="session_caract"> Nombre participants *<br />
|
||||
|
@ -6137,23 +6366,7 @@ const DisplayPartnerSession = (props) => {
|
|||
/>
|
||||
</div>
|
||||
|
||||
<div className="session_caract"> Code Formation LMS
|
||||
<i> (le code créé dans le LMS) </i>
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
required
|
||||
name="one_lms_class_code"
|
||||
id="one_lms_class_code"
|
||||
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
disabled={false}
|
||||
className="disabled_style enable_style"
|
||||
value={p_one_lms_class_code}
|
||||
onChange={(e) => setp_one_lms_class_code(e.target.value)}
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
<div className="session_caract"> Nombre participants *<br />
|
||||
|
@ -7440,14 +7653,54 @@ const DisplayPartnerSession = (props) => {
|
|||
}
|
||||
}
|
||||
/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div className="div_row">
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
|
||||
</div>
|
||||
{String(participant_data_changed) === "1" && String(participant_data_edit_mode) === "1" && <div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
||||
/!\ Pensez à enregistrer les modifications
|
||||
</div>}
|
||||
|
||||
|
||||
<div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
||||
|
||||
{String(participant_data_edit_mode) === "1" && <div className="div_row_gauche" style={{ "textAlign": 'left', 'marginLeft': '15px' }}>
|
||||
|
||||
<Button variant="contained" className="bton_enreg" onClick={Update_One_StagiaireData}>Enregistrer les modifications
|
||||
</Button>
|
||||
|
||||
</div>}
|
||||
|
||||
{String(participant_data_edit_mode) === "1" && <div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }} >
|
||||
<Button variant="contained" className="bton_annule" onClick={AnnuleAttendeeDetailFields}>Annuler
|
||||
</Button>
|
||||
</div>}
|
||||
</div>
|
||||
|
||||
|
||||
{String(participant_data_edit_mode) !== "1" && <div className="div_row" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
|
||||
|
||||
|
||||
|
||||
<div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
|
||||
|
||||
<Button variant="contained" className="bton_edit" onClick={EnableAttendeeDetailFields}>Editer
|
||||
</Button>
|
||||
</div>
|
||||
|
||||
</div>}
|
||||
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
<hr className="hr_break" />
|
||||
</div>
|
||||
|
||||
<div className="div_row" style={{ "border": "None", "fontSize": "22px", "fontWeight": "600", "padding": "5px" }}>
|
||||
Pièces jointes
|
||||
Pièces jointes
|
||||
|
||||
</div>
|
||||
|
||||
|
@ -7636,39 +7889,8 @@ const DisplayPartnerSession = (props) => {
|
|||
<div className="div_row" style={{ "border": "None" }}>
|
||||
|
||||
</div>
|
||||
{String(participant_data_changed) === "1" && String(participant_data_edit_mode) === "1" && <div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
||||
/!\ Pensez à enregistrer les modifications
|
||||
</div>}
|
||||
|
||||
|
||||
<div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
||||
|
||||
{String(participant_data_edit_mode) === "1" && <div className="div_row_gauche" style={{ "textAlign": 'left', 'marginLeft': '15px' }}>
|
||||
|
||||
<Button variant="contained" className="bton_enreg" onClick={Update_One_StagiaireData}>Enregistrer les modifications
|
||||
</Button>
|
||||
|
||||
</div>}
|
||||
|
||||
{String(participant_data_edit_mode) === "1" && <div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }} >
|
||||
<Button variant="contained" className="bton_annule" onClick={AnnuleAttendeeDetailFields}>Annuler
|
||||
</Button>
|
||||
</div>}
|
||||
</div>
|
||||
|
||||
|
||||
{String(participant_data_edit_mode) !== "1" && <div className="div_row" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
|
||||
|
||||
|
||||
|
||||
<div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
|
||||
|
||||
<Button variant="contained" className="bton_edit" onClick={EnableAttendeeDetailFields}>Editer
|
||||
</Button>
|
||||
</div>
|
||||
|
||||
</div>}
|
||||
|
||||
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
<hr className="hr_break" />
|
||||
|
|
|
@ -244,7 +244,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
</Popup>
|
||||
}
|
||||
|
||||
{cellValues.row.status && String(cellValues.row.status) === "-1" &&
|
||||
{/*cellValues.row.status && String(cellValues.row.status) === "-1" &&
|
||||
|
||||
|
||||
<Popup
|
||||
|
@ -296,58 +296,9 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
)}
|
||||
</Popup>
|
||||
|
||||
}
|
||||
|
||||
{cellValues.row.status && String(cellValues.row.status) === "2" &&
|
||||
<Popup
|
||||
trigger={<Button
|
||||
*/ }
|
||||
|
||||
|
||||
>
|
||||
<FcDataConfiguration /> Finaliser Préins.
|
||||
|
||||
</Button>}
|
||||
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, vous allez finaliser la préinscription du stagiaire. <br />
|
||||
<br />
|
||||
</div>
|
||||
<div className="gest_actions">
|
||||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
//handleClick_accept(event, cellValues);
|
||||
//console.log('modal closed ');
|
||||
close();
|
||||
}}> Valider </button>
|
||||
|
||||
</div>
|
||||
<div style={{ "width": "45%", "float": "right" }}>
|
||||
<button
|
||||
className="gest_bton_popup"
|
||||
onClick={() => {
|
||||
//console.log('modal closed ');
|
||||
close();
|
||||
}}
|
||||
>
|
||||
Annuler
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</Popup>
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -463,7 +414,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
var email = cellValues.row.email;
|
||||
var inscription_id = cellValues.row._id;
|
||||
|
||||
|
||||
|
||||
Refuse_Inscritpion_with_Motif(email, inscription_id, motif_refus);
|
||||
}
|
||||
|
@ -474,7 +425,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
function Refuse_Inscritpion_with_Motif(local_email, local_inscription_id, motif) {
|
||||
|
||||
var form = new FormData();
|
||||
|
||||
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
form.append("token", stored_cookie);
|
||||
|
||||
|
@ -495,7 +446,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
setRefuse_Inscritpion_with_Motif_result(res.data.message);
|
||||
Getall_TrainingParticipant();
|
||||
alert(res.data.message);
|
||||
|
||||
|
||||
|
||||
} else if (String(res.data.status) === String("Err_Connexion")) {
|
||||
setLoading(false);
|
||||
|
@ -521,7 +472,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
function handleClick_accept(event, cellValues) {
|
||||
|
||||
var email = cellValues.row.email;
|
||||
|
@ -535,7 +486,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
function Accept_Inscritpion(local_email, local_inscription_id) {
|
||||
|
||||
var form = new FormData();
|
||||
|
||||
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
form.append("token", stored_cookie);
|
||||
form.append("inscription_id", local_inscription_id);
|
||||
|
@ -554,7 +505,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
setAccept_Inscritpion_result(res.data.message);
|
||||
Getall_TrainingParticipant();
|
||||
alert(res.data.message);
|
||||
|
||||
|
||||
|
||||
} else if (String(res.data.status) === String("Err_Connexion")) {
|
||||
setLoading(false);
|
||||
|
@ -611,11 +562,11 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/DeleteAttendeeInscription/";
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
//console.log(" In DeleteStagiaireData res.data.status = " + res.data.status);
|
||||
//console.log(" In DeleteStagiaireData res.data.message r_class = " + res.data.message);
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
setDeleteStagiaireData_api("true");
|
||||
setDeleteStagiaireData_result(res.data.message);
|
||||
|
@ -632,7 +583,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
|
||||
setLoading(false);
|
||||
console.warn('DeleteStagiaireData : Not good man :( mysearchtext = ' + error);
|
||||
setDeleteStagiaireData_api("false");
|
||||
alert(" Impossible de supprimer le stagaire");
|
||||
|
@ -714,9 +665,10 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Statgaire_List_Partner_with_filter/";
|
||||
|
||||
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
//console.log(" In Getall_TrainingParticipant res.data.status = " + res.data.status);
|
||||
//console.log(" In Getall_TrainingParticipant res.data.message r_class = " + res.data.message);
|
||||
|
@ -731,6 +683,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('Not good man :( Getall_TrainingParticipant = ', error);
|
||||
setGetall_TrainingParticipant_api("false");
|
||||
alert(" Impossible de recuperer la liste des stagiaires")
|
||||
|
@ -751,9 +704,9 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Statgaire_List_Partner_with_filter/";
|
||||
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
//console.log(" In Getall_TrainingParticipant res.data.status = " + res.data.status);
|
||||
//console.log(" In Getall_TrainingParticipant res.data.message r_class = " + res.data.message);
|
||||
|
@ -767,6 +720,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('Not good man :( Getall_TrainingParticipant = ', error);
|
||||
setGetall_TrainingParticipant_api("false");
|
||||
//setmyApimyApiMessage("")
|
||||
|
@ -780,6 +734,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
function handleClick_edit_session_From_Line(selected_row_id) {
|
||||
|
||||
|
||||
var line = JSON.parse(rowss[selected_row_id]);
|
||||
|
||||
|
||||
|
@ -1153,6 +1108,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
formData.append("email", local_mail);
|
||||
formData.append("class_internal_url", selected_internal_url);
|
||||
//console.log("token = " + stored_cookie);
|
||||
setLoading(true);
|
||||
|
||||
fetch(
|
||||
process.env.REACT_APP_API_URL + "myclass/api/LMS_Credential_Sending_mail/",
|
||||
|
@ -1163,6 +1119,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
setLoading(false);
|
||||
if (String(result['status']) === String("true")) {
|
||||
//console.log('Success:', result['message']);
|
||||
setResend_LMS_Credentials_result(result['message']);
|
||||
|
@ -1180,6 +1137,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error('Error:', error);
|
||||
setResend_LMS_Credentials_api("false");
|
||||
});
|
||||
|
@ -1379,7 +1337,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
function AnnuleAttendeeDetailFields() {
|
||||
|
||||
GetAttendee_Data(selected_participant_email, selected_code_session, selected_internal_url);
|
||||
GetAttendee_Data(selected_participant_email, selected_session_id, selected_internal_url);
|
||||
disableAttendeeDetailFields();
|
||||
setparticipant_data_changed();
|
||||
setparticipant_data_edit_mode();
|
||||
|
@ -1953,7 +1911,10 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
setdatagrid_columns_size_model2(10);
|
||||
}
|
||||
|
||||
|
||||
window.scrollTo({
|
||||
top: 0,
|
||||
behavior: "smooth",
|
||||
});
|
||||
|
||||
}, [])
|
||||
|
||||
|
@ -2054,6 +2015,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
setparticipant_data_changed();
|
||||
setparticipant_data_edit_mode();
|
||||
clean_old_messages();
|
||||
clearDetailAttendeFields();
|
||||
var form = new FormData();
|
||||
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
@ -2063,8 +2025,9 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
form.append("internal_url", internal_url);
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAttendeeDetail_perSession/";
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
setLoading(false);
|
||||
|
||||
if (String(res.data.status) === "true") {
|
||||
//console.log(" In GetAttendee res.data.status = " + res.data.status);
|
||||
|
@ -2075,7 +2038,6 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
if (res.data.message) {
|
||||
var mylocalattendee = JSON.parse(res.data.message);
|
||||
|
||||
|
||||
if (mylocalattendee.inscription_validation_date) {
|
||||
var date_du = new Date(moment(mylocalattendee.inscription_validation_date, "DD/MM/YYYY HH:mm:ss"));
|
||||
setdetailuser_date_inscription(date_du);
|
||||
|
@ -2228,6 +2190,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
}
|
||||
|
||||
} else if (String(res.data.status) === String("Err_Connexion")) {
|
||||
|
||||
alert('Erreur: ' + res.data.message);
|
||||
history.push("/Connexion");
|
||||
}
|
||||
|
@ -2239,6 +2202,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('Not good man :( GetAttendee = ', error);
|
||||
setGetAttendee_api("false");
|
||||
alert(" Impossible de recuperer les données du participant");
|
||||
|
@ -2421,12 +2385,12 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
//console.log(" #### form = ", form);
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/AddStagiairetoClass/";
|
||||
|
||||
|
||||
setLoading(true);
|
||||
|
||||
axios.post(myurl, form).then(res => {
|
||||
//console.log(" In One_Create_Participant res.data.status = " + res.data.status);
|
||||
//console.log(" In One_Create_Participant res.data.message r_class = " + res.data.message);
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
setOne_Create_Participant_api("true");
|
||||
setOne_Create_Participant_result(res.data.message);
|
||||
|
@ -2457,6 +2421,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
}).catch((error) => {
|
||||
|
||||
setLoading(false);
|
||||
console.warn('One_Create_Participant : Not good man :( = ' + error);
|
||||
setOne_Create_Participant_api("false");
|
||||
alert(" Impossible d'ajouter le participant")
|
||||
|
@ -2517,11 +2482,12 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
//console.log(" form == ", form);
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/UpdateStagiairetoClass/";
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
||||
console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
||||
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
||||
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
setUpdateStagiaireData_api("true");
|
||||
setUpdateStagiaireData_result(res.data.message);
|
||||
|
@ -2552,7 +2518,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
|
||||
setLoading(false);
|
||||
console.warn('UpdateStagiaireData : Not good man :( mysearchtext = ' + error);
|
||||
setUpdateStagiaireData_api("false");
|
||||
alert(" Impossible de mettre à jour le participant");
|
||||
|
@ -2635,9 +2601,9 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
form.append("token", stored_cookie);
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_partner_class/";
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
//console.log(" In GetCurrentPartnerClass res.data.status = " + res.data.status);
|
||||
//console.log(" In GetCurrentPartnerClass res.data.message r_class = " + res.data.message);
|
||||
|
@ -2655,6 +2621,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('Not good man :( mysearchtext = ', error);
|
||||
setGetCurrentPartnerClass_api("false");
|
||||
//setmyApimyApiMessage("")
|
||||
|
@ -2820,10 +2787,11 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
form.append("session_id", local_session_id);
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetSessionFormation/";
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
if (String(res.data.status) === "true") {
|
||||
setLoading(false);
|
||||
//console.log(" In GetCurrentSession res.data.status = " + res.data.status);
|
||||
//console.log(" In GetCurrentSession res.data.message r_class = " + res.data.message);
|
||||
//console.log(" In GetCurrentSession res.data.message len = " + String(res.data.message).length);
|
||||
|
@ -2991,17 +2959,20 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
}
|
||||
|
||||
} else if (String(res.data.status) === String("Err_Connexion")) {
|
||||
setLoading(false);
|
||||
alert('Erreur: ' + res.data.message);
|
||||
history.push("/Connexion");
|
||||
}
|
||||
|
||||
else {
|
||||
setLoading(false);
|
||||
setGetCurrentSession_api("false");
|
||||
setGetCurrentSession_message(res.data.message);
|
||||
alert("Erreur : " + res.data.message);
|
||||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('Not good man :( GetCurrentSession = ', error);
|
||||
setGetCurrentSession_api("false");
|
||||
|
||||
|
@ -3135,12 +3106,14 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
var url = process.env.REACT_APP_API_URL + "myclass/api/Get_Stored_Downloaded_File/" + token + "/" + file_name;
|
||||
|
||||
|
||||
setLoading(true);
|
||||
axios.get(url, { responseType: 'blob', },)
|
||||
.then((res) => {
|
||||
setLoading(false);
|
||||
fileDownload(res.data, nom_fiche_detaillee);
|
||||
setDownload_one_attached_document_api("true");
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.error('Error:', error);
|
||||
setDownload_one_attached_document_api("false");
|
||||
|
||||
|
@ -3304,7 +3277,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
//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/",
|
||||
{
|
||||
|
@ -3315,6 +3288,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
.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']);
|
||||
|
@ -3335,6 +3309,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error(' Record_All_PJ Error:', error);
|
||||
setRecord_All_PJ_api("false");
|
||||
});
|
||||
|
@ -3365,7 +3340,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
var url = process.env.REACT_APP_API_URL + "myclass/api/Delete_Stored_Downloaded_File/";
|
||||
|
||||
|
||||
setLoading(true);
|
||||
fetch(
|
||||
process.env.REACT_APP_API_URL + "myclass/api/Delete_Stored_Downloaded_File/",
|
||||
{
|
||||
|
@ -3375,7 +3350,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
)
|
||||
.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']);
|
||||
|
@ -3392,6 +3367,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error(' Record_All_PJ Error:', error);
|
||||
setDelete_one_attached_document_api("false");
|
||||
alert(" Impossible de supprimer le document")
|
||||
|
@ -3419,7 +3395,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
//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/",
|
||||
|
@ -3430,6 +3406,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
setLoading(false);
|
||||
|
||||
//console.log(" ## result['status'] = ", result['status'])
|
||||
if (String(result['status']) === String("true")) {
|
||||
|
@ -3445,6 +3422,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error(' Get_List_Of_All_PJ Error:', error);
|
||||
setGet_List_Of_All_PJ_api("false");
|
||||
});
|
||||
|
@ -3465,6 +3443,110 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
// -- end gestion pièces jointes
|
||||
|
||||
// Action en mass
|
||||
|
||||
const [actionmass_ftion_val, setactionmass_ftion_val] = useState();
|
||||
const actionmass_ftion = (event) => {
|
||||
const value = event.target.value;
|
||||
|
||||
|
||||
if (String(value) === "supprimer" || String(value) === "depublier" || String(value) === "desactiver") {
|
||||
setactionmass_ftion_val(value);
|
||||
}
|
||||
else {
|
||||
setactionmass_ftion_val();
|
||||
}
|
||||
}
|
||||
|
||||
async function actionmass_ftion_Traitemet() {
|
||||
|
||||
|
||||
var liste_session = GetSelectedRowsSession();
|
||||
|
||||
//console.log(" liste_formation = ", liste_formation);
|
||||
//console.log(" actionmass_ftion_val = ", actionmass_ftion_val);
|
||||
|
||||
if (String(actionmass_ftion_val) === String("supprimer")) {
|
||||
console.log(" ### liste session : ", liste_session)
|
||||
Delete_LIST_Stagiaires(liste_session);
|
||||
|
||||
}
|
||||
|
||||
else if (String(actionmass_ftion_val) === String("publier")) {
|
||||
|
||||
}
|
||||
|
||||
else if (String(actionmass_ftion_val) === String("desactiver")) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
const [selectedtraining, setselectedtraining] = useState([])
|
||||
function GetSelectedRowsSession() {
|
||||
///alert(" les lignes slected sont : " + selectionModel + " nb item = " + selectionModel.length);
|
||||
//const selectedRowsData = selectionModel.map((id) => rowss.find((row) => row.id === id));
|
||||
//console.log(rowss[0]);
|
||||
var tab_tmp = []
|
||||
for (var i = 0; i < selectionModel.length; i++) {
|
||||
var myid = parseInt(String(selectionModel[i]));
|
||||
var line = JSON.parse(rowss[myid]);
|
||||
tab_tmp.push(line._id);
|
||||
//console.log(rowss[myid]['external_code']);
|
||||
}
|
||||
setselectedtraining(tab_tmp);
|
||||
return tab_tmp;
|
||||
|
||||
}
|
||||
|
||||
const [Delete_LIST_Stagiaires_api, setDelete_LIST_Stagiaires_api] = useState();
|
||||
const [Delete_LIST_Stagiaires_message, setDelete_LIST_Stagiaires_message] = useState();
|
||||
const [Delete_LIST_Stagiaires_result, setDelete_LIST_Stagiaires_result] = useState();
|
||||
function Delete_LIST_Stagiaires(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);
|
||||
|
||||
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Delete_List_AttendeeInscription/";
|
||||
|
||||
axios.post(myurl, form).then(res => {
|
||||
//console.log(" In Delete_LIST_Stagiaires res.data.status = " + res.data.status);
|
||||
//console.log(" In Delete_LIST_Stagiaires res.data.message r_class = " + res.data.message);
|
||||
|
||||
if (String(res.data.status) === String("true")) {
|
||||
setDelete_LIST_Stagiaires_api("true");
|
||||
setDelete_LIST_Stagiaires_result(res.data.message);
|
||||
setSelectionModel([]);
|
||||
Getall_TrainingParticipant();
|
||||
alert(res.data.message);
|
||||
}
|
||||
else {
|
||||
setDelete_LIST_Stagiaires_api("false");
|
||||
setDelete_LIST_Stagiaires_message(res.data.message);
|
||||
alert(res.data.message);
|
||||
|
||||
}
|
||||
|
||||
}).catch((error) => {
|
||||
|
||||
console.warn('Delete_LIST_Stagiaires : Not good man :( mysearchtext = ' + error);
|
||||
setDelete_LIST_Stagiaires_api("false");
|
||||
alert(" Impossible de supprimer la liste des stagiaires");
|
||||
})
|
||||
}
|
||||
|
||||
// -- end action en mass
|
||||
|
||||
|
||||
return (
|
||||
<div className="displaypartnerstagiaire">
|
||||
{isLoading && <div className="loader-container">
|
||||
|
@ -3965,6 +4047,83 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
</div>
|
||||
|
||||
<div className="div_row">
|
||||
|
||||
{selectionModel && selectionModel.length > 1 && <div className="block_en_mass">
|
||||
<nav >Traitement en masse </nav>
|
||||
|
||||
<TextField
|
||||
|
||||
select
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
inputProps={{ min: "0", max: "1", step: "1" }}
|
||||
disabled={false}
|
||||
className="block_en_mass_select"
|
||||
|
||||
value={actionmass_ftion_val}
|
||||
onChange={actionmass_ftion}
|
||||
>
|
||||
<MenuItem value="n/a" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Action </MenuItem>
|
||||
<MenuItem value="supprimer" style={{ "paddingLeft": "5px", "textAlign": "left", "width": "100%" }}>Supprimer </MenuItem>
|
||||
|
||||
</TextField>
|
||||
{actionmass_ftion_val && <nav className='block_en_mass_bton_action'>
|
||||
<Popup
|
||||
trigger={<Button className="bton_enreg" style={{ "width": "90%" }}>
|
||||
|
||||
<FcAcceptDatabase /> Traiter
|
||||
|
||||
</Button>}
|
||||
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">
|
||||
{' '}
|
||||
|
||||
<font color="red"> Confirmer l'action <b> {actionmass_ftion_val} </b> en masse pour {selectionModel.length} lignes.
|
||||
</font>
|
||||
</div>
|
||||
<div className="gest_actions">
|
||||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
actionmass_ftion_Traitemet();
|
||||
close();
|
||||
}}> Valider </button>
|
||||
|
||||
</div>
|
||||
<div style={{ "width": "45%", "float": "right" }}>
|
||||
<button
|
||||
className="gest_bton_popup"
|
||||
onClick={() => {
|
||||
//console.log('modal closed ');
|
||||
close();
|
||||
}}
|
||||
>
|
||||
Annuler
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</Popup>
|
||||
</nav>
|
||||
}
|
||||
|
||||
</div>}
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
@ -4820,6 +4979,37 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
/>
|
||||
</div>
|
||||
|
||||
<div className="div_row">
|
||||
{String(participant_data_changed) === "1" && String(participant_data_edit_mode) === "1" && <div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
||||
/!\ Pensez à enregistrer les modifications
|
||||
</div>}
|
||||
|
||||
|
||||
<div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
||||
|
||||
{String(participant_data_changed) === "1" && String(participant_data_edit_mode) === "1" && <div className="div_row_gauche" style={{ "textAlign": 'left', 'marginLeft': '15px' }}>
|
||||
|
||||
<Button variant="contained" className="bton_enreg" onClick={Update_One_StagiaireData}>Enregistrer les modifications
|
||||
</Button>
|
||||
|
||||
</div>}
|
||||
|
||||
{String(participant_data_edit_mode) === "1" && <div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }} onClick={AnnuleAttendeeDetailFields}>
|
||||
<Button variant="contained" className="bton_annule" onClick={AnnuleAttendeeDetailFields}>Annuler
|
||||
</Button>
|
||||
</div>}
|
||||
</div>
|
||||
|
||||
|
||||
{String(participant_data_edit_mode) !== "1" && <div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
|
||||
|
||||
<Button variant="contained" className="bton_edit" onClick={EnableAttendeeDetailFields}>Editer
|
||||
</Button>
|
||||
|
||||
|
||||
</div>}
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
<hr className="hr_break" />
|
||||
|
@ -4961,6 +5151,9 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
</div>
|
||||
</div>
|
||||
</div>}
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{is_lms_class_code && <div>
|
||||
|
@ -5014,35 +5207,8 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
<div className="div_row" style={{ "border": "None" }}>
|
||||
|
||||
</div>
|
||||
{String(participant_data_changed) === "1" && String(participant_data_edit_mode) === "1" && <div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
||||
/!\ Pensez à enregistrer les modifications
|
||||
</div>}
|
||||
|
||||
|
||||
<div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
||||
|
||||
{String(participant_data_changed) === "1" && String(participant_data_edit_mode) === "1" && <div className="div_row_gauche" style={{ "textAlign": 'left', 'marginLeft': '15px' }}>
|
||||
|
||||
<Button variant="contained" className="bton_enreg" onClick={Update_One_StagiaireData}>Enregistrer les modifications
|
||||
</Button>
|
||||
|
||||
</div>}
|
||||
|
||||
{String(participant_data_edit_mode) === "1" && <div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }} onClick={AnnuleAttendeeDetailFields}>
|
||||
<Button variant="contained" className="bton_annule" onClick={AnnuleAttendeeDetailFields}>Annuler
|
||||
</Button>
|
||||
</div>}
|
||||
</div>
|
||||
|
||||
|
||||
{String(participant_data_edit_mode) !== "1" && <div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
|
||||
|
||||
<Button variant="contained" className="bton_edit" onClick={EnableAttendeeDetailFields}>Editer
|
||||
</Button>
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
<hr className="hr_break" />
|
||||
|
|
|
@ -108,7 +108,7 @@ const DistplayPartnerTraningsPage = (props) => {
|
|||
})
|
||||
.then((data) => data.json())
|
||||
.then((data) => {
|
||||
console.log('GetAllClass_WOfilter : Success:', data['message'], "data['status'] = ", data['status']);
|
||||
//console.log('GetAllClass_WOfilter : Success:', data['message'], "data['status'] = ", data['status']);
|
||||
setTableData(data['message']);
|
||||
setRows(data['message']);
|
||||
|
||||
|
@ -580,6 +580,22 @@ const DistplayPartnerTraningsPage = (props) => {
|
|||
|
||||
}
|
||||
|
||||
function GetSelectedRowsTraining_id_values() {
|
||||
///alert(" les lignes slected sont : " + selectionModel + " nb item = " + selectionModel.length);
|
||||
//const selectedRowsData = selectionModel.map((id) => rowss.find((row) => row.id === id));
|
||||
//console.log(rowss[0]);
|
||||
var tab_tmp = []
|
||||
for (var i = 0; i < selectionModel.length; i++) {
|
||||
var myid = parseInt(String(selectionModel[i]));
|
||||
var line = JSON.parse(rowss[myid]);
|
||||
tab_tmp.push(line._id);
|
||||
//console.log(rowss[myid]['external_code']);
|
||||
}
|
||||
setselectedtraining(tab_tmp);
|
||||
return tab_tmp;
|
||||
|
||||
}
|
||||
|
||||
|
||||
// Fonction de verification de la validité d'un token.
|
||||
function isValidToken() {
|
||||
|
@ -740,6 +756,7 @@ const DistplayPartnerTraningsPage = (props) => {
|
|||
}
|
||||
|
||||
var liste_formation = GetSelectedRowsTraining();
|
||||
var liste_formation_ids_values = GetSelectedRowsTraining_id_values();
|
||||
|
||||
|
||||
|
||||
|
@ -755,7 +772,7 @@ const DistplayPartnerTraningsPage = (props) => {
|
|||
}
|
||||
|
||||
else if (String(actionenmasse) === String("supprimer")) {
|
||||
Disable_class(liste_formation);
|
||||
Disable_class(liste_formation_ids_values);
|
||||
GetAllClass_WOfilter();
|
||||
}
|
||||
|
||||
|
@ -955,7 +972,8 @@ const DistplayPartnerTraningsPage = (props) => {
|
|||
const value = event.target.value;
|
||||
|
||||
|
||||
if (String(value) === "publier" || String(value) === "depublier" || String(value) === "desactiver") {
|
||||
if (String(value) === "publier" || String(value) === "depublier" ||
|
||||
String(value) === "desactiver" || String(value) === "supprimer") {
|
||||
setactionmass_ftion_val(value);
|
||||
}
|
||||
else {
|
||||
|
@ -982,8 +1000,9 @@ const DistplayPartnerTraningsPage = (props) => {
|
|||
|
||||
|
||||
var liste_formation = GetSelectedRowsTraining();
|
||||
var liste_formation_ids_values = GetSelectedRowsTraining_id_values();
|
||||
|
||||
//console.log(" liste_formation = ", liste_formation);
|
||||
//console.log(" liste_formation_ids_values = ", liste_formation_ids_values);
|
||||
//console.log(" actionmass_ftion_val = ", actionmass_ftion_val);
|
||||
|
||||
if (String(actionmass_ftion_val) === String("depublier")) {
|
||||
|
@ -1005,6 +1024,12 @@ const DistplayPartnerTraningsPage = (props) => {
|
|||
window.location.reload();
|
||||
}
|
||||
|
||||
else if (String(actionmass_ftion_val) === String("supprimer")) {
|
||||
Delete_LIST_Formations(liste_formation_ids_values);
|
||||
GetAllClass_WOfilter();
|
||||
//window.location.reload();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
const sleep = (milliseconds) => {
|
||||
|
@ -1012,6 +1037,53 @@ const DistplayPartnerTraningsPage = (props) => {
|
|||
}
|
||||
|
||||
|
||||
const [Delete_LIST_Formations_api, setDelete_LIST_Formations_api] = useState();
|
||||
const [Delete_LIST_Formations_message, setDelete_LIST_Formations_message] = useState();
|
||||
const [Delete_LIST_Formations_result, setDelete_LIST_Formations_result] = useState();
|
||||
function Delete_LIST_Formations(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_class_id", local_liste_class);
|
||||
|
||||
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/delete_list_Class/";
|
||||
|
||||
axios.post(myurl, form).then(res => {
|
||||
//console.log(" In Delete_LIST_Formations res.data.status = " + res.data.status);
|
||||
//console.log(" In Delete_LIST_Formations res.data.message r_class = " + res.data.message);
|
||||
|
||||
if (String(res.data.status) === String("true")) {
|
||||
setDelete_LIST_Formations_api("true");
|
||||
setDelete_LIST_Formations_result(res.data.message);
|
||||
setSelectionModel([]);
|
||||
GetAllClass_new();
|
||||
|
||||
alert(res.data.message);
|
||||
}
|
||||
else {
|
||||
setDelete_LIST_Formations_api("false");
|
||||
setDelete_LIST_Formations_message(res.data.message);
|
||||
alert(res.data.message);
|
||||
|
||||
}
|
||||
|
||||
}).catch((error) => {
|
||||
|
||||
console.warn('Delete_LIST_Formations : Not good man :( mysearchtext = ' + error);
|
||||
setDelete_LIST_Formations_api("false");
|
||||
alert(" Impossible de supprimer la liste des sessions de formation");
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
return (
|
||||
|
||||
<div className='displaypartnertrainingpagination'>
|
||||
|
@ -1394,7 +1466,7 @@ const DistplayPartnerTraningsPage = (props) => {
|
|||
<MenuItem value="" style={{ "paddingLeft": "5px", "textAlign": "left", "width":"100%" }}>Action </MenuItem>
|
||||
<MenuItem value="publier" style={{ "paddingLeft": "5px", "textAlign": "left", "width":"100%" }}>Publier </MenuItem>
|
||||
<MenuItem value="depublier" style={{ "paddingLeft": "5px", "textAlign": "left", "width":"100%" }}>Dépublier </MenuItem>
|
||||
{/*<MenuItem value="desactiver" style={{ "paddingLeft": "5px", "textAlign": "left", "width":"100%" }}>Désactiver </MenuItem>*/}
|
||||
<MenuItem value="supprimer" style={{ "paddingLeft": "5px", "textAlign": "left", "width":"100%" }}>Supprimer </MenuItem>
|
||||
|
||||
</TextField>
|
||||
|
||||
|
@ -1420,7 +1492,8 @@ const DistplayPartnerTraningsPage = (props) => {
|
|||
<div className="gest_content">
|
||||
{' '}
|
||||
|
||||
Confirmer l'action <b> {actionmass_ftion_val} </b> en masse.
|
||||
<font color="red"> Confirmer l'action <b> {actionmass_ftion_val} </b> en masse pour {selectionModel.length} lignes.
|
||||
</font>
|
||||
</div>
|
||||
<div className="gest_actions">
|
||||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
|
|
|
@ -973,11 +973,11 @@ function GestionAdministrative(props) {
|
|||
form.append("client_rattachement_id", p_detail_client_rattachement_id);
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/UpdateStagiairetoClass/";
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
||||
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
setUpdateStagiaireData_api("true");
|
||||
setUpdateStagiaireData_result(res.data.message);
|
||||
|
@ -997,7 +997,7 @@ function GestionAdministrative(props) {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
|
||||
setLoading(false);
|
||||
console.warn('UpdateStagiaireData : Not good man :( mysearchtext = ' + error);
|
||||
setUpdateStagiaireData_api("false");
|
||||
setretval_ch("-1");
|
||||
|
@ -1140,10 +1140,11 @@ function GestionAdministrative(props) {
|
|||
const stored_cookie = getCookie('tokenmysypart');
|
||||
form.append("token", stored_cookie);
|
||||
|
||||
setLoading(true);
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetAllValideSessionFormation_List/";
|
||||
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
//console.log(" In GetCurrentClass_trainingsession res.data.status = " + res.data.status);
|
||||
//console.log(" In GetCurrentClass_trainingsession res.data.message r_class = " + res.data.message);
|
||||
|
@ -1156,6 +1157,7 @@ function GestionAdministrative(props) {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('Not good man :( GetCurrentClass_trainingsession = ', error);
|
||||
setGetCurrentClass_trainingsession_api("false");
|
||||
//setmyApimyApiMessage("")
|
||||
|
@ -1191,11 +1193,12 @@ function GestionAdministrative(props) {
|
|||
form.append("session_id", mysession);
|
||||
form.append("email", email);
|
||||
|
||||
setLoading(true);
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/CancelAttendeeInscription/";
|
||||
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
||||
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
||||
|
@ -1220,6 +1223,7 @@ function GestionAdministrative(props) {
|
|||
|
||||
}).catch((error) => {
|
||||
|
||||
setLoading(false);
|
||||
console.warn('SendInscriptionCancell : Not good man :( mysearchtext = ' + error);
|
||||
setSendInscriptionCancell_api("false");
|
||||
|
||||
|
@ -1247,9 +1251,9 @@ function GestionAdministrative(props) {
|
|||
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/SendInscriptionConfirmation/";
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === String("true")) {
|
||||
//console.log(" In UpdateStagiaireData res.data.status = " + res.data.status);
|
||||
//console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message);
|
||||
|
@ -1267,7 +1271,7 @@ function GestionAdministrative(props) {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
|
||||
setLoading(false);
|
||||
console.warn('SendInscriptionConfirmation : Not good man :( mysearchtext = ' + error);
|
||||
setSendInscriptionConfirmation_api("false");
|
||||
|
||||
|
@ -1873,12 +1877,6 @@ function GestionAdministrative(props) {
|
|||
formateur = document.getElementById("formateur").value;
|
||||
|
||||
|
||||
var lms_class_code = "";
|
||||
if (document.getElementById("lms_class_code") && document.getElementById("lms_class_code").value != "") {
|
||||
lms_class_code = document.getElementById("lms_class_code").value;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||
|
@ -1899,7 +1897,7 @@ function GestionAdministrative(props) {
|
|||
form.append("ville", ville);
|
||||
form.append("code_session", code_session);
|
||||
form.append("formateur", formateur);
|
||||
form.append("lms_class_code", lms_class_code);
|
||||
|
||||
if (sessionStatus)
|
||||
form.append("session_status", "1");
|
||||
else
|
||||
|
@ -2094,13 +2092,6 @@ function GestionAdministrative(props) {
|
|||
formateur = document.getElementById("one_formateur").value;
|
||||
|
||||
|
||||
var lms_class_code = "";
|
||||
if (document.getElementById("one_lms_class_code") && document.getElementById("one_lms_class_code").value != "") {
|
||||
lms_class_code = document.getElementById("one_lms_class_code").value;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
@ -2119,7 +2110,7 @@ function GestionAdministrative(props) {
|
|||
form.append("ville", ville);
|
||||
form.append("code_session", code_session);
|
||||
form.append("formateur", formateur);
|
||||
form.append("lms_class_code", lms_class_code);
|
||||
|
||||
if (sessionStatus)
|
||||
form.append("session_status", "1");
|
||||
else
|
||||
|
@ -2205,13 +2196,16 @@ function GestionAdministrative(props) {
|
|||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/GetSessionFormation/";
|
||||
|
||||
setLoading(true);
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
setLoading(false);
|
||||
if (String(res.data.status) === "true") {
|
||||
//console.log(" In GetCurrentSession res.data.status = " + res.data.status);
|
||||
//console.log(" In GetCurrentSession res.data.message r_class = " + res.data.message);
|
||||
//console.log(" In GetCurrentSession res.data.message len = " + String(res.data.message).length);
|
||||
|
||||
setLoading(false);
|
||||
|
||||
setGetCurrentSession_api("true");
|
||||
if (String(res.data.message).length > 0) {
|
||||
setGetCurrentSession_result(res.data.message);
|
||||
|
@ -2356,9 +2350,8 @@ function GestionAdministrative(props) {
|
|||
document.getElementsByName("formateur")[0].value = mylocaltraining.formateur;
|
||||
}
|
||||
|
||||
document.getElementsByName("lms_class_code")[0].value = "";
|
||||
|
||||
if (mylocaltraining.lms_class_code) {
|
||||
document.getElementsByName("lms_class_code")[0].value = mylocaltraining.lms_class_code;
|
||||
setis_lms_class_code(mylocaltraining.lms_class_code);
|
||||
}
|
||||
|
||||
|
@ -2388,6 +2381,7 @@ function GestionAdministrative(props) {
|
|||
}
|
||||
|
||||
}).catch((error) => {
|
||||
setLoading(false);
|
||||
console.warn('Not good man :( GetCurrentSession = ', error);
|
||||
setGetCurrentSession_api("false");
|
||||
alert(" Impossible de recuperer les données de la session")
|
||||
|
@ -2553,8 +2547,6 @@ function GestionAdministrative(props) {
|
|||
document.getElementsByName("formateur")[0].disabled = true;
|
||||
document.getElementsByName("formateur")[0].style.backgroundColor = "#ECEFF1";
|
||||
|
||||
document.getElementsByName("lms_class_code")[0].disabled = true;
|
||||
document.getElementsByName("lms_class_code")[0].style.backgroundColor = "#ECEFF1";
|
||||
|
||||
document.getElementsByName("nb_participant")[0].disabled = true;
|
||||
document.getElementsByName("nb_participant")[0].style.backgroundColor = "#ECEFF1";
|
||||
|
@ -2606,8 +2598,6 @@ function GestionAdministrative(props) {
|
|||
document.getElementsByName("ville")[0].disabled = false;
|
||||
document.getElementsByName("ville")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
||||
document.getElementsByName("lms_class_code")[0].disabled = false;
|
||||
document.getElementsByName("lms_class_code")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
||||
document.getElementsByName("formateur")[0].disabled = false;
|
||||
document.getElementsByName("formateur")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
@ -5334,22 +5324,7 @@ function GestionAdministrative(props) {
|
|||
/>
|
||||
</div>
|
||||
|
||||
<div className="session_caract"> Code Formation LMS
|
||||
<i> (le code créé dans le LMS) </i>
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
required
|
||||
name="one_lms_class_code"
|
||||
id="one_lms_class_code"
|
||||
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
disabled={false}
|
||||
className="disabled_style enable_style"
|
||||
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div className="session_caract"> Nombre participants *<br />
|
||||
|
@ -5906,22 +5881,7 @@ function GestionAdministrative(props) {
|
|||
/>
|
||||
</div>
|
||||
|
||||
<div className="session_caract"> Code Formation LMS
|
||||
<i> (le code créé dans le LMS) </i>
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
required
|
||||
name="lms_class_code"
|
||||
id="lms_class_code"
|
||||
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
disabled={false}
|
||||
className="disabled_style"
|
||||
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div className="session_caract"> Nombre participants *<br />
|
||||
|
@ -7314,7 +7274,8 @@ function GestionAdministrative(props) {
|
|||
|
||||
/>
|
||||
</div>
|
||||
<div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
|
||||
|
||||
<div className="session_caract" style={{ "paddingTop": "25px" }}> <br />
|
||||
|
||||
<Button variant="contained" className="bton_fermer" onClick={Resend_LMS_Credentials}> (R)envoyer les Identifiants
|
||||
</Button>
|
||||
|
|
|
@ -1330,7 +1330,7 @@ const Partner = (props) => {
|
|||
|
||||
{String(menu) === "mes_clients" && <div className="div_droite">
|
||||
|
||||
<Partner_Client />
|
||||
<Partner_Client conntected_employee_id={conntected_employee_id}/>
|
||||
</div>
|
||||
}
|
||||
|
||||
|
|
|
@ -173,6 +173,10 @@ const PartnerClientActivite = (props) => {
|
|||
const [p_activite_type, setp_activite_type] = useState("");
|
||||
const [p_activite_status, setp_activite_status] = useState("");
|
||||
const [p_activite_status_label, setp_activite_status_label] = useState("");
|
||||
const [p_activite_employee_assigned_id, setp_activite_employee_assigned_id] = useState(props.conntected_employee_id);
|
||||
const [p_activite_employee_assigned_nom_prenom, setp_activite_employee_assigned_nom_prenom] = useState();
|
||||
|
||||
const [p_activite_employee_assigned, setp_activite_employee_assigned] = useState(props.conntected_employee_id);
|
||||
|
||||
|
||||
// Recuperation des activités du client d'un partner
|
||||
|
@ -220,10 +224,48 @@ const PartnerClientActivite = (props) => {
|
|||
|
||||
|
||||
useEffect(() => {
|
||||
Getall_Training_Employee_No_Filter();
|
||||
Get_List_Activite_Of_client_Part();
|
||||
|
||||
}, []);
|
||||
|
||||
const [Getall_Training_Employee_No_Filter_api, setGetall_Training_Employee_No_Filter_api] = useState();
|
||||
const [Getall_Training_Employee_No_Filter_message, setGetall_Training_Employee_No_Filter_message] = useState();
|
||||
const [Getall_Training_Employee_No_Filter_result, setGetall_Training_Employee_No_Filter_result] = useState();
|
||||
function Getall_Training_Employee_No_Filter(event) {
|
||||
|
||||
var form = new FormData();
|
||||
|
||||
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
form.append("token", stored_cookie);
|
||||
|
||||
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_List_Ressource_Humaine_no_filter/";
|
||||
|
||||
|
||||
|
||||
axios.post(myurl, form).then(res => {
|
||||
|
||||
if (String(res.data.status) === String("true")) {
|
||||
//console.log(" In Getall_Training_Employee_No_Filter res.data.status = " + res.data.status);
|
||||
//console.log(" In Getall_Training_Employee_No_Filter res.data.message r_class = " + res.data.message);
|
||||
setGetall_Training_Employee_No_Filter_api("true");
|
||||
setGetall_Training_Employee_No_Filter_result(res.data.message);
|
||||
}
|
||||
else {
|
||||
setGetall_Training_Employee_No_Filter_api("false");
|
||||
setGetall_Training_Employee_No_Filter_message(res.data.message);
|
||||
alert(res.data.message);
|
||||
}
|
||||
|
||||
}).catch((error) => {
|
||||
console.warn('Not good man :( Getall_Training_Employee_No_Filter = ', error);
|
||||
setGetall_Training_Employee_No_Filter_api("false");
|
||||
alert(" Impossible de recuperer la liste des employés");
|
||||
//setmyApimyApiMessage("")
|
||||
})
|
||||
}
|
||||
|
||||
const filterPassedTime_start = (time) => {
|
||||
const currentDate = new Date();
|
||||
const selectedDate = new Date(time);
|
||||
|
@ -251,6 +293,10 @@ const PartnerClientActivite = (props) => {
|
|||
form.append("type", p_activite_type);
|
||||
form.append("status", p_activite_status);
|
||||
|
||||
if (p_activite_employee_assigned_id)
|
||||
form.append("employee_assigned_to_id", p_activite_employee_assigned_id);
|
||||
|
||||
|
||||
|
||||
// Controle d'integrité des infos
|
||||
var activite_description = ""
|
||||
|
@ -378,6 +424,9 @@ const PartnerClientActivite = (props) => {
|
|||
if (one_activite_status)
|
||||
form.append("status", one_activite_status);
|
||||
|
||||
if (p_activite_employee_assigned_id)
|
||||
form.append("employee_assigned_to_id", p_activite_employee_assigned_id);
|
||||
|
||||
|
||||
var myurl = "";
|
||||
|
||||
|
@ -482,6 +531,12 @@ const PartnerClientActivite = (props) => {
|
|||
setp_activite_deadline("");
|
||||
|
||||
|
||||
if (mylocalclient_activite.employee_assigned_to_id) {
|
||||
setp_activite_employee_assigned_nom_prenom(mylocalclient_activite.employee_assigned_to_nom_prenom);
|
||||
setp_activite_employee_assigned_id(mylocalclient_activite.employee_assigned_to_id);
|
||||
}
|
||||
|
||||
|
||||
if (mylocalclient_activite.type)
|
||||
setp_activite_type(mylocalclient_activite.type);
|
||||
else
|
||||
|
@ -563,6 +618,12 @@ const PartnerClientActivite = (props) => {
|
|||
document.getElementsByName("activite_status")[0].style.backgroundColor = "#ECEFF1";
|
||||
}
|
||||
|
||||
if (document.getElementsByName("activite_assigned_to")[0]) {
|
||||
document.getElementsByName("activite_assigned_to")[0].disabled = true;
|
||||
document.getElementsByName("activite_assigned_to")[0].style.backgroundColor = "#ECEFF1";
|
||||
}
|
||||
|
||||
|
||||
if (document.getElementsByName("activite_detail")[0]) {
|
||||
document.getElementsByName("activite_detail")[0].disabled = true;
|
||||
document.getElementsByName("activite_detail")[0].style.backgroundColor = "#ECEFF1";
|
||||
|
@ -592,6 +653,12 @@ const PartnerClientActivite = (props) => {
|
|||
document.getElementsByName("activite_status")[0].style.backgroundColor = "#FFFFFF";
|
||||
}
|
||||
|
||||
if (document.getElementsByName("activite_assigned_to")) {
|
||||
document.getElementsByName("activite_assigned_to")[0].disabled = false;
|
||||
document.getElementsByName("activite_assigned_to")[0].style.backgroundColor = "#FFFFFF";
|
||||
}
|
||||
|
||||
|
||||
if (document.getElementsByName("activite_detail")) {
|
||||
document.getElementsByName("activite_detail")[0].disabled = false;
|
||||
document.getElementsByName("activite_detail")[0].style.backgroundColor = "#FFFFFF";
|
||||
|
@ -731,7 +798,7 @@ const PartnerClientActivite = (props) => {
|
|||
</div>
|
||||
</div>}
|
||||
{String(showactivite_detail) === "1" && <div className="div_row" style={{ "marginLeft": "5px", "marginRight": "5px" }} onChange={DataUpdated_Activite_Data}>
|
||||
<div className="training_caract"> Description <br />
|
||||
<div className="training_caract"> Description <br />
|
||||
|
||||
<TextField
|
||||
required
|
||||
|
@ -802,7 +869,8 @@ const PartnerClientActivite = (props) => {
|
|||
value={p_activite_type}
|
||||
onChange={(e) => setp_activite_type(e.target.value)} >
|
||||
{type_activite_list.map((option) => (
|
||||
<MenuItem key={option.value} value={option.value} >
|
||||
<MenuItem key={option.value} value={option.value}
|
||||
style={{"width":"100%", "paddingLeft":"5px"}}>
|
||||
{option.label} <br />
|
||||
</MenuItem>
|
||||
))}
|
||||
|
@ -866,6 +934,52 @@ const PartnerClientActivite = (props) => {
|
|||
</TextField>
|
||||
</div>}
|
||||
|
||||
|
||||
{String(formedit_mode_activite) === "1" && <div className="training_caract" > Assigné d à (employé) <br />
|
||||
|
||||
<TextField
|
||||
|
||||
id="activite_assigned_to"
|
||||
name="activite_assigned_to"
|
||||
select
|
||||
|
||||
className="disabled_style"
|
||||
value={p_activite_employee_assigned_id}
|
||||
onChange={(e) => {
|
||||
setp_activite_employee_assigned_id(e.target.value);
|
||||
|
||||
}
|
||||
}
|
||||
>
|
||||
{Getall_Training_Employee_No_Filter_result &&
|
||||
Getall_Training_Employee_No_Filter_result.map((myclient) => (
|
||||
<MenuItem key={JSON.parse(myclient)._id} value={JSON.parse(myclient)._id}
|
||||
style={{"width":"100%", "paddingLeft":"5px"}} >
|
||||
{JSON.parse(myclient).nom} {JSON.parse(myclient).prenom}
|
||||
|
||||
</MenuItem>
|
||||
))}
|
||||
</TextField>
|
||||
</div>}
|
||||
|
||||
{String(formedit_mode_activite) !== "1" && <div className="training_caract" > Assigné à (employé) <br />
|
||||
|
||||
<TextField
|
||||
|
||||
margin="dense"
|
||||
id="activite_assigned_to"
|
||||
name="activite_assigned_to"
|
||||
className="disabled_style"
|
||||
|
||||
fullWidth
|
||||
|
||||
value={p_activite_employee_assigned_nom_prenom}
|
||||
|
||||
/>
|
||||
|
||||
</div>}
|
||||
|
||||
|
||||
<div className="training_caract" style={{ "width": "105%" }}>
|
||||
Détail <br />
|
||||
<TextField
|
||||
|
@ -884,6 +998,12 @@ const PartnerClientActivite = (props) => {
|
|||
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
|
||||
</div>
|
||||
|
@ -920,12 +1040,12 @@ const PartnerClientActivite = (props) => {
|
|||
<TextField
|
||||
required
|
||||
name="activite_description"
|
||||
//label="Description b "
|
||||
//label="Description"
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
disabled={false}
|
||||
className="disabled_style enable_style"
|
||||
className="disabled_style"
|
||||
value={one_activite_description}
|
||||
onChange={(e) => setone_activite_description(e.target.value)}
|
||||
|
||||
|
@ -971,7 +1091,7 @@ const PartnerClientActivite = (props) => {
|
|||
value={one_activite_type}
|
||||
onChange={(e) => setone_activite_type(e.target.value)} >
|
||||
{type_activite_list.map((option) => (
|
||||
<MenuItem key={option.value} value={option.value} >
|
||||
<MenuItem key={option.value} value={option.value} style={{"width":"100%", "paddingLeft":"5px"}} >
|
||||
{option.label} <br />
|
||||
</MenuItem>
|
||||
))}
|
||||
|
@ -1000,6 +1120,34 @@ const PartnerClientActivite = (props) => {
|
|||
</TextField>
|
||||
</div>
|
||||
|
||||
<div className="training_caract"> Assigné à (employé) <br />
|
||||
<TextField
|
||||
|
||||
id="activite_assigned_to"
|
||||
name="activite_assigned_to"
|
||||
|
||||
select
|
||||
|
||||
className="disabled_style"
|
||||
|
||||
value={p_activite_employee_assigned_id}
|
||||
onChange={(e) => {
|
||||
setp_activite_employee_assigned_id(e.target.value);
|
||||
|
||||
}
|
||||
}
|
||||
>
|
||||
{Getall_Training_Employee_No_Filter_result &&
|
||||
Getall_Training_Employee_No_Filter_result.map((myclient) => (
|
||||
<MenuItem key={JSON.parse(myclient)._id} value={JSON.parse(myclient)._id}
|
||||
style={{"paddingLeft":"5px", "width":"100%"}}>
|
||||
{JSON.parse(myclient).nom} {JSON.parse(myclient).prenom} <br />
|
||||
|
||||
</MenuItem>
|
||||
))}
|
||||
</TextField>
|
||||
</div>
|
||||
|
||||
<div className="training_caract" style={{ "width": "105%" }}> Détail <br />
|
||||
<TextField
|
||||
required
|
||||
|
@ -1017,6 +1165,10 @@ const PartnerClientActivite = (props) => {
|
|||
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -334,13 +334,13 @@ const Partner_Commande = (props) => {
|
|||
|
||||
Getall_Parter_Orders_No_Filter();
|
||||
|
||||
if ( document.getElementById('myRef_head')) {
|
||||
if (document.getElementById('myRef_head')) {
|
||||
var divh = document.getElementById('myRef_head').offsetTop;
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
alert(res.data.message);
|
||||
}
|
||||
else {
|
||||
|
@ -533,14 +533,14 @@ const Partner_Commande = (props) => {
|
|||
GetCurrentPartnerClass();
|
||||
Get_Given_Partner_Config_Point_Taux_TVA();
|
||||
|
||||
if ( document.getElementById('myRef_head')) {
|
||||
if (document.getElementById('myRef_head')) {
|
||||
var divh = document.getElementById('myRef_head').offsetTop;
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
}, [])
|
||||
|
||||
|
@ -750,7 +750,7 @@ const Partner_Commande = (props) => {
|
|||
behavior: "smooth",
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
@ -1190,8 +1190,10 @@ const Partner_Commande = (props) => {
|
|||
|
||||
|
||||
if (mylocalclient) {
|
||||
if (mylocalclient.email)
|
||||
if (mylocalclient.email){
|
||||
setp_detail_header_email_client(mylocalclient.email);
|
||||
//console.log(" ### mylocalclient.email = ", mylocalclient.email);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (String(res.data.status) === String("Err_Connexion")) {
|
||||
|
@ -1919,13 +1921,13 @@ const Partner_Commande = (props) => {
|
|||
Display_Detail_Order_data(selected_id);
|
||||
alert(" La mise à jour du " + String(p_detail_header_type) + " été correctement faite.");
|
||||
|
||||
if ( document.getElementById('myRef_head')) {
|
||||
if (document.getElementById('myRef_head')) {
|
||||
var divh = document.getElementById('myRef_head').offsetTop;
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
|
@ -2021,6 +2023,35 @@ const Partner_Commande = (props) => {
|
|||
form.append("order_line_montant_toutes_taxes", p_add_line_item_total_amount_ttc);
|
||||
|
||||
|
||||
// Controle des champs obligatoires
|
||||
if( !p_add_line_item || String(p_add_line_item).length < 2){
|
||||
alert(" Vous devez choisir un article ");
|
||||
return;
|
||||
}
|
||||
|
||||
console.log(" ### p_add_line_item = ", p_add_line_item);
|
||||
|
||||
if (!p_add_line_item_qty || parseFloat(String(p_add_line_item_qty)) <= 0){
|
||||
alert(" La quantité choisie est incorrecte ");
|
||||
return;
|
||||
}
|
||||
|
||||
if (!p_add_line_item_price || parseFloat(String(p_add_line_item_price)) < 0){
|
||||
alert(" Le prix unitaire est incorrecte ");
|
||||
return;
|
||||
}
|
||||
|
||||
if( String(p_add_line_item_type_reduction) === "percent" &&
|
||||
( parseFloat(String(p_add_line_item_reduction_value)) < 0 || parseFloat(String(p_add_line_item_reduction_value)) > 100 ) ){
|
||||
alert(" Pour une reduction de type 'pourcentage', la valeur doit être comprise entre 0 et 100 ");
|
||||
return;
|
||||
}
|
||||
|
||||
if( String(p_add_line_item_type_reduction) === "fixe" &&
|
||||
( parseFloat(String(p_add_line_item_reduction_value)) < 0 || parseFloat(String(p_add_line_item_reduction_value)) > parseFloat(String(p_add_line_item_price)) ) ){
|
||||
alert(" Pour une reduction de type 'fixe', la valeur ne doit pas excéder le prix unitaire de l'article ");
|
||||
return;
|
||||
}
|
||||
|
||||
//onsole.log("### form = ", form);
|
||||
|
||||
|
@ -2038,7 +2069,8 @@ const Partner_Commande = (props) => {
|
|||
clean_article_detail_fields();
|
||||
|
||||
Display_Detail_Order_data(selected_id);
|
||||
alert(" La mise à jour été correctement faite.");
|
||||
alert(" L'article a été correctement ajouté / mis à jour.");
|
||||
setDialog_Detail_Article_open(false);
|
||||
|
||||
//myRef_head.current.scrollIntoView({ behavior: "smooth" });
|
||||
|
||||
|
@ -2062,7 +2094,7 @@ const Partner_Commande = (props) => {
|
|||
|
||||
const Update_Dialog_Detail_Article_open = () => {
|
||||
Add_Update_One_Order_Line_Data();
|
||||
setDialog_Detail_Article_open(false);
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
@ -2151,7 +2183,14 @@ const Partner_Commande = (props) => {
|
|||
form.append("order_header_email_client", p_detail_header_email_client);
|
||||
|
||||
|
||||
|
||||
if( !p_add_cmd_header_client_id || String(p_add_cmd_header_client_id).length < 2 ){
|
||||
alert(" Vous devez choisir un client");
|
||||
return;
|
||||
}
|
||||
//console.log("### form = ", form);
|
||||
|
||||
|
||||
var myurl = ""
|
||||
|
||||
if (String(p_add_cmd_header_order_type) === "devis") {
|
||||
|
@ -2180,13 +2219,13 @@ const Partner_Commande = (props) => {
|
|||
alert(" La commande à jour été correctement ajoutée.");
|
||||
}
|
||||
|
||||
if ( document.getElementById('myRef_head')) {
|
||||
if (document.getElementById('myRef_head')) {
|
||||
var divh = document.getElementById('myRef_head').offsetTop;
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
|
@ -2637,13 +2676,13 @@ const Partner_Commande = (props) => {
|
|||
Getall_Parter_Orders_No_Filter();
|
||||
|
||||
Display_Detail_Order_data(selected_id);
|
||||
if ( document.getElementById('myRef_head')) {
|
||||
if (document.getElementById('myRef_head')) {
|
||||
var divh = document.getElementById('myRef_head').offsetTop;
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
alert(res.data.message);
|
||||
|
@ -2694,13 +2733,13 @@ const Partner_Commande = (props) => {
|
|||
Getall_Parter_Orders_No_Filter();
|
||||
|
||||
Display_Detail_Order_data(selected_id);
|
||||
if ( document.getElementById('myRef_head')) {
|
||||
if (document.getElementById('myRef_head')) {
|
||||
var divh = document.getElementById('myRef_head').offsetTop;
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
window.scrollTo({
|
||||
top: divh,
|
||||
behavior: "smooth",
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
alert(res.data.message);
|
||||
|
@ -2819,6 +2858,7 @@ const Partner_Commande = (props) => {
|
|||
{String(p_detail_header_statut_label).toLowerCase() !== "facturé" && <div className="session_caract_Dialog" > Article
|
||||
|
||||
<TextField
|
||||
required
|
||||
autoFocus
|
||||
margin="dense"
|
||||
id="ref_article"
|
||||
|
@ -2895,7 +2935,7 @@ const Partner_Commande = (props) => {
|
|||
{String(p_detail_header_statut_label).toLowerCase() !== "facturé" && <div className="session_caract_Dialog" > Quantité
|
||||
|
||||
<TextField
|
||||
|
||||
required
|
||||
margin="dense"
|
||||
id="ref_article_qty"
|
||||
//label="Quantité"
|
||||
|
@ -2917,7 +2957,7 @@ const Partner_Commande = (props) => {
|
|||
|
||||
{String(p_detail_header_statut_label).toLowerCase() !== "facturé" && <div className="session_caract_Dialog" > Prix Unitaire
|
||||
<TextField
|
||||
|
||||
required
|
||||
margin="dense"
|
||||
id="ref_article_unit_price"
|
||||
name="ref_article_unit_price"
|
||||
|
@ -3191,6 +3231,7 @@ const Partner_Commande = (props) => {
|
|||
|
||||
<div className="session_caract_Dialog" > Client
|
||||
<TextField
|
||||
required
|
||||
autoFocus
|
||||
margin="dense"
|
||||
id="ref_client"
|
||||
|
|
|
@ -1,5 +1,37 @@
|
|||
.addclassmanual {
|
||||
|
||||
.loader-container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
position: fixed;
|
||||
background: white;
|
||||
background-color: transparent;
|
||||
z-index: 1;
|
||||
top: 0px;
|
||||
opacity: 80%;
|
||||
}
|
||||
|
||||
.spinner {
|
||||
width: 20rem;
|
||||
height: 10rem;
|
||||
border: 8px solid;
|
||||
border-color: #3d5af1 transparent #3d5af1 transparent;
|
||||
border-radius: 50%;
|
||||
animation: spin-anim 1.2s linear infinite;
|
||||
background-color: red;
|
||||
color: black;
|
||||
}
|
||||
|
||||
.mysy_spinner {
|
||||
border-radius: 5px;
|
||||
border: 1px solid black;
|
||||
opacity: 100%;
|
||||
}
|
||||
|
||||
|
||||
.css-1d6wzja-MuiButton-startIcon{
|
||||
margin-left: 4px !important;
|
||||
}
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
float: left;
|
||||
//border:0px solid black;
|
||||
border-width: 0.01rem;
|
||||
width: 48%;
|
||||
width: 90%;
|
||||
border-radius: 1rem;
|
||||
}
|
||||
|
||||
|
@ -36,7 +36,7 @@
|
|||
float: right;
|
||||
//border:0px solid black;
|
||||
border-width: 0.01rem;
|
||||
width: 48%;
|
||||
width: 90%;
|
||||
border-radius: 1rem;
|
||||
}
|
||||
|
||||
|
@ -160,7 +160,7 @@
|
|||
margin-right: 1rem;
|
||||
padding: 0.3rem;
|
||||
margin-bottom: 0.5rem;
|
||||
min-width: 10rem;
|
||||
min-width: 100%;
|
||||
text-align: center;
|
||||
border: 1px solid #9cf;
|
||||
color: #3b3e40;
|
||||
|
|
|
@ -582,24 +582,6 @@
|
|||
padding: 1px !important;
|
||||
}
|
||||
|
||||
.block_en_mass {
|
||||
width: 100%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_select {
|
||||
width: 100%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_bton_action {
|
||||
width: 100%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
padding-top: 0.5rem !important;
|
||||
}
|
||||
|
||||
.block_detail_inscrit {
|
||||
border: none;
|
||||
|
@ -614,6 +596,26 @@
|
|||
border-left: 3mm ridge rgba(211, 220, 50, .6);
|
||||
float: left;
|
||||
}
|
||||
|
||||
.block_en_mass {
|
||||
width: 100%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.block_en_mass_select {
|
||||
width: 100%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_bton_action {
|
||||
width: 100%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
padding-top: 0.5rem !important;
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 601px) and (max-width: 991px) {
|
||||
|
@ -1142,25 +1144,6 @@
|
|||
padding: 1px !important;
|
||||
}
|
||||
|
||||
.block_en_mass {
|
||||
width: 50%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_select {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_bton_action {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
padding-top: 0.5rem !important;
|
||||
}
|
||||
|
||||
.block_detail_inscrit {
|
||||
border: none;
|
||||
background: #F8F9F9;
|
||||
|
@ -1175,6 +1158,26 @@
|
|||
float: left;
|
||||
}
|
||||
|
||||
.block_en_mass {
|
||||
width: 50%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.block_en_mass_select {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_bton_action {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
padding-top: 0.5rem !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 992px) and (max-width: 1199px) {
|
||||
|
@ -1637,6 +1640,25 @@
|
|||
float: left;
|
||||
}
|
||||
|
||||
.block_en_mass {
|
||||
width: 50%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.block_en_mass_select {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_bton_action {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
padding-top: 0.5rem !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -1868,13 +1890,6 @@
|
|||
}
|
||||
|
||||
|
||||
|
||||
.block_en_mass {
|
||||
width: 50%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.session_open_close {
|
||||
cursor: pointer;
|
||||
text-align: right;
|
||||
|
@ -2194,6 +2209,26 @@
|
|||
float: left;
|
||||
}
|
||||
|
||||
.block_en_mass {
|
||||
width: 50%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.block_en_mass_select {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_bton_action {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
padding-top: 0.5rem !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// end media
|
||||
|
|
|
@ -619,6 +619,26 @@
|
|||
border-left: 3mm ridge rgba(211, 220, 50, .6);
|
||||
float: left;
|
||||
}
|
||||
|
||||
.block_en_mass {
|
||||
width: 100%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.block_en_mass_select {
|
||||
width: 100%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_bton_action {
|
||||
width: 100%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
padding-top: 0.5rem !important;
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 601px) and (max-width: 991px) {
|
||||
|
@ -1202,6 +1222,26 @@
|
|||
border-left: 3mm ridge rgba(211, 220, 50, .6);
|
||||
float: left;
|
||||
}
|
||||
|
||||
.block_en_mass {
|
||||
width: 50%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.block_en_mass_select {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_bton_action {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
padding-top: 0.5rem !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -1676,6 +1716,26 @@
|
|||
float: left;
|
||||
}
|
||||
|
||||
.block_en_mass {
|
||||
width: 50%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.block_en_mass_select {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_bton_action {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
padding-top: 0.5rem !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 1200px) {
|
||||
|
@ -2222,6 +2282,26 @@
|
|||
float: left;
|
||||
}
|
||||
|
||||
.block_en_mass {
|
||||
width: 50%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.block_en_mass_select {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.block_en_mass_bton_action {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
padding-top: 0.5rem !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// end media
|
||||
|
|
|
@ -99,7 +99,7 @@
|
|||
|
||||
.sousmenu {
|
||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||
font-size: small;
|
||||
font-size: 11px;
|
||||
text-align: left;
|
||||
margin-bottom: 0.8rem;
|
||||
color: #0c0101;
|
||||
|
@ -566,7 +566,7 @@
|
|||
|
||||
.sousmenu {
|
||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||
font-size: small;
|
||||
font-size: 11px;
|
||||
text-align: left;
|
||||
margin-bottom: 0.8rem;
|
||||
color: #c0c0c0;
|
||||
|
@ -1014,7 +1014,7 @@
|
|||
|
||||
.sousmenu {
|
||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||
font-size: small;
|
||||
font-size: 11px;
|
||||
text-align: left;
|
||||
margin-bottom: 0.8rem;
|
||||
color: #c0c0c0;
|
||||
|
@ -1100,7 +1100,7 @@
|
|||
|
||||
.sousmenu {
|
||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||
font-size: small;
|
||||
font-size: 11px;
|
||||
text-align: left;
|
||||
margin-bottom: 0.8rem;
|
||||
color: #c0c0c0;
|
||||
|
@ -1643,7 +1643,7 @@
|
|||
|
||||
.sousmenu {
|
||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||
font-size: small;
|
||||
font-size: 11px;
|
||||
text-align: left;
|
||||
margin-bottom: 0.8rem;
|
||||
color: #c0c0c0;
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
float: left;
|
||||
//border:0px solid black;
|
||||
border-width: 0.01rem;
|
||||
width: 48%;
|
||||
width: 90%;
|
||||
border-radius: 1rem;
|
||||
}
|
||||
|
||||
|
@ -34,7 +34,7 @@
|
|||
float: right;
|
||||
//border:0px solid black;
|
||||
border-width: 0.01rem;
|
||||
width: 48%;
|
||||
width: 90%;
|
||||
border-radius: 1rem;
|
||||
}
|
||||
|
||||
|
@ -66,13 +66,13 @@
|
|||
}
|
||||
|
||||
.training_caract {
|
||||
width: 50%;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.training_text {
|
||||
width: 50%;
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
float: left;
|
||||
height: 320px !important;
|
||||
|
@ -99,7 +99,7 @@
|
|||
font-size: small !important;
|
||||
color: black;
|
||||
width: 90% !important;
|
||||
height: 3.5rem !important;
|
||||
height: 3rem !important;
|
||||
margin: 5px !important;
|
||||
margin-bottom: 1rem !important;
|
||||
}
|
||||
|
@ -158,7 +158,7 @@
|
|||
margin-right: 1rem;
|
||||
padding: 0.3rem;
|
||||
margin-bottom: 0.5rem;
|
||||
min-width: 10rem;
|
||||
min-width: 100%;
|
||||
text-align: center;
|
||||
border: 1px solid #9cf;
|
||||
color: #3b3e40;
|
||||
|
@ -216,42 +216,39 @@
|
|||
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
|
||||
}
|
||||
|
||||
|
||||
|
||||
.detail_header {
|
||||
display: inline-block;
|
||||
color: #808080;
|
||||
border: 1px solid #CCC;
|
||||
background: #b3cee5;
|
||||
box-shadow: 1px 1px 10px 1px rgb(0 0 0 / 15%);
|
||||
cursor: pointer;
|
||||
vertical-align: middle;
|
||||
padding: 5px;
|
||||
text-align: left;
|
||||
font-weight: bold;
|
||||
width: 10rem;
|
||||
border-top-right-radius: 5px !important;
|
||||
color: green;
|
||||
border: none;
|
||||
font-weight: 600;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.detail_activite {
|
||||
display: inline-block;
|
||||
color: #808080;
|
||||
border: 1px solid #CCC;
|
||||
background: #b3cee5;
|
||||
box-shadow: 1px 1px 10px 1px rgb(0 0 0 / 15%);
|
||||
cursor: pointer;
|
||||
vertical-align: middle;
|
||||
padding: 5px;
|
||||
width: 100%;
|
||||
margin-bottom: 0.5rem !important;
|
||||
text-align: left;
|
||||
min-width: 20rem !important;
|
||||
border-top-right-radius: 10px !important;
|
||||
height: 5rem !important;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.detail_activite:hover {
|
||||
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
|
||||
}
|
||||
|
||||
.detail_activite {
|
||||
display: inline-block;
|
||||
color: green;
|
||||
border: none;
|
||||
background: white;
|
||||
box-shadow: 1px 1px 10px 1px rgb(0 0 0 / 15%);
|
||||
cursor: pointer;
|
||||
vertical-align: middle;
|
||||
padding: 5px;
|
||||
text-align: left;
|
||||
min-width: 90% !important;
|
||||
border-top-right-radius: 10px !important;
|
||||
height: 8rem !important;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.scroll_mysy {
|
||||
overflow-y: auto;
|
||||
max-height: 20rem;
|
||||
|
@ -259,6 +256,28 @@
|
|||
overflow-y: scroll;
|
||||
padding-right: 1rem !important;
|
||||
}
|
||||
|
||||
.block_all_activite {
|
||||
width: 100%;
|
||||
float: left;
|
||||
border-width: 0.01rem;
|
||||
width: 100%;
|
||||
margin-bottom: 1rem;
|
||||
padding: 5px !important;
|
||||
overflow-y: auto;
|
||||
max-height: 20rem;
|
||||
overflow-y: visible;
|
||||
overflow-y: scroll;
|
||||
}
|
||||
|
||||
|
||||
.block_activite {
|
||||
width: 100%;
|
||||
float: left;
|
||||
margin-bottom: 1.5rem;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 601px) and (max-width: 991px) {
|
||||
|
@ -348,7 +367,7 @@
|
|||
font-size: small !important;
|
||||
color: black;
|
||||
width: 90% !important;
|
||||
height: 3.5rem !important;
|
||||
height: 3rem !important;
|
||||
margin: 5px !important;
|
||||
margin-bottom: 1rem !important;
|
||||
}
|
||||
|
@ -465,42 +484,39 @@
|
|||
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
|
||||
}
|
||||
|
||||
|
||||
|
||||
.detail_header {
|
||||
display: inline-block;
|
||||
color: #808080;
|
||||
border: 1px solid #CCC;
|
||||
background: #b3cee5;
|
||||
box-shadow: 1px 1px 10px 1px rgb(0 0 0 / 15%);
|
||||
cursor: pointer;
|
||||
vertical-align: middle;
|
||||
padding: 5px;
|
||||
text-align: left;
|
||||
font-weight: bold;
|
||||
width: 10rem;
|
||||
border-top-right-radius: 5px !important;
|
||||
color: green;
|
||||
border: none;
|
||||
font-weight: 600;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.detail_activite {
|
||||
display: inline-block;
|
||||
color: #808080;
|
||||
border: 1px solid #CCC;
|
||||
background: #b3cee5;
|
||||
box-shadow: 1px 1px 10px 1px rgb(0 0 0 / 15%);
|
||||
cursor: pointer;
|
||||
vertical-align: middle;
|
||||
padding: 5px;
|
||||
width: 100%;
|
||||
margin-bottom: 0.5rem !important;
|
||||
text-align: left;
|
||||
min-width: 10rem !important;
|
||||
border-top-right-radius: 10px !important;
|
||||
height: 5rem !important;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.detail_activite:hover {
|
||||
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
|
||||
}
|
||||
|
||||
.detail_activite {
|
||||
display: inline-block;
|
||||
color: green;
|
||||
border: none;
|
||||
background: white;
|
||||
box-shadow: 1px 1px 10px 1px rgb(0 0 0 / 15%);
|
||||
cursor: pointer;
|
||||
vertical-align: middle;
|
||||
padding: 5px;
|
||||
text-align: left;
|
||||
min-width: 90% !important;
|
||||
border-top-right-radius: 10px !important;
|
||||
height: 8rem !important;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
.scroll_mysy {
|
||||
overflow-y: auto;
|
||||
max-height: 20rem;
|
||||
|
@ -526,7 +542,7 @@
|
|||
.block_activite {
|
||||
width: 50%;
|
||||
float: left;
|
||||
margin-bottom: 1rem;
|
||||
margin-bottom: 1.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -617,7 +633,7 @@
|
|||
font-size: small !important;
|
||||
color: black;
|
||||
width: 90% !important;
|
||||
height: 3.5rem !important;
|
||||
height: 3rem !important;
|
||||
margin: 5px !important;
|
||||
margin-bottom: 1rem !important;
|
||||
}
|
||||
|
@ -738,16 +754,11 @@
|
|||
display: inline-block;
|
||||
color: green;
|
||||
border: none;
|
||||
background: white;
|
||||
box-shadow: 1px 1px 10px 1px rgb(0 0 0 / 15%);
|
||||
cursor: pointer;
|
||||
vertical-align: middle;
|
||||
padding: 5px;
|
||||
text-align: left;
|
||||
font-weight: bold;
|
||||
width: 10rem;
|
||||
border-top-right-radius: 5px !important;
|
||||
font-weight: 600;
|
||||
font-size: small;
|
||||
width: 100%;
|
||||
margin-bottom: 0.5rem !important;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.detail_activite {
|
||||
|
@ -760,9 +771,9 @@
|
|||
vertical-align: middle;
|
||||
padding: 5px;
|
||||
text-align: left;
|
||||
min-width: 15rem !important;
|
||||
min-width: 90% !important;
|
||||
border-top-right-radius: 10px !important;
|
||||
height: 5rem !important;
|
||||
height: 8rem !important;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
|
@ -778,18 +789,6 @@
|
|||
padding-right: 1rem !important;
|
||||
}
|
||||
|
||||
.block_all_activite {
|
||||
width: 100%;
|
||||
float: left;
|
||||
border-width: 0.01rem;
|
||||
width: 100%;
|
||||
margin-bottom: 1rem;
|
||||
padding: 5px !important;
|
||||
overflow-y: auto;
|
||||
max-height: 20rem;
|
||||
overflow-y: visible;
|
||||
overflow-y: scroll;
|
||||
}
|
||||
|
||||
|
||||
.block_all_activite {
|
||||
|
@ -911,7 +910,7 @@
|
|||
font-size: small !important;
|
||||
color: black;
|
||||
width: 90% !important;
|
||||
height: 3.5rem !important;
|
||||
height: 3rem !important;
|
||||
margin: 5px !important;
|
||||
margin-bottom: 1rem !important;
|
||||
}
|
||||
|
@ -1099,6 +1098,12 @@
|
|||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.css-1t8l2tu-MuiInputBase-input-MuiOutlinedInput-input:invalid {
|
||||
padding-left: 5px !important;
|
||||
padding-top: 0px !important;
|
||||
padding-bottom: 0px !important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// end media
|
||||
|
|
|
@ -471,14 +471,14 @@
|
|||
|
||||
.div_row_gauche {
|
||||
float: left;
|
||||
width: 100%;
|
||||
width: 90%;
|
||||
border-radius: 1rem;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.div_row_droite {
|
||||
float: left;
|
||||
width: 100%;
|
||||
width: 90%;
|
||||
border-radius: 1rem;
|
||||
text-align: left;
|
||||
|
||||
|
@ -540,7 +540,7 @@
|
|||
//background-color: #ECEFF1;
|
||||
font-size: small !important;
|
||||
color: black;
|
||||
width: 100% !important;
|
||||
width: 95% !important;
|
||||
height: 3.5rem !important;
|
||||
|
||||
//border: none !important;
|
||||
|
|
Loading…
Reference in New Issue