2/04/24 - 20h30
parent
e395de332f
commit
14a34145c7
|
@ -1,27 +1,24 @@
|
|||
import React, { useRef, useState, useEffect } from "react";
|
||||
import Box from '@mui/material/Box';
|
||||
import TextField from '@mui/material/TextField';
|
||||
import MenuItem from '@mui/material/MenuItem';
|
||||
|
||||
import Button from '@mui/material/Button';
|
||||
import axios from "axios";
|
||||
import DeleteIcon from '@mui/icons-material/Delete';
|
||||
import { getCookie, setCookie } from 'react-use-cookie';
|
||||
import { Alert } from "@mui/material";
|
||||
import { AiTwotoneEdit, AiTwotoneSave } from "react-icons/ai";
|
||||
import profileimg from "../mysy_img/MYSY-profil-2.png";
|
||||
import Abonnement from "./Abonnement";
|
||||
import { ContentPasteSearchOutlined, PropaneSharp, ResetTvRounded } from "@mui/icons-material";
|
||||
import { useHistory } from "react-router-dom";
|
||||
import CheckOut from "./CheckOut";
|
||||
|
||||
import { AiTwotoneEdit, AiTwotoneSave } from "react-icons/ai";
|
||||
|
||||
import { useHistory } from "react-router-dom";
|
||||
|
||||
import { IoMdAddCircle, IoIosRemoveCircleOutline } from "react-icons/io";
|
||||
import "react-draft-wysiwyg/dist/react-draft-wysiwyg.css";
|
||||
import { RichTextEditor } from '@mantine/rte';
|
||||
|
||||
import { Editor } from '@tinymce/tinymce-react';
|
||||
import { IoArrowUndoCircle } from "react-icons/io5";
|
||||
import { GrUserAdmin, GrOrderedList } from "react-icons/gr";
|
||||
import parse from 'html-react-parser';
|
||||
|
||||
import fileDownload from 'js-file-download'
|
||||
import 'react-tooltip/dist/react-tooltip.css'
|
||||
import { Tooltip } from 'react-tooltip'
|
||||
import Popup from 'reactjs-popup';
|
||||
|
@ -29,6 +26,7 @@ import 'reactjs-popup/dist/index.css';
|
|||
import GestionAdministrative from "./GestionAdministrative";
|
||||
import img_loading_spin from "./../mysy_img/mysy_spin_loading.gif";
|
||||
import Autocomplete from '@mui/material/Autocomplete';
|
||||
import { Fab } from "@material-ui/core";
|
||||
|
||||
const AddClassManual = (props) => {
|
||||
const history = useHistory();
|
||||
|
@ -470,8 +468,6 @@ const AddClassManual = (props) => {
|
|||
|
||||
setdatamodification("0");
|
||||
|
||||
|
||||
|
||||
window.scrollTo({
|
||||
top: 0,
|
||||
behavior: "smooth",
|
||||
|
@ -489,7 +485,7 @@ const AddClassManual = (props) => {
|
|||
|
||||
const [field_suivi_eval, setfield_suivi_eval] = useState("");
|
||||
|
||||
|
||||
|
||||
const [field_prerequis, setfield_prerequis] = useState("");
|
||||
const [field_pourqui, setfield_pourqui] = useState("");
|
||||
const [field_mots_cle, setfield_mots_cle] = useState("");
|
||||
|
@ -498,6 +494,8 @@ const AddClassManual = (props) => {
|
|||
const [field_datelieu, setfield_datelieu] = useState("");
|
||||
const [field_zone_diffusion, setfield_zone_diffusion] = useState("");
|
||||
|
||||
const [selected_class_id, setselected_class_id] = useState("");
|
||||
|
||||
|
||||
function fillfield(event) {
|
||||
setisupdateclass(true);
|
||||
|
@ -536,9 +534,18 @@ const AddClassManual = (props) => {
|
|||
|
||||
if (mylocaltraining) {
|
||||
setdisplayedinternalurl(mylocaltraining.internal_url);
|
||||
|
||||
|
||||
if (mylocaltraining._id) {
|
||||
setselected_class_id(mylocaltraining._id);
|
||||
Get_List_Of_All_PJ(mylocaltraining._id);
|
||||
}
|
||||
|
||||
document.getElementsByName("external_code")[0].value = mylocaltraining.external_code;
|
||||
document.getElementsByName("title")[0].value = mylocaltraining.title;
|
||||
|
||||
|
||||
|
||||
if (mylocaltraining.objectif) {
|
||||
//document.getElementsByName("objectif")[0].value = mylocaltraining.objectif;
|
||||
//alert(" laaaaa ");
|
||||
|
@ -1068,7 +1075,7 @@ const AddClassManual = (props) => {
|
|||
formData.append('methode_pedagogique', methode_pedago);
|
||||
formData.append('condition_handicape', handicap);
|
||||
|
||||
formData.append('suivi_eval', suivi_eval);
|
||||
formData.append('suivi_eval', suivi_eval);
|
||||
|
||||
formData.append('prerequis', prerequis);
|
||||
|
||||
|
@ -1859,6 +1866,367 @@ const AddClassManual = (props) => {
|
|||
const [p_class_level_label, setp_class_level_label] = useState("Aucune certification");
|
||||
|
||||
|
||||
|
||||
// -- Gestion pièces jointes
|
||||
|
||||
const [Download_one_attached_document_api, setDownload_one_attached_document_api] = useState();
|
||||
const [Download_one_attached_document_result, setDownload_one_attached_document_result] = useState();
|
||||
const [Download_one_attached_document_message, setDownload_one_attached_document_message] = useState();
|
||||
|
||||
const Download_one_attached_document = (event) => {
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
|
||||
var nom_fiche_detaillee = "Fiche_Detaillee.pdf";
|
||||
var token = stored_cookie;
|
||||
var file_name = event.target.id;
|
||||
|
||||
|
||||
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");
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
const [tab_convention_pieces_jointes_result, settab_convention_pieces_jointes_result] = useState([]);
|
||||
|
||||
const [file_1_name, setfile_1_name] = useState();
|
||||
|
||||
const [sessions_file_change_1_api, setsessions_file_change_1_api] = useState();
|
||||
const [sessions_file_change_1_result, setsessions_file_change_1_result] = useState();
|
||||
const [sessions_file_change_1_message, setsessions_file_change_1_message] = useState();
|
||||
const sessions_file_change_1 = event => {
|
||||
|
||||
const fileUploaded = event.target.files[0];
|
||||
let file_size = event.target.files[0].size;
|
||||
let file_type = event.target.files[0].type;
|
||||
|
||||
|
||||
|
||||
|
||||
console.log("file_size 2 = ", file_size, " file_type = ", file_type);
|
||||
if (file_size > 10000000) {
|
||||
alert("Le fichier ne doit pas depasser un 1 Méga octets");
|
||||
console.log("Le fichier ne doit pas depasser un 1 Méga octets");
|
||||
return;
|
||||
}
|
||||
|
||||
setfile_1_name(event.target.files[0]);
|
||||
|
||||
const formData = new FormData();
|
||||
formData.append('File', fileUploaded);
|
||||
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
//formData.append("token", stored_cookie);
|
||||
//formData.append("class_internal_url", internal_url);
|
||||
//console.log("token = " + stored_cookie);
|
||||
|
||||
return;
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
const [sessions_file_change_1_convention_api, setsessions_file_change_1_convention_api] = useState();
|
||||
const [sessions_file_change_1_convention_result, setsessions_file_change_1_convention_result] = useState();
|
||||
const [sessions_file_change_1_convention_message, setsessions_file_change_1_convention_message] = useState();
|
||||
const sessions_file_change_1_convention = event => {
|
||||
|
||||
|
||||
const fileUploaded = event.target.files[0];
|
||||
let file_size = event.target.files[0].size;
|
||||
let file_type = event.target.files[0].type;
|
||||
|
||||
|
||||
if (file_type !== "application/pdf") {
|
||||
alert("Le fichier n'est pas de type PDF");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (file_size > 10000000) {
|
||||
alert("Le fichier ne doit pas depasser un 1 Méga octets");
|
||||
console.log("Le fichier ne doit pas depasser un 1 Méga octets");
|
||||
return;
|
||||
}
|
||||
|
||||
//var new_node = {'name':event.target.files[0].name, 'type':event.target.files[0].type}
|
||||
|
||||
|
||||
var new_tmp = [];
|
||||
|
||||
if (tab_convention_pieces_jointes_result && tab_convention_pieces_jointes_result.length > 0) {
|
||||
|
||||
tab_convention_pieces_jointes_result.map((x) => {
|
||||
new_tmp.push(x);
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
new_tmp.push(event.target.files[0])
|
||||
|
||||
settab_convention_pieces_jointes_result(new_tmp);
|
||||
|
||||
console.log(" tab_convention_pieces_jointes_result = ", tab_convention_pieces_jointes_result)
|
||||
|
||||
|
||||
return;
|
||||
|
||||
|
||||
};
|
||||
|
||||
const [file_2_name, setfile_2_name] = useState();
|
||||
|
||||
const [sessions_file_change_2_api, setsessions_file_change_2_api] = useState();
|
||||
const [sessions_file_change_2_result, setsessions_file_change_2_result] = useState();
|
||||
const [sessions_file_change_2_message, setsessions_file_change_2_message] = useState();
|
||||
const sessions_file_change_2 = event => {
|
||||
|
||||
const fileUploaded = event.target.files[0];
|
||||
let file_size = event.target.files[0].size;
|
||||
let file_type = event.target.files[0].type;
|
||||
|
||||
|
||||
console.log("file_size 1 = ", file_size, " file_type = ", file_type);
|
||||
if (file_size > 10000000) {
|
||||
alert("Le fichier ne doit pas depasser un 1 Méga octets");
|
||||
console.log("Le fichier ne doit pas depasser un 1 Méga octets");
|
||||
return;
|
||||
}
|
||||
setfile_2_name(event.target.files[0]);
|
||||
|
||||
const formData = new FormData();
|
||||
formData.append('File', fileUploaded);
|
||||
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
//formData.append("token", stored_cookie);
|
||||
//formData.append("class_internal_url", internal_url);
|
||||
//console.log("token = " + stored_cookie);
|
||||
|
||||
return;
|
||||
|
||||
|
||||
};
|
||||
|
||||
const [Record_All_PJ_api, setRecord_All_PJ_api] = useState();
|
||||
const [Record_All_PJ_result, setRecord_All_PJ_result] = useState();
|
||||
const [Record_All_PJ_message, setRecord_All_PJ_message] = useState();
|
||||
|
||||
function Record_All_PJ() {
|
||||
|
||||
if (!p_detail_one_file_to_download_type_name) {
|
||||
alert(" Vous devez donner un nom à la pièce jointe");
|
||||
return;
|
||||
}
|
||||
|
||||
if (file_1_name && file_1_name.name) {
|
||||
//console.log(" ### Traitement de : ", file_1_name.name);
|
||||
|
||||
const formData = new FormData();
|
||||
formData.append('File', file_1_name);
|
||||
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
formData.append("token", stored_cookie);
|
||||
formData.append("file_business_object", p_detail_one_file_to_download_type_name);
|
||||
formData.append("file_name", file_1_name.name);
|
||||
formData.append("status", "0");
|
||||
formData.append("object_owner_collection", "myclass");
|
||||
formData.append("object_owner_id", selected_class_id);
|
||||
|
||||
//formData.append("class_internal_url", internal_url);
|
||||
//console.log("token = " + stored_cookie);
|
||||
|
||||
setLoading(true);
|
||||
fetch(
|
||||
process.env.REACT_APP_API_URL + "myclass/api/Store_User_Downloaded_File/",
|
||||
{
|
||||
method: 'POST',
|
||||
body: formData,
|
||||
}
|
||||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
|
||||
setLoading(false);
|
||||
//console.log(" ## result['status'] = ", result['status'])
|
||||
if (String(result['status']) === String("true")) {
|
||||
//console.log('Success:', result['message']);
|
||||
setRecord_All_PJ_result(result['message']);
|
||||
setRecord_All_PJ_api("true");
|
||||
|
||||
Get_List_Of_All_PJ(selected_class_id);
|
||||
setfile_1_name();
|
||||
setp_detail_one_file_to_download_type_name();
|
||||
//GetCurrentClass_trainingsession();
|
||||
alert(" La pièce jointe " + file_1_name.name + " a été bien enregistrée")
|
||||
|
||||
}
|
||||
else {
|
||||
setRecord_All_PJ_message(result['message']);
|
||||
setRecord_All_PJ_api("false");
|
||||
alert(result['message']);
|
||||
}
|
||||
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error(' Record_All_PJ Error:', error);
|
||||
setRecord_All_PJ_api("false");
|
||||
alert(" Impossible d'ajouter la pièce jointe")
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
const [Delete_one_attached_document_api, setDelete_one_attached_document_api] = useState();
|
||||
const [Delete_one_attached_document_result, setDelete_one_attached_document_result] = useState();
|
||||
const [Delete_one_attached_document_message, setDelete_one_attached_document_message] = useState();
|
||||
|
||||
const Delete_one_attached_document = (event) => {
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
var formData = new FormData();
|
||||
var nom_fiche_detaillee = "Fiche_Detaillee.pdf";
|
||||
var file_name = event.target.id;
|
||||
|
||||
|
||||
formData.append("token", stored_cookie);
|
||||
formData.append("file_name", file_name);
|
||||
|
||||
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/",
|
||||
{
|
||||
method: 'POST',
|
||||
body: formData,
|
||||
}
|
||||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
setLoading(false);
|
||||
//console.log(" ## result['status'] = ", result['status'])
|
||||
if (String(result['status']) === String("true")) {
|
||||
//console.log('Success:', result['message']);
|
||||
setDelete_one_attached_document_result(result['message']);
|
||||
setDelete_one_attached_document_api("true");
|
||||
Get_List_Of_All_PJ(selected_class_id);
|
||||
alert(result['message'])
|
||||
|
||||
}
|
||||
else {
|
||||
setDelete_one_attached_document_message(result['message']);
|
||||
setDelete_one_attached_document_api("false");
|
||||
alert(result['message'])
|
||||
}
|
||||
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error(' Record_All_PJ Error:', error);
|
||||
setDelete_one_attached_document_api("false");
|
||||
alert(" Impossible de supprimer le document")
|
||||
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
const Delete_one_attached_document_convention = (event) => {
|
||||
var file_name = event.target.id;
|
||||
|
||||
}
|
||||
|
||||
const [Get_List_Of_All_PJ_api, setGet_List_Of_All_PJ_api] = useState();
|
||||
const [Get_List_Of_All_PJ_result, setGet_List_Of_All_PJ_result] = useState();
|
||||
const [Get_List_Of_All_PJ_message, setGet_List_Of_All_PJ_message] = useState();
|
||||
|
||||
function Get_List_Of_All_PJ(local_employee_id) {
|
||||
|
||||
const formData = new FormData();
|
||||
|
||||
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
formData.append("token", stored_cookie);
|
||||
formData.append("object_owner_collection", "myclass");
|
||||
formData.append("object_owner_id", local_employee_id);
|
||||
|
||||
|
||||
//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/",
|
||||
{
|
||||
method: 'POST',
|
||||
body: formData,
|
||||
}
|
||||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
setLoading(false);
|
||||
|
||||
//console.log(" ## result['status'] = ", result['status'])
|
||||
if (String(result['status']) === String("true")) {
|
||||
//console.log('Message :', result['message']);
|
||||
setGet_List_Of_All_PJ_result(result['message']);
|
||||
setGet_List_Of_All_PJ_api("true");
|
||||
|
||||
}
|
||||
else {
|
||||
setGet_List_Of_All_PJ_message(result['message']);
|
||||
setGet_List_Of_All_PJ_api("false");
|
||||
}
|
||||
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error(' Get_List_Of_All_PJ Error:', error);
|
||||
setGet_List_Of_All_PJ_api("false");
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
function Delete_file_1_name() {
|
||||
setfile_1_name();
|
||||
}
|
||||
|
||||
function Delete_file_2_name() {
|
||||
setfile_2_name();
|
||||
}
|
||||
|
||||
const [p_detail_one_file_to_download_type_name, setp_detail_one_file_to_download_type_name] = useState();
|
||||
|
||||
// -- end gestion pièces jointes
|
||||
|
||||
|
||||
|
||||
return (
|
||||
<div className="addclassmanual">
|
||||
{isLoading && <div className="loader-container">
|
||||
|
@ -2510,11 +2878,11 @@ const AddClassManual = (props) => {
|
|||
/>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div className="training_caract">
|
||||
|
||||
<div className="training_caract">
|
||||
<Tooltip className="tooltip_css" id="tooltip_img_profil_01" />
|
||||
<a data-tooltip-id="tooltip_img_profil_01" data-tooltip-html="L'image de profil de la formation. <br/>L'ordre de priorité d'affichage des images est : <br/>
|
||||
<a data-tooltip-id="tooltip_img_profil_01" data-tooltip-html="L'image de profil de la formation. <br/>L'ordre de priorité d'affichage des images est : <br/>
|
||||
1 - Image Bannière <br/>
|
||||
2 - L'image carrée téléchargéeen bas de page <br/>
|
||||
3 - L'image par defaut du métier dans le système
|
||||
|
@ -2530,9 +2898,9 @@ const AddClassManual = (props) => {
|
|||
disabled={false}
|
||||
className="disabled_style"
|
||||
/>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
</a>
|
||||
</div>
|
||||
|
||||
|
||||
<div className="training_caract">
|
||||
<TextField
|
||||
|
@ -3186,7 +3554,7 @@ const AddClassManual = (props) => {
|
|||
|
||||
|
||||
<Tooltip className="tooltip_css" id="tooltip_img_profil" />
|
||||
<a data-tooltip-id="tooltip_img_profil" data-tooltip-html="L'image de profil de la formation. <br/>L'ordre de priorité d'affichage des images est : <br/>
|
||||
<a data-tooltip-id="tooltip_img_profil" data-tooltip-html="L'image de profil de la formation. <br/>L'ordre de priorité d'affichage des images est : <br/>
|
||||
1 - Image Bannière <br/>
|
||||
2 - L'image carrée téléchargéeen bas de page <br/>
|
||||
3 - L'image par defaut du métier dans le système
|
||||
|
@ -3226,6 +3594,152 @@ const AddClassManual = (props) => {
|
|||
|
||||
</Box>
|
||||
|
||||
<div style={{ "marginRight":"10px"}}>
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
<hr className="hr_break" />
|
||||
</div>
|
||||
|
||||
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600" }}> Les pièces jointes </nav>
|
||||
|
||||
<div className="session_data" style={{ "padding": "5px", "marginRight":"10px"}}>
|
||||
<br />
|
||||
|
||||
<div className="div_row" style={{ "padding": "5px", "border": "None" }}>
|
||||
|
||||
<div style={{ "fontSize": "12px" }}>
|
||||
<label htmlFor="upload-photo">
|
||||
<input
|
||||
style={{ display: "none" }}
|
||||
id="upload-photo"
|
||||
name="upload-photo"
|
||||
type="file"
|
||||
onChange={sessions_file_change_1}
|
||||
/>
|
||||
|
||||
<Fab
|
||||
color="secondary"
|
||||
size="small"
|
||||
component="span"
|
||||
aria-label="add"
|
||||
variant="extended"
|
||||
>
|
||||
<IoMdAddCircle /> <nav style={{ "fontSize": "12px" }}> Ajouter un fichier </nav>
|
||||
</Fab>
|
||||
|
||||
</label>
|
||||
</div>
|
||||
{file_1_name && file_1_name.name &&
|
||||
<nav style={{ "fontSize": "12px" }}>
|
||||
<div className="session_caract">Nom du fichier <br />
|
||||
<TextField
|
||||
name="file_to_download_type_name"
|
||||
id="file_to_download_type_name"
|
||||
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
|
||||
disabled={false}
|
||||
className="disabled_style enable_style"
|
||||
value={p_detail_one_file_to_download_type_name}
|
||||
onChange={(e) => {
|
||||
setp_detail_one_file_to_download_type_name(e.target.value);
|
||||
|
||||
}}
|
||||
/>
|
||||
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
Fichier : {file_1_name.name} <br /> <font style={{ "cursor": "pointer" }}
|
||||
onClick={Delete_file_1_name}> Supprimer <IoIosRemoveCircleOutline /> </font>
|
||||
</nav>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "true" && <div className="okUpdateData"> Pièce jointe enregistrée </div>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "false" && <div className="koUpdateData"> {Record_All_PJ_message} </div>}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
{file_1_name && file_1_name.name && <div className="div_row" style={{ "padding": "5px", "border": "none" }}>
|
||||
|
||||
<div className="div_row_gauche" style={{ "padding": "5px", "border": "none" }}>
|
||||
<Button variant="contained" onClick={Record_All_PJ}
|
||||
startIcon={<AiTwotoneSave />} className="bton_enreg">ENREGISTRER LA PIECE</Button>
|
||||
</div>
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
{Get_List_Of_All_PJ_result && <div className="div_row" style={{ "padding": "5px", "border": "None" }}>
|
||||
<div className="div_row" style={{ "padding": "5px", "border": "None" }}>
|
||||
Liste des pièces jointes <br />
|
||||
<div className="div_row" style={{ "padding": "5px", "border": "None" }}>
|
||||
{Get_List_Of_All_PJ_result && Get_List_Of_All_PJ_result.map((val) => (
|
||||
<div className="div_row_list_pj" >
|
||||
<nav style={{ "color": "green", "cursor": "pointer" }} onClick={Download_one_attached_document} name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}> Télécharger <i> {(JSON.parse(val).file_business_object)}</i> </nav> <br />
|
||||
<Popup
|
||||
trigger={
|
||||
<nav style={{ "color": "red", "cursor": "pointer" }} > Supprimer</nav>
|
||||
|
||||
|
||||
}
|
||||
modal
|
||||
nested
|
||||
position="center center"
|
||||
>
|
||||
{close => (
|
||||
<div>
|
||||
<button className="gest_close" onClick={close}>
|
||||
×
|
||||
</button>
|
||||
<div className="gest_header"> MySy Information </div>
|
||||
<div className="gest_content">
|
||||
{' '}
|
||||
|
||||
En confirmant cette opération, la pièce jointe sera <i><font color="red"> définitivement supprimée</font></i>. <br />
|
||||
|
||||
|
||||
</div>
|
||||
<div className="gest_actions">
|
||||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
|
||||
Delete_one_attached_document(event);
|
||||
close();
|
||||
}}
|
||||
name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}
|
||||
> Valider </button>
|
||||
|
||||
</div>
|
||||
<div style={{ "width": "45%", "float": "right" }}>
|
||||
<button
|
||||
className="gest_bton_popup"
|
||||
onClick={() => {
|
||||
//console.log('modal closed ');
|
||||
close();
|
||||
}}
|
||||
>
|
||||
Annuler
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</Popup>
|
||||
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
{String(datamodification) === String("1") && <div className="parter_div_filtrer_row">
|
||||
<div className="koUpdateData" style={{ "color": "orange", "textAlign": "center" }}> /!\ Pensez à enregistrer les modifications</div>
|
||||
</div>}
|
||||
|
|
|
@ -2454,6 +2454,7 @@ const Apprenant = (props) => {
|
|||
const [display_detail_inscriptions, setdisplay_detail_inscriptions] = useState("");
|
||||
const [display_detail_absence, setdisplay_detail_absence] = useState("");
|
||||
const [display_detail_historique, setdisplay_detail_historique] = useState("");
|
||||
const [display_detail_piece_joint, setdisplay_detail_piece_joint] = useState("");
|
||||
|
||||
|
||||
async function submenu_add_one_inscription() {
|
||||
|
@ -2475,6 +2476,7 @@ const Apprenant = (props) => {
|
|||
setdisplay_detail_inscriptions("");
|
||||
setdisplay_detail_absence("");
|
||||
setdisplay_detail_historique("");
|
||||
setdisplay_detail_piece_joint("");
|
||||
|
||||
|
||||
|
||||
|
@ -2500,6 +2502,7 @@ const Apprenant = (props) => {
|
|||
setdisplay_detail_inscriptions("");
|
||||
setdisplay_detail_absence("");
|
||||
setdisplay_detail_historique("");
|
||||
setdisplay_detail_piece_joint("");
|
||||
|
||||
}
|
||||
|
||||
|
@ -2514,6 +2517,7 @@ const Apprenant = (props) => {
|
|||
setdisplay_detail_apprenant("");
|
||||
setdisplay_detail_absence("");
|
||||
setdisplay_detail_historique("");
|
||||
setdisplay_detail_piece_joint("");
|
||||
}
|
||||
|
||||
async function submenu_absence() {
|
||||
|
@ -2526,6 +2530,7 @@ const Apprenant = (props) => {
|
|||
setdisplay_detail_apprenant("");
|
||||
setdisplay_detail_inscriptions("");
|
||||
setdisplay_detail_historique("");
|
||||
setdisplay_detail_piece_joint("");
|
||||
}
|
||||
|
||||
|
||||
|
@ -2537,6 +2542,20 @@ const Apprenant = (props) => {
|
|||
setdisplay_detail_historique("1");
|
||||
setadd_One_Apprenant("");
|
||||
|
||||
setdisplay_detail_apprenant("");
|
||||
setdisplay_detail_inscriptions("");
|
||||
setdisplay_detail_absence("");
|
||||
setdisplay_detail_piece_joint("");
|
||||
}
|
||||
|
||||
async function submenu_piece_jointe() {
|
||||
setsubmenu("piece_jointe");
|
||||
|
||||
//await sleep(5);
|
||||
setdisplay_detail_piece_joint("1")
|
||||
setdisplay_detail_historique("");
|
||||
setadd_One_Apprenant("");
|
||||
|
||||
setdisplay_detail_apprenant("");
|
||||
setdisplay_detail_inscriptions("");
|
||||
setdisplay_detail_absence("");
|
||||
|
@ -4050,7 +4069,7 @@ const Apprenant = (props) => {
|
|||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div className="session_caract_Dialog" > <b> Nom </b>
|
||||
<TextField
|
||||
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
|
||||
|
@ -4612,73 +4631,13 @@ const Apprenant = (props) => {
|
|||
fontWeight: 'light',
|
||||
},
|
||||
|
||||
|
||||
'& .cell--etape--projet': {
|
||||
backgroundColor: '#E6F7C8',
|
||||
color: '#1a3e72',
|
||||
fontWeight: 'light',
|
||||
},
|
||||
'& .cell--etape--planification': {
|
||||
backgroundColor: '#E6CEAA',
|
||||
color: '#1a3e72',
|
||||
fontWeight: 'light',
|
||||
},
|
||||
'& .cell--etape--planifie': {
|
||||
backgroundColor: '#F4ECF7',
|
||||
color: '#1a3e72',
|
||||
fontWeight: 'light',
|
||||
},
|
||||
'& .cell--etape--termine': {
|
||||
backgroundColor: '#D6EAF8',
|
||||
color: '#1a3e72',
|
||||
fontWeight: 'light',
|
||||
},
|
||||
'& .cell--etape--facture': {
|
||||
backgroundColor: '#D5F5E3',
|
||||
color: '#1a3e72',
|
||||
fontWeight: 'light',
|
||||
},
|
||||
'& .cell--etape--annule': {
|
||||
backgroundColor: '#566573',
|
||||
color: '#1a3e72',
|
||||
fontWeight: 'light',
|
||||
},
|
||||
|
||||
|
||||
'& .line--etape--projet': {
|
||||
backgroundColor: 'yellow',
|
||||
color: 'black',
|
||||
},
|
||||
'& .line--etape--planification': {
|
||||
backgroundColor: 'red',
|
||||
color: 'black',
|
||||
},
|
||||
'& .line--etape--planifie': {
|
||||
backgroundColor: 'blue',
|
||||
color: 'black',
|
||||
},
|
||||
'& .line--etape--termine': {
|
||||
backgroundColor: 'orange',
|
||||
color: 'black',
|
||||
},
|
||||
'& .line--etape--facture': {
|
||||
backgroundColor: '#D5F5E3',
|
||||
color: 'black',
|
||||
},
|
||||
'& .line--etape--annule': {
|
||||
backgroundColor: '#566573',
|
||||
color: 'white',
|
||||
},
|
||||
"& .MuiDataGrid-columnHeaders": {
|
||||
backgroundColor: "#c8cfd5",
|
||||
color: "black",
|
||||
fontSize: 14
|
||||
},
|
||||
|
||||
'& .line--statut--selected': {
|
||||
backgroundColor: '#FBF2EF',
|
||||
color: 'black',
|
||||
},
|
||||
|
||||
'& .line--statut--pair': {
|
||||
backgroundColor: 'rgba(235, 235, 235, .7)',
|
||||
color: 'black',
|
||||
|
@ -4687,6 +4646,10 @@ const Apprenant = (props) => {
|
|||
backgroundColor: '#FFFFFF',
|
||||
color: 'black',
|
||||
},
|
||||
'& .line--statut--selected': {
|
||||
backgroundColor: '#FBF2EF',
|
||||
color: 'black',
|
||||
},
|
||||
|
||||
}}
|
||||
>
|
||||
|
@ -4776,33 +4739,9 @@ const Apprenant = (props) => {
|
|||
}
|
||||
|
||||
|
||||
//field === "etape"
|
||||
if (params.field === "etape" && String(params.value) == "0") {
|
||||
return 'cell--etape--projet';
|
||||
}
|
||||
|
||||
if (params.field === "etape" && String(params.value) == "1") {
|
||||
return 'cell--etape--planification';
|
||||
}
|
||||
|
||||
if (params.field === "etape" && String(params.value) == "2") {
|
||||
return 'cell--etape--planifie';
|
||||
}
|
||||
|
||||
if (params.field === "etape" && String(params.value) == "3") {
|
||||
return 'cell--etape--termine';
|
||||
}
|
||||
|
||||
if (params.field === "etape" && String(params.value) == "4") {
|
||||
return 'cell--etape--facture';
|
||||
}
|
||||
|
||||
if (params.field === "etape" && String(params.value) == "-1") {
|
||||
return 'cell--etape--annule';
|
||||
}
|
||||
|
||||
// Pour la gestion de la couleur de zone double cliquée
|
||||
if (String(params.row.id) === String(gridline_id)) {
|
||||
|
||||
return 'line--statut--selected';
|
||||
}
|
||||
else if (parseInt(String(params.row.id)) % 2 === 0) {
|
||||
|
@ -4978,6 +4917,8 @@ const Apprenant = (props) => {
|
|||
{((selected_apprenant_id && String(selected_apprenant_id).length > 2) || (String(add_One_Apprenant) === "1")) && <div className="div_row">
|
||||
<Button variant="outlined" ref={myRef} onClick={submenu_detail_apprenant} className="detail_class_submenu" id='detail_apprenant' name='detail_apprenant'>Détail Apprenant</Button>
|
||||
<Button variant="outlined" onClick={submenu_inscriptions} className="detail_class_submenu" id='inscriptions' name='inscriptions'>Inscriptions </Button>
|
||||
<Button variant="outlined" onClick={submenu_piece_jointe} className="detail_class_submenu" id='historique' name='historique'>Pièces Jointes </Button>
|
||||
|
||||
<Button variant="outlined" onClick={submenu_absence} className="detail_class_submenu" id='absences' name='absences'>Absences </Button>
|
||||
<Button variant="outlined" onClick={submenu_historique} className="detail_class_submenu" id='historique' name='historique'>Historique </Button>
|
||||
|
||||
|
@ -5670,7 +5611,7 @@ const Apprenant = (props) => {
|
|||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
disabled={false}
|
||||
disabled={false}
|
||||
|
||||
value={String(p_detail_tuteur1_civilite)[0].toUpperCase() + String(p_detail_tuteur1_civilite).slice(1)}
|
||||
|
||||
|
@ -5942,144 +5883,6 @@ const Apprenant = (props) => {
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
<hr className="hr_break" />
|
||||
</div>
|
||||
<div className="div_row" >
|
||||
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600", "padding": "5px" }}> Pièces Jointes </nav>
|
||||
<div className="div_row" style={{ "padding": "5px" }}>
|
||||
<div style={{ "fontSize": "12px" }}>
|
||||
<label htmlFor="upload-photo">
|
||||
<input
|
||||
style={{ display: "none" }}
|
||||
id="upload-photo"
|
||||
name="upload-photo"
|
||||
type="file"
|
||||
accept=".pdf"
|
||||
onChange={apprenants_file_change_1}
|
||||
/>
|
||||
|
||||
<Fab
|
||||
color="secondary"
|
||||
size="small"
|
||||
component="span"
|
||||
aria-label="add"
|
||||
variant="extended"
|
||||
>
|
||||
<IoMdAddCircle /> <nav style={{ "fontSize": "12px" }}> Ajouter un fichier </nav>
|
||||
</Fab>
|
||||
|
||||
</label>
|
||||
</div>
|
||||
{file_1_name && file_1_name.name &&
|
||||
<nav style={{ "fontSize": "12px" }}>
|
||||
<div className="session_caract">Nom du fichier <br />
|
||||
<TextField
|
||||
name="file_to_download_type_name"
|
||||
id="file_to_download_type_name"
|
||||
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
|
||||
disabled={false}
|
||||
className="disabled_style enable_style"
|
||||
value={p_detail_one_file_to_download_type_name}
|
||||
onChange={(e) => {
|
||||
setp_detail_one_file_to_download_type_name(e.target.value);
|
||||
|
||||
}}
|
||||
/>
|
||||
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
Fichier : {file_1_name.name} <br /> <font style={{ "cursor": "pointer" }}
|
||||
onClick={Delete_file_1_name}> Supprimer <IoIosRemoveCircleOutline /> </font>
|
||||
</nav>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "true" && <div className="okUpdateData"> Pièce jointe enregistrée </div>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "false" && <div className="koUpdateData"> {Record_All_PJ_message} </div>}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
{file_1_name && file_1_name.name && <div className="div_row">
|
||||
|
||||
<div className="div_row_gauche">
|
||||
<Button variant="contained" onClick={Record_All_PJ}
|
||||
startIcon={<AiTwotoneSave />} className="bton_enreg">ENREGISTRER LA PIECE</Button>
|
||||
</div>
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
{Get_List_Of_All_PJ_result && <div className="div_row" style={{ "padding": "5px" }}>
|
||||
<div className="div_row">
|
||||
Liste des pièces jointes <br />
|
||||
<div className="div_row">
|
||||
{Get_List_Of_All_PJ_result && Get_List_Of_All_PJ_result.map((val) => (
|
||||
<div className="div_row_list_pj" >
|
||||
<nav style={{ "color": "green", "cursor": "pointer" }} onClick={Download_one_attached_document} name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}> Télécharger <i> {(JSON.parse(val).file_business_object)}</i> </nav> <br />
|
||||
<Popup
|
||||
trigger={
|
||||
<nav style={{ "color": "red", "cursor": "pointer" }} > Supprimer</nav>
|
||||
|
||||
|
||||
}
|
||||
modal
|
||||
nested
|
||||
position="center center"
|
||||
>
|
||||
{close => (
|
||||
<div>
|
||||
<button className="gest_close" onClick={close}>
|
||||
×
|
||||
</button>
|
||||
<div className="gest_header"> MySy Information </div>
|
||||
<div className="gest_content">
|
||||
{' '}
|
||||
|
||||
En confirmant cette opération, la pièce jointe sera <i><font color="red"> définitivement supprimée</font></i>. <br />
|
||||
|
||||
|
||||
</div>
|
||||
<div className="gest_actions">
|
||||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
|
||||
Delete_one_attached_document(event);
|
||||
close();
|
||||
}}
|
||||
name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}
|
||||
> Valider </button>
|
||||
|
||||
</div>
|
||||
<div style={{ "width": "45%", "float": "right" }}>
|
||||
<button
|
||||
className="gest_bton_popup"
|
||||
onClick={() => {
|
||||
//console.log('modal closed ');
|
||||
close();
|
||||
}}
|
||||
>
|
||||
Annuler
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</Popup>
|
||||
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>}
|
||||
</div>
|
||||
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
|
||||
|
@ -6393,6 +6196,147 @@ const Apprenant = (props) => {
|
|||
|
||||
</div>}
|
||||
|
||||
{String(display_detail_piece_joint) === "1" && String(add_One_Apprenant) !== "1" && selected_apprenant_id && <div className="div_row" style={{ "border": "None", "background": '#F8F9F9', "padding": '5px' }}>
|
||||
|
||||
<div className="div_row" >
|
||||
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600", "padding": "5px" }}> Pièces Jointes </nav>
|
||||
<div className="div_row" style={{ "padding": "5px" }}>
|
||||
<div style={{ "fontSize": "12px" }}>
|
||||
<label htmlFor="upload-photo">
|
||||
<input
|
||||
style={{ display: "none" }}
|
||||
id="upload-photo"
|
||||
name="upload-photo"
|
||||
type="file"
|
||||
accept=".pdf"
|
||||
onChange={apprenants_file_change_1}
|
||||
/>
|
||||
|
||||
<Fab
|
||||
color="secondary"
|
||||
size="small"
|
||||
component="span"
|
||||
aria-label="add"
|
||||
variant="extended"
|
||||
>
|
||||
<IoMdAddCircle /> <nav style={{ "fontSize": "12px" }}> Ajouter un fichier </nav>
|
||||
</Fab>
|
||||
|
||||
</label>
|
||||
</div>
|
||||
{file_1_name && file_1_name.name &&
|
||||
<nav style={{ "fontSize": "12px" }}>
|
||||
<div className="session_caract">Nom du fichier <br />
|
||||
<TextField
|
||||
name="file_to_download_type_name"
|
||||
id="file_to_download_type_name"
|
||||
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
|
||||
disabled={false}
|
||||
className="disabled_style enable_style"
|
||||
value={p_detail_one_file_to_download_type_name}
|
||||
onChange={(e) => {
|
||||
setp_detail_one_file_to_download_type_name(e.target.value);
|
||||
|
||||
}}
|
||||
/>
|
||||
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
Fichier : {file_1_name.name} <br /> <font style={{ "cursor": "pointer" }}
|
||||
onClick={Delete_file_1_name}> Supprimer <IoIosRemoveCircleOutline /> </font>
|
||||
</nav>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "true" && <div className="okUpdateData"> Pièce jointe enregistrée </div>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "false" && <div className="koUpdateData"> {Record_All_PJ_message} </div>}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
{file_1_name && file_1_name.name && <div className="div_row">
|
||||
|
||||
<div className="div_row_gauche">
|
||||
<Button variant="contained" onClick={Record_All_PJ}
|
||||
startIcon={<AiTwotoneSave />} className="bton_enreg">ENREGISTRER LA PIECE</Button>
|
||||
</div>
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
{Get_List_Of_All_PJ_result && <div className="div_row" style={{ "padding": "5px" }}>
|
||||
<div className="div_row">
|
||||
Liste des pièces jointes <br />
|
||||
<div className="div_row">
|
||||
{Get_List_Of_All_PJ_result && Get_List_Of_All_PJ_result.map((val) => (
|
||||
<div className="div_row_list_pj" >
|
||||
<nav style={{ "color": "green", "cursor": "pointer" }} onClick={Download_one_attached_document} name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}> Télécharger <i> {(JSON.parse(val).file_business_object)}</i> </nav> <br />
|
||||
<Popup
|
||||
trigger={
|
||||
<nav style={{ "color": "red", "cursor": "pointer" }} > Supprimer</nav>
|
||||
|
||||
|
||||
}
|
||||
modal
|
||||
nested
|
||||
position="center center"
|
||||
>
|
||||
{close => (
|
||||
<div>
|
||||
<button className="gest_close" onClick={close}>
|
||||
×
|
||||
</button>
|
||||
<div className="gest_header"> MySy Information </div>
|
||||
<div className="gest_content">
|
||||
{' '}
|
||||
|
||||
En confirmant cette opération, la pièce jointe sera <i><font color="red"> définitivement supprimée</font></i>. <br />
|
||||
|
||||
|
||||
</div>
|
||||
<div className="gest_actions">
|
||||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
|
||||
Delete_one_attached_document(event);
|
||||
close();
|
||||
}}
|
||||
name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}
|
||||
> Valider </button>
|
||||
|
||||
</div>
|
||||
<div style={{ "width": "45%", "float": "right" }}>
|
||||
<button
|
||||
className="gest_bton_popup"
|
||||
onClick={() => {
|
||||
//console.log('modal closed ');
|
||||
close();
|
||||
}}
|
||||
>
|
||||
Annuler
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</Popup>
|
||||
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>}
|
||||
</div>
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
</div >
|
||||
);
|
||||
}
|
||||
|
|
|
@ -954,6 +954,8 @@ const DisplayPartnerSession = (props) => {
|
|||
setselected_sequence_id(cellValues.row._id);
|
||||
setdisplay_detail_sequence("1");
|
||||
|
||||
Get_List_Of_All_PJ_For_Session(cellValues.row._id);
|
||||
|
||||
if (document.getElementById('myRef_seq_ressource')) {
|
||||
var divh = document.getElementById('myRef_seq_ressource').offsetTop;
|
||||
window.scrollTo({
|
||||
|
@ -1923,7 +1925,7 @@ const DisplayPartnerSession = (props) => {
|
|||
if (document.getElementById("attestation")) {
|
||||
document.getElementById("attestation").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("attestation").style.color = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("inscrit")) {
|
||||
|
@ -1943,6 +1945,12 @@ const DisplayPartnerSession = (props) => {
|
|||
document.getElementById("evaluation").style.color = "black";
|
||||
document.getElementById("evaluation").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("piece_jointe").style.color = "black";
|
||||
document.getElementById("piece_jointe").style.fontWeight = "normal";
|
||||
}
|
||||
}
|
||||
|
||||
function submenu_inscrit() {
|
||||
|
@ -2001,7 +2009,13 @@ const DisplayPartnerSession = (props) => {
|
|||
if (document.getElementById("attestation")) {
|
||||
document.getElementById("attestation").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("attestation").style.color = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("piece_jointe").style.color = "black";
|
||||
document.getElementById("piece_jointe").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -2024,7 +2038,7 @@ const DisplayPartnerSession = (props) => {
|
|||
if (document.getElementById("attestation")) {
|
||||
document.getElementById("attestation").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("attestation").style.color = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "normal";
|
||||
}
|
||||
if (document.getElementById("editique")) {
|
||||
document.getElementById("editique").style.backgroundColor = "#d8edfc";
|
||||
|
@ -2067,6 +2081,13 @@ const DisplayPartnerSession = (props) => {
|
|||
document.getElementById("evaluation").style.color = "black";
|
||||
document.getElementById("evaluation").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("piece_jointe").style.color = "black";
|
||||
document.getElementById("piece_jointe").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
async function submenu_sequence_session() {
|
||||
|
@ -2131,6 +2152,13 @@ const DisplayPartnerSession = (props) => {
|
|||
document.getElementById("emargement").style.color = "black";
|
||||
document.getElementById("emargement").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("piece_jointe").style.color = "black";
|
||||
document.getElementById("piece_jointe").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -2195,30 +2223,43 @@ const DisplayPartnerSession = (props) => {
|
|||
if (document.getElementById("attestation")) {
|
||||
document.getElementById("attestation").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("attestation").style.color = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("piece_jointe").style.color = "black";
|
||||
document.getElementById("piece_jointe").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
async function submenu_historique() {
|
||||
setsubmenu("historique");
|
||||
|
||||
async function submenu_piece_jointe() {
|
||||
setsubmenu("piece_jointe");
|
||||
|
||||
// await sleep(5);
|
||||
if (!edit_session_form) {
|
||||
desableSessionFields();
|
||||
}
|
||||
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#104277";
|
||||
document.getElementById("piece_jointe").style.color = "white";
|
||||
document.getElementById("piece_jointe").style.fontWeight = "bold";
|
||||
}
|
||||
|
||||
|
||||
if (document.getElementById("historique")) {
|
||||
document.getElementById("historique").style.backgroundColor = "#104277";
|
||||
document.getElementById("historique").style.color = "white";
|
||||
document.getElementById("historique").style.fontWeight = "bold";
|
||||
document.getElementById("historique").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("historique").style.color = "black";
|
||||
document.getElementById("historique").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("attestation")) {
|
||||
document.getElementById("attestation").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("attestation").style.color = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("evaluation")) {
|
||||
|
@ -2272,6 +2313,85 @@ const DisplayPartnerSession = (props) => {
|
|||
}
|
||||
}
|
||||
|
||||
async function submenu_historique() {
|
||||
setsubmenu("historique");
|
||||
|
||||
// await sleep(5);
|
||||
if (!edit_session_form) {
|
||||
desableSessionFields();
|
||||
}
|
||||
|
||||
|
||||
if (document.getElementById("historique")) {
|
||||
document.getElementById("historique").style.backgroundColor = "#104277";
|
||||
document.getElementById("historique").style.color = "white";
|
||||
document.getElementById("historique").style.fontWeight = "bold";
|
||||
}
|
||||
|
||||
if (document.getElementById("attestation")) {
|
||||
document.getElementById("attestation").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("attestation").style.color = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("evaluation")) {
|
||||
document.getElementById("evaluation").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("evaluation").style.color = "black";
|
||||
document.getElementById("evaluation").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("editique")) {
|
||||
document.getElementById("editique").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("editique").style.color = "black";
|
||||
document.getElementById("editique").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("emargement")) {
|
||||
document.getElementById("emargement").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("emargement").style.color = "black";
|
||||
document.getElementById("emargement").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
|
||||
if (document.getElementById("sequence_session")) {
|
||||
document.getElementById("sequence_session").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("sequence_session").style.color = "black";
|
||||
document.getElementById("sequence_session").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
|
||||
if (document.getElementById("detail_session")) {
|
||||
document.getElementById("detail_session").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("detail_session").style.color = "black";
|
||||
document.getElementById("detail_session").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("inscrit")) {
|
||||
document.getElementById("inscrit").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("inscrit").style.color = "black";
|
||||
document.getElementById("inscrit").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("preinscrit")) {
|
||||
document.getElementById("preinscrit").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("preinscrit").style.color = "black";
|
||||
document.getElementById("preinscrit").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("emargement")) {
|
||||
document.getElementById("emargement").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("emargement").style.color = "black";
|
||||
document.getElementById("emargement").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("piece_jointe").style.color = "black";
|
||||
document.getElementById("piece_jointe").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
function submenu_editique() {
|
||||
setsubmenu("editique");
|
||||
|
@ -2292,7 +2412,7 @@ const DisplayPartnerSession = (props) => {
|
|||
if (document.getElementById("attestation")) {
|
||||
document.getElementById("attestation").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("attestation").style.color = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "black";
|
||||
document.getElementById("attestation").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("evaluation")) {
|
||||
|
@ -2330,8 +2450,15 @@ const DisplayPartnerSession = (props) => {
|
|||
document.getElementById("emargement").style.color = "black";
|
||||
document.getElementById("emargement").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("piece_jointe").style.color = "black";
|
||||
document.getElementById("piece_jointe").style.fontWeight = "normal";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
async function submenu_evaluation() {
|
||||
setsubmenu("evaluation");
|
||||
|
||||
|
@ -2397,6 +2524,12 @@ const DisplayPartnerSession = (props) => {
|
|||
document.getElementById("historique").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("piece_jointe").style.color = "black";
|
||||
document.getElementById("piece_jointe").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
GetListeEvaluation(selected_session_id);
|
||||
|
||||
}
|
||||
|
@ -2467,6 +2600,12 @@ const DisplayPartnerSession = (props) => {
|
|||
document.getElementById("historique").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("piece_jointe").style.color = "black";
|
||||
document.getElementById("piece_jointe").style.fontWeight = "normal";
|
||||
}
|
||||
|
||||
GetListeEvaluation(selected_session_id);
|
||||
|
||||
}
|
||||
|
@ -7378,10 +7517,83 @@ const DisplayPartnerSession = (props) => {
|
|||
}
|
||||
|
||||
|
||||
const [Record_All_PJ_For_Session_api, setRecord_All_PJ_For_Session_api] = useState();
|
||||
const [Record_All_PJ_For_Session_result, setRecord_All_PJ_For_Session_result] = useState();
|
||||
const [Record_All_PJ_For_Session_message, setRecord_All_PJ_For_Session_message] = useState();
|
||||
|
||||
function Record_All_PJ_For_Session() {
|
||||
|
||||
if (!p_detail_one_file_to_download_type_name) {
|
||||
alert(" Vous devez donner un nom à la pièce jointe");
|
||||
return;
|
||||
}
|
||||
|
||||
if (file_1_name && file_1_name.name) {
|
||||
console.log(" ### Traitement de : ", file_1_name.name);
|
||||
|
||||
const formData = new FormData();
|
||||
formData.append('File', file_1_name);
|
||||
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
formData.append("token", stored_cookie);
|
||||
formData.append("file_business_object", p_detail_one_file_to_download_type_name);
|
||||
formData.append("file_name", file_1_name.name);
|
||||
formData.append("status", "0");
|
||||
formData.append("object_owner_collection", "session_formation");
|
||||
formData.append("object_owner_id", selected_session_id);
|
||||
|
||||
//formData.append("class_internal_url", internal_url);
|
||||
//console.log("token = " + stored_cookie);
|
||||
setLoading(true);
|
||||
|
||||
fetch(
|
||||
process.env.REACT_APP_API_URL + "myclass/api/Store_User_Downloaded_File/",
|
||||
{
|
||||
method: 'POST',
|
||||
body: formData,
|
||||
}
|
||||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
setLoading(false);
|
||||
//console.log(" ## result['status'] = ", result['status'])
|
||||
if (String(result['status']) === String("true")) {
|
||||
//console.log('Success:', result['message']);
|
||||
setRecord_All_PJ_For_Session_result(result['message']);
|
||||
setRecord_All_PJ_For_Session_api("true");
|
||||
|
||||
Get_List_Of_All_PJ_For_Session(selected_session_id);
|
||||
setfile_1_name();
|
||||
setp_detail_one_file_to_download_type_name();
|
||||
//GetCurrentClass_trainingsession();
|
||||
alert(" La pièce jointe " + file_1_name.name + " a été bien enregistrée")
|
||||
|
||||
}
|
||||
else {
|
||||
setRecord_All_PJ_For_Session_message(result['message']);
|
||||
setRecord_All_PJ_For_Session_api("false");
|
||||
}
|
||||
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error(' Record_All_PJ_For_Session Error:', error);
|
||||
setRecord_All_PJ_For_Session_api("false");
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
if (file_2_name && file_2_name.name) {
|
||||
//console.log(" ### Traitement de : ", file_2_name.name);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
const [Delete_one_attached_document_api, setDelete_one_attached_document_api] = useState();
|
||||
const [Delete_one_attached_document_result, setDelete_one_attached_document_result] = useState();
|
||||
const [Delete_one_attached_document_message, setDelete_one_attached_document_message] = useState();
|
||||
|
||||
const Delete_one_attached_document = (event) => {
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
|
@ -7430,6 +7642,60 @@ const DisplayPartnerSession = (props) => {
|
|||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
const [Delete_one_attached_document_For_Session_api, setDelete_one_attached_document_For_Session_api] = useState();
|
||||
const [Delete_one_attached_document_For_Session_result, setDelete_one_attached_document_For_Session_result] = useState();
|
||||
const [Delete_one_attached_document_For_Session_message, setDelete_one_attached_document_For_Session_message] = useState();
|
||||
const Delete_one_attached_document_For_Session = (event) => {
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
var formData = new FormData();
|
||||
var nom_fiche_detaillee = "Fiche_Detaillee.pdf";
|
||||
var file_name = event.target.id;
|
||||
|
||||
|
||||
formData.append("token", stored_cookie);
|
||||
formData.append("file_name", file_name);
|
||||
|
||||
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/",
|
||||
{
|
||||
method: 'POST',
|
||||
body: formData,
|
||||
}
|
||||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
setLoading(false);
|
||||
//console.log(" ## result['status'] = ", result['status'])
|
||||
if (String(result['status']) === String("true")) {
|
||||
//console.log('Success:', result['message']);
|
||||
setDelete_one_attached_document_For_Session_result(result['message']);
|
||||
setDelete_one_attached_document_For_Session_api("true");
|
||||
|
||||
Get_List_Of_All_PJ_For_Session(selected_session_id);
|
||||
alert(result['message'])
|
||||
|
||||
}
|
||||
else {
|
||||
setDelete_one_attached_document_For_Session_message(result['message']);
|
||||
setDelete_one_attached_document_For_Session_api("false");
|
||||
}
|
||||
|
||||
})
|
||||
.catch((error) => {
|
||||
setLoading(false);
|
||||
console.error(' Record_All_PJ Error:', error);
|
||||
setDelete_one_attached_document_For_Session_api("false");
|
||||
alert(" Impossible de supprimer le document")
|
||||
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
const [Get_List_Of_All_PJ_api, setGet_List_Of_All_PJ_api] = useState();
|
||||
|
@ -7484,6 +7750,9 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
const [Get_Class_Data_api, setGet_Class_Data_api] = useState();
|
||||
const [Get_Class_Data_message, setGet_Class_Data_message] = useState();
|
||||
const [Get_Class_Data_result, setGet_Class_Data_result] = useState();
|
||||
|
@ -7553,6 +7822,62 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
// -- end gestion pièces jointes
|
||||
|
||||
|
||||
// -- Additif pour gestion pièce jointes de session
|
||||
|
||||
const [Get_List_Of_All_PJ_For_Session_api, setGet_List_Of_All_PJ_For_Session_api] = useState();
|
||||
const [Get_List_Of_All_PJ_For_Session_result, setGet_List_Of_All_PJ_For_Session_result] = useState();
|
||||
const [Get_List_Of_All_PJ_For_Session_message, setGet_List_Of_All_PJ_For_Session_message] = useState();
|
||||
function Get_List_Of_All_PJ_For_Session(local_session_id) {
|
||||
|
||||
const formData = new FormData();
|
||||
|
||||
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
||||
const stored_cookie = getCookie('tokenmysypart');
|
||||
|
||||
formData.append("token", stored_cookie);
|
||||
formData.append("object_owner_collection", "session_formation");
|
||||
formData.append("object_owner_id", local_session_id);
|
||||
|
||||
|
||||
//formData.append("class_internal_url", internal_url);
|
||||
//console.log("token = " + stored_cookie);
|
||||
|
||||
|
||||
fetch(
|
||||
process.env.REACT_APP_API_URL + "myclass/api/Get_List_object_owner_collection_Stored_Files/",
|
||||
{
|
||||
method: 'POST',
|
||||
body: formData,
|
||||
}
|
||||
)
|
||||
.then((response) => response.json())
|
||||
.then((result) => {
|
||||
|
||||
//console.log(" ## result['status'] = ", result['status'])
|
||||
if (String(result['status']) === String("true")) {
|
||||
//console.log('Message :', result['message']);
|
||||
setGet_List_Of_All_PJ_For_Session_result(result['message']);
|
||||
setGet_List_Of_All_PJ_For_Session_api("true");
|
||||
|
||||
}
|
||||
else {
|
||||
setGet_List_Of_All_PJ_For_Session_message(result['message']);
|
||||
setGet_List_Of_All_PJ_For_Session_api("false");
|
||||
}
|
||||
|
||||
})
|
||||
.catch((error) => {
|
||||
console.error(' Get_List_Of_All_PJ_For_Session Error:', error);
|
||||
setGet_List_Of_All_PJ_For_Session_api("false");
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
// -- fin additif
|
||||
|
||||
|
||||
// Action en mass
|
||||
|
||||
const [actionmass_ftion_val, setactionmass_ftion_val] = useState();
|
||||
|
@ -7952,6 +8277,8 @@ const DisplayPartnerSession = (props) => {
|
|||
handleClick_edit_session_From_Line(session_selected_row_id);
|
||||
|
||||
Getall_Sequence_Of_Session(selected_session_id);
|
||||
|
||||
Get_List_Of_All_PJ_For_Session(selected_session_id);
|
||||
}
|
||||
|
||||
const [p_detail_sequence_title, setp_detail_sequence_title] = useState();
|
||||
|
@ -9927,7 +10254,7 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
<DialogTitle>MySy Information</DialogTitle>
|
||||
<DialogContent className="DialogContent_width" style={{ "minHeight": "15rem" }}>
|
||||
|
||||
|
||||
|
||||
|
||||
<div className="session_caract_Dialog" > Choisir un modèle d'émargement
|
||||
|
@ -9981,7 +10308,7 @@ const DisplayPartnerSession = (props) => {
|
|||
<div className="div_row">
|
||||
<div className="div_row_gauche">
|
||||
|
||||
{selected_emargement_id && <Button className="bton_enreg_dialog" onClick={(e) => {
|
||||
{selected_emargement_id && <Button className="bton_enreg_dialog" onClick={(e) => {
|
||||
DownloadListEmargement();
|
||||
Dialog_EMARGEMENT_handleClose_buton();
|
||||
}}
|
||||
|
@ -11565,7 +11892,10 @@ const DisplayPartnerSession = (props) => {
|
|||
<Button variant="outlined" onClick={submenu_emargement} className="detail_class_submenu" id='emargement' name='emargement'>Emargement </Button>
|
||||
<Button variant="outlined" onClick={submenu_evaluation} className="detail_class_submenu" id='menu_eval' name='menu_eval'>Les avis</Button>
|
||||
<Button variant="outlined" onClick={submenu_attestation} className="detail_class_submenu" id='menu_eval' name='menu_eval'>Attestation</Button>
|
||||
<Button variant="outlined" onClick={submenu_piece_jointe} className="detail_class_submenu" id='piece_jointe' name='contrat'>Pièces Jointes </Button>
|
||||
<Button variant="outlined" onClick={submenu_historique} className="detail_class_submenu" id='historique' name='historique'>Historique </Button>
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
|
||||
|
@ -17088,6 +17418,154 @@ const DisplayPartnerSession = (props) => {
|
|||
|
||||
</div>}
|
||||
|
||||
{String(submenu) === String("piece_jointe") && <div style={{ "border": "None" }}>
|
||||
|
||||
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600" }}> Les pièces jointes </nav>
|
||||
|
||||
<div className="session_data">
|
||||
<br />
|
||||
<div className="div_row">
|
||||
<div className="div_row" style={{ "padding": "5px" }}>
|
||||
|
||||
<div style={{ "fontSize": "12px" }}>
|
||||
<label htmlFor="upload-photo">
|
||||
<input
|
||||
style={{ display: "none" }}
|
||||
id="upload-photo"
|
||||
name="upload-photo"
|
||||
type="file"
|
||||
onChange={sessions_file_change_1}
|
||||
/>
|
||||
|
||||
<Fab
|
||||
color="secondary"
|
||||
size="small"
|
||||
component="span"
|
||||
aria-label="add"
|
||||
variant="extended"
|
||||
>
|
||||
<IoMdAddCircle /> <nav style={{ "fontSize": "12px" }}> Ajouter un fichier </nav>
|
||||
</Fab>
|
||||
|
||||
</label>
|
||||
</div>
|
||||
{file_1_name && file_1_name.name &&
|
||||
<nav style={{ "fontSize": "12px" }}>
|
||||
<div className="session_caract">Nom du fichier <br />
|
||||
<TextField
|
||||
name="file_to_download_type_name"
|
||||
id="file_to_download_type_name"
|
||||
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
|
||||
disabled={false}
|
||||
className="disabled_style enable_style"
|
||||
value={p_detail_one_file_to_download_type_name}
|
||||
onChange={(e) => {
|
||||
setp_detail_one_file_to_download_type_name(e.target.value);
|
||||
|
||||
}}
|
||||
/>
|
||||
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
Fichier : {file_1_name.name} <br /> <font style={{ "cursor": "pointer" }}
|
||||
onClick={Delete_file_1_name}> Supprimer <IoIosRemoveCircleOutline /> </font>
|
||||
</nav>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "true" && <div className="okUpdateData"> Pièce jointe enregistrée </div>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "false" && <div className="koUpdateData"> {Record_All_PJ_message} </div>}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
{file_1_name && file_1_name.name && <div className="div_row">
|
||||
|
||||
<div className="div_row_gauche">
|
||||
<Button variant="contained" onClick={Record_All_PJ_For_Session}
|
||||
startIcon={<AiTwotoneSave />} className="bton_enreg">ENREGISTRER LA PIECE</Button>
|
||||
</div>
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
{Get_List_Of_All_PJ_For_Session_result && <div className="div_row" style={{ "padding": "5px" }}>
|
||||
<div className="div_row">
|
||||
Liste des pièces jointes <br />
|
||||
<div className="div_row">
|
||||
{Get_List_Of_All_PJ_For_Session_result && Get_List_Of_All_PJ_For_Session_result.map((val) => (
|
||||
<div className="div_row_list_pj" >
|
||||
<nav style={{ "color": "green", "cursor": "pointer" }} onClick={Download_one_attached_document} name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}> Télécharger <i> {(JSON.parse(val).file_business_object)}</i> </nav> <br />
|
||||
<Popup
|
||||
trigger={
|
||||
<nav style={{ "color": "red", "cursor": "pointer" }} > Supprimer</nav>
|
||||
|
||||
|
||||
}
|
||||
modal
|
||||
nested
|
||||
position="center center"
|
||||
>
|
||||
{close => (
|
||||
<div>
|
||||
<button className="gest_close" onClick={close}>
|
||||
×
|
||||
</button>
|
||||
<div className="gest_header"> MySy Information </div>
|
||||
<div className="gest_content">
|
||||
{' '}
|
||||
|
||||
En confirmant cette opération, la pièce jointe sera <i><font color="red"> définitivement supprimée</font></i>. <br />
|
||||
|
||||
|
||||
</div>
|
||||
<div className="gest_actions">
|
||||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
|
||||
Delete_one_attached_document_For_Session(event);
|
||||
close();
|
||||
}}
|
||||
name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}
|
||||
> Valider </button>
|
||||
|
||||
</div>
|
||||
<div style={{ "width": "45%", "float": "right" }}>
|
||||
<button
|
||||
className="gest_bton_popup"
|
||||
onClick={() => {
|
||||
//console.log('modal closed ');
|
||||
close();
|
||||
}}
|
||||
>
|
||||
Annuler
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</Popup>
|
||||
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>}
|
||||
</div>
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
|
|
@ -2234,25 +2234,53 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
setdisplay_detail_stagiaire("1");
|
||||
setaddOneParticipant();
|
||||
|
||||
/*if (!edit_session_form) {
|
||||
desableSessionFields();
|
||||
}
|
||||
|
||||
|
||||
if (document.getElementById("detail_session")) {
|
||||
document.getElementById("detail_session").style.backgroundColor = "#104277";
|
||||
document.getElementById("detail_session").style.color = "white";
|
||||
}
|
||||
|
||||
if (document.getElementById("inscrit")) {
|
||||
document.getElementById("inscrit").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("inscrit").style.color = "black";
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("piece_jointe").style.color = "black";
|
||||
}
|
||||
|
||||
if (document.getElementById("preinscrit")) {
|
||||
document.getElementById("preinscrit").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("preinscrit").style.color = "black";
|
||||
|
||||
/* if (document.getElementById("preinscrit")) {
|
||||
document.getElementById("preinscrit").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("preinscrit").style.color = "black";
|
||||
}
|
||||
*/
|
||||
|
||||
}
|
||||
|
||||
|
||||
async function submenu_piece_jointe() {
|
||||
setsubmenu("piece_jointe");
|
||||
|
||||
await sleep(5);
|
||||
|
||||
setdisplay_detail_stagiaire("");
|
||||
setaddOneParticipant();
|
||||
|
||||
|
||||
if (document.getElementById("piece_jointe")) {
|
||||
document.getElementById("piece_jointe").style.backgroundColor = "#104277";
|
||||
document.getElementById("piece_jointe").style.color = "white";
|
||||
}
|
||||
*/
|
||||
|
||||
if (document.getElementById("detail_session")) {
|
||||
document.getElementById("detail_session").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("detail_session").style.color = "black";
|
||||
}
|
||||
|
||||
|
||||
/* if (document.getElementById("preinscrit")) {
|
||||
document.getElementById("preinscrit").style.backgroundColor = "#d8edfc";
|
||||
document.getElementById("preinscrit").style.color = "black";
|
||||
}
|
||||
*/
|
||||
|
||||
}
|
||||
|
||||
|
@ -7204,6 +7232,10 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
{((selected_id && String(selected_id).length > 2) || (String(addOneParticipant) === "1")) && <div className="div_row">
|
||||
<Button variant="outlined" ref={myRef} onClick={submenu_detail_stagaire} className="detail_class_submenu" id='detail_session' name='detail_session'>Détail Participant</Button>
|
||||
|
||||
<Button variant="outlined" onClick={submenu_piece_jointe} className="detail_class_submenu" id='piece_jointe' name='piece_jointe'>Pièces Jointes </Button>
|
||||
|
||||
|
||||
{/* <Button variant="outlined" onClick={submenu_sessions} className="detail_class_submenu" id='preinscrit' name='preinscrit'>Détail Session </Button>
|
||||
<Button variant="outlined" onClick={submenu_absence} className="detail_class_submenu" id='absence' name='absence'>Absence </Button> */}
|
||||
{String(addOneParticipant) !== "1" && <Button variant="outlined" onClick={submenu_historique} className="detail_class_submenu" id='historique' name='historique'>Historique </Button>}
|
||||
|
@ -8986,151 +9018,7 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
</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
|
||||
|
||||
</div>
|
||||
|
||||
<div className="div_row" style={{ "padding": "5px" }}>
|
||||
|
||||
<div style={{ "fontSize": "12px" }}>
|
||||
<label htmlFor="upload-photo">
|
||||
<input
|
||||
style={{ display: "none" }}
|
||||
id="upload-photo"
|
||||
name="upload-photo"
|
||||
type="file"
|
||||
onChange={sessions_file_change_1}
|
||||
/>
|
||||
|
||||
<Fab
|
||||
color="secondary"
|
||||
size="small"
|
||||
component="span"
|
||||
aria-label="add"
|
||||
variant="extended"
|
||||
>
|
||||
<IoMdAddCircle /> <nav style={{ "fontSize": "12px" }}> Ajouter un fichier </nav>
|
||||
</Fab>
|
||||
|
||||
</label>
|
||||
</div>
|
||||
{file_1_name && file_1_name.name &&
|
||||
<nav style={{ "fontSize": "12px" }}>
|
||||
<div className="session_caract">Nom du fichier <br />
|
||||
<TextField
|
||||
name="file_to_download_type_name"
|
||||
id="file_to_download_type_name"
|
||||
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
|
||||
disabled={false}
|
||||
className="disabled_style enable_style"
|
||||
value={p_detail_one_file_to_download_type_name}
|
||||
onChange={(e) => {
|
||||
setp_detail_one_file_to_download_type_name(e.target.value);
|
||||
|
||||
}}
|
||||
/>
|
||||
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
Fichier : {file_1_name.name} <br /> <font style={{ "cursor": "pointer" }}
|
||||
onClick={Delete_file_1_name}> Supprimer <IoIosRemoveCircleOutline /> </font>
|
||||
</nav>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "true" && <div className="okUpdateData"> Pièce jointe enregistrée </div>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "false" && <div className="koUpdateData"> {Record_All_PJ_message} </div>}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
{file_1_name && file_1_name.name && <div className="div_row">
|
||||
|
||||
<div className="div_row_gauche">
|
||||
<Button variant="contained" onClick={Record_All_PJ}
|
||||
startIcon={<AiTwotoneSave />} className="bton_enreg">ENREGISTRER LA PIECE</Button>
|
||||
</div>
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
{Get_List_Of_All_PJ_result && <div className="div_row" style={{ "padding": "5px" }}>
|
||||
<div className="div_row">
|
||||
Liste des pièces jointes <br />
|
||||
<div className="div_row">
|
||||
{Get_List_Of_All_PJ_result && Get_List_Of_All_PJ_result.map((val) => (
|
||||
<div className="div_row_list_pj" >
|
||||
<nav style={{ "color": "green", "cursor": "pointer" }} onClick={Download_one_attached_document} name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}> Télécharger <i> {(JSON.parse(val).file_business_object)}</i> </nav> <br />
|
||||
<Popup
|
||||
trigger={
|
||||
<nav style={{ "color": "red", "cursor": "pointer" }} > Supprimer</nav>
|
||||
|
||||
|
||||
}
|
||||
modal
|
||||
nested
|
||||
position="center center"
|
||||
>
|
||||
{close => (
|
||||
<div>
|
||||
<button className="gest_close" onClick={close}>
|
||||
×
|
||||
</button>
|
||||
<div className="gest_header"> MySy Information </div>
|
||||
<div className="gest_content">
|
||||
{' '}
|
||||
|
||||
En confirmant cette opération, la pièce jointe sera <i><font color="red"> définitivement supprimée</font></i>. <br />
|
||||
|
||||
|
||||
</div>
|
||||
<div className="gest_actions">
|
||||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
|
||||
Delete_one_attached_document(event);
|
||||
close();
|
||||
}}
|
||||
name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}
|
||||
> Valider </button>
|
||||
|
||||
</div>
|
||||
<div style={{ "width": "45%", "float": "right" }}>
|
||||
<button
|
||||
className="gest_bton_popup"
|
||||
onClick={() => {
|
||||
//console.log('modal closed ');
|
||||
close();
|
||||
}}
|
||||
>
|
||||
Annuler
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</Popup>
|
||||
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>}
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{is_lms_class_code && <div>
|
||||
<div className="div_row" style={{ "border": "None" }}>
|
||||
|
@ -9388,6 +9276,154 @@ const DisplayPartnerStagiaires = (props) => {
|
|||
|
||||
|
||||
|
||||
{String(submenu) === "piece_jointe" && String(addOneParticipant) !== "1" && <div className="div_row" style={{ "border": "None", "background": '#F8F9F9', "padding": '5px' }}>
|
||||
|
||||
<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
|
||||
|
||||
</div>
|
||||
|
||||
<div className="div_row" style={{ "padding": "5px" }}>
|
||||
|
||||
<div style={{ "fontSize": "12px" }}>
|
||||
<label htmlFor="upload-photo">
|
||||
<input
|
||||
style={{ display: "none" }}
|
||||
id="upload-photo"
|
||||
name="upload-photo"
|
||||
type="file"
|
||||
onChange={sessions_file_change_1}
|
||||
/>
|
||||
|
||||
<Fab
|
||||
color="secondary"
|
||||
size="small"
|
||||
component="span"
|
||||
aria-label="add"
|
||||
variant="extended"
|
||||
>
|
||||
<IoMdAddCircle /> <nav style={{ "fontSize": "12px" }}> Ajouter un fichier </nav>
|
||||
</Fab>
|
||||
|
||||
</label>
|
||||
</div>
|
||||
{file_1_name && file_1_name.name &&
|
||||
<nav style={{ "fontSize": "12px" }}>
|
||||
<div className="session_caract">Nom du fichier <br />
|
||||
<TextField
|
||||
name="file_to_download_type_name"
|
||||
id="file_to_download_type_name"
|
||||
|
||||
InputLabelProps={{
|
||||
shrink: true,
|
||||
}}
|
||||
|
||||
disabled={false}
|
||||
className="disabled_style enable_style"
|
||||
value={p_detail_one_file_to_download_type_name}
|
||||
onChange={(e) => {
|
||||
setp_detail_one_file_to_download_type_name(e.target.value);
|
||||
|
||||
}}
|
||||
/>
|
||||
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
Fichier : {file_1_name.name} <br /> <font style={{ "cursor": "pointer" }}
|
||||
onClick={Delete_file_1_name}> Supprimer <IoIosRemoveCircleOutline /> </font>
|
||||
</nav>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "true" && <div className="okUpdateData"> Pièce jointe enregistrée </div>}
|
||||
|
||||
{Record_All_PJ_api && String(Record_All_PJ_api) === "false" && <div className="koUpdateData"> {Record_All_PJ_message} </div>}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
{file_1_name && file_1_name.name && <div className="div_row">
|
||||
|
||||
<div className="div_row_gauche">
|
||||
<Button variant="contained" onClick={Record_All_PJ}
|
||||
startIcon={<AiTwotoneSave />} className="bton_enreg">ENREGISTRER LA PIECE</Button>
|
||||
</div>
|
||||
|
||||
|
||||
</div>}
|
||||
|
||||
{Get_List_Of_All_PJ_result && <div className="div_row" style={{ "padding": "5px" }}>
|
||||
<div className="div_row">
|
||||
Liste des pièces jointes <br />
|
||||
<div className="div_row">
|
||||
{Get_List_Of_All_PJ_result && Get_List_Of_All_PJ_result.map((val) => (
|
||||
<div className="div_row_list_pj" >
|
||||
<nav style={{ "color": "green", "cursor": "pointer" }} onClick={Download_one_attached_document} name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}> Télécharger <i> {(JSON.parse(val).file_business_object)}</i> </nav> <br />
|
||||
<Popup
|
||||
trigger={
|
||||
<nav style={{ "color": "red", "cursor": "pointer" }} > Supprimer</nav>
|
||||
|
||||
|
||||
}
|
||||
modal
|
||||
nested
|
||||
position="center center"
|
||||
>
|
||||
{close => (
|
||||
<div>
|
||||
<button className="gest_close" onClick={close}>
|
||||
×
|
||||
</button>
|
||||
<div className="gest_header"> MySy Information </div>
|
||||
<div className="gest_content">
|
||||
{' '}
|
||||
|
||||
En confirmant cette opération, la pièce jointe sera <i><font color="red"> définitivement supprimée</font></i>. <br />
|
||||
|
||||
|
||||
</div>
|
||||
<div className="gest_actions">
|
||||
<div style={{ "width": "45%", "float": "left" }}>
|
||||
<button className="gest_bton_popup" onClick={(event) => {
|
||||
|
||||
Delete_one_attached_document(event);
|
||||
close();
|
||||
}}
|
||||
name={(JSON.parse(val).file_name)} id={(JSON.parse(val).file_name)}
|
||||
> Valider </button>
|
||||
|
||||
</div>
|
||||
<div style={{ "width": "45%", "float": "right" }}>
|
||||
<button
|
||||
className="gest_bton_popup"
|
||||
onClick={() => {
|
||||
//console.log('modal closed ');
|
||||
close();
|
||||
}}
|
||||
>
|
||||
Annuler
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</Popup>
|
||||
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>}
|
||||
|
||||
|
||||
</div>
|
||||
</div>}
|
||||
|
||||
|
||||
{String(submenu) === "historique" && String(display_detail_historique) === "1" && String(addOneParticipant) !== "1" && <div className="div_row" style={{ "border": "None", "background": '#F8F9F9', "padding": '5px' }}>
|
||||
|
||||
|
|
|
@ -3308,15 +3308,15 @@ const Employes = (props) => {
|
|||
|
||||
const New_Option_Civilite = [
|
||||
{
|
||||
value: 'M',
|
||||
value: 'm',
|
||||
label: 'M',
|
||||
},
|
||||
{
|
||||
value: 'Mme',
|
||||
value: 'mme',
|
||||
label: 'Mme',
|
||||
},
|
||||
{
|
||||
value: 'Neutre',
|
||||
value: 'neutre',
|
||||
label: 'Neutre',
|
||||
},
|
||||
];
|
||||
|
@ -7749,8 +7749,6 @@ const Employes = (props) => {
|
|||
<Button variant="outlined" onClick={submenu_affectation} className="detail_class_submenu" id='affectation' name='affectation'>Affectation </Button>
|
||||
<Button variant="outlined" onClick={submenu_contrat} className="detail_class_submenu" id='affectation' name='contrat'>Contrat </Button>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
<nav style={{ "border": "None", "fontSize": "22px", "fontWeight": "600" }}> Ajouter un Employé </nav>
|
||||
|
||||
|
@ -9359,10 +9357,14 @@ const Employes = (props) => {
|
|||
setDialog_1_open_competence(true);
|
||||
}}
|
||||
className="detail_activite" style={{ "background": "#DDF9D4" }}>
|
||||
<nav className="detail_header" recid={competence.niveau}> {competence.competence} : {competence.note} </nav>
|
||||
{competence.competence && String(competence.competence).length > 99 && <nav className="detail_header" style={{ "fontWeight": "600", "fontSize": '12px' }} recid={competence.niveau}>
|
||||
{String(competence.competence).substring(0, 98)} ... </nav>}
|
||||
|
||||
{competence.competence && String(competence.competence).length <= 99 && <nav className="detail_header" style={{ "fontWeight": "600", "fontSize": '12px' }} recid={competence.niveau}>
|
||||
{competence.competence} </nav>}
|
||||
|
||||
<nav recid={competence.niveau} >
|
||||
<br />
|
||||
{competence.niveau}<br />
|
||||
|
||||
|
||||
{parseFloat(String(competence.note)) && <Rating
|
||||
name="dialog_opport_prio"
|
||||
|
@ -9372,6 +9374,8 @@ const Employes = (props) => {
|
|||
precision={0.5}
|
||||
value={String(competence.note)}
|
||||
/>}
|
||||
<br />
|
||||
<i>({competence.niveau}) </i><br />
|
||||
|
||||
</nav>
|
||||
</nav>
|
||||
|
@ -9387,6 +9391,7 @@ const Employes = (props) => {
|
|||
<div className="div_row_gauche div_row_gauche_etendu" style={{ "textAlign": "left", "paddingLeft": "5px" }}>
|
||||
|
||||
<Button variant="outlined" onClick={(event) => {
|
||||
Get_List_Competence_Type();
|
||||
setDialog_1_open_competence(true);
|
||||
}}
|
||||
className="detail_class_submenu bton_add_session"
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -371,6 +371,15 @@
|
|||
font-size: small;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
|
||||
.div_row_list_pj {
|
||||
width: 100%;
|
||||
border-left: 3mm ridge rgba(211, 220, 50, .6);
|
||||
float: left;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 601px) and (max-width: 991px) {
|
||||
|
@ -789,6 +798,12 @@
|
|||
|
||||
}
|
||||
|
||||
.div_row_list_pj {
|
||||
width: 50%;
|
||||
border-left: 3mm ridge rgba(211, 220, 50, .6);
|
||||
float: left;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 992px) and (max-width: 1199px) {
|
||||
|
@ -1207,6 +1222,12 @@
|
|||
|
||||
}
|
||||
|
||||
.div_row_list_pj {
|
||||
width: 30%;
|
||||
border-left: 3mm ridge rgba(211, 220, 50, .6);
|
||||
float: left;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 1200px) {
|
||||
|
@ -1641,6 +1662,12 @@
|
|||
padding: 0px !important;
|
||||
}
|
||||
|
||||
.div_row_list_pj {
|
||||
width: 30%;
|
||||
border-left: 3mm ridge rgba(211, 220, 50, .6);
|
||||
float: left;
|
||||
}
|
||||
|
||||
// - end media
|
||||
}
|
||||
|
||||
|
|
|
@ -1262,7 +1262,7 @@
|
|||
margin-top: 11rem;
|
||||
|
||||
}
|
||||
|
||||
|
||||
.div_row_list_pj {
|
||||
width: 50%;
|
||||
border-left: 3mm ridge rgba(211, 220, 50, .6);
|
||||
|
|
|
@ -2062,10 +2062,13 @@
|
|||
margin-bottom: 1rem !important;
|
||||
list-style-type: none !important;
|
||||
border: none !important;
|
||||
font-size: 13px;
|
||||
font-size: 12px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
.rs-dropdown-menu {
|
||||
width: 100% !important;
|
||||
box-shadow: none !important;
|
||||
|
|
|
@ -107,7 +107,7 @@
|
|||
border: 1px solid #9cf;
|
||||
color: #3b3e40;
|
||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||
font-size: small;
|
||||
font-size: x-small;
|
||||
letter-spacing: 0.1rem;
|
||||
font-weight: normal;
|
||||
width: 100%;
|
||||
|
@ -658,12 +658,12 @@
|
|||
margin-right: 1rem;
|
||||
padding: 0.3rem;
|
||||
margin-bottom: 0.5rem;
|
||||
width: 11rem;
|
||||
min-width: 15rem;
|
||||
text-align: center;
|
||||
border: 1px solid #9cf;
|
||||
color: #3b3e40;
|
||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||
font-size: small;
|
||||
font-size: x-small;
|
||||
letter-spacing: 0.1rem;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
@ -1255,12 +1255,12 @@
|
|||
margin-right: 1rem;
|
||||
padding: 0.3rem;
|
||||
margin-bottom: 0.5rem;
|
||||
width: 11rem;
|
||||
min-width: 15rem;
|
||||
text-align: center;
|
||||
border: 1px solid #9cf;
|
||||
color: #3b3e40;
|
||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||
font-size: small;
|
||||
font-size: x-small;
|
||||
letter-spacing: 0.1rem;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
@ -1732,12 +1732,12 @@
|
|||
margin-right: 1rem;
|
||||
padding: 0.3rem;
|
||||
margin-bottom: 0.5rem;
|
||||
min-width: 12rem;
|
||||
min-width: 15rem;
|
||||
text-align: center;
|
||||
border: 1px solid #9cf;
|
||||
color: #3b3e40;
|
||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||
font-size: small;
|
||||
font-size: x-small;
|
||||
letter-spacing: 0.1rem;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue