21/06/26 - 22h

branche_01062025
Cherif 2026-06-21 22:25:30 +02:00
parent 22eaf4528f
commit ef85cfbc7f
19 changed files with 6431 additions and 1089 deletions

View File

@ -10002,26 +10002,6 @@ button {
padding: 24px;
}
.section-title,
.card-header-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 14px;
margin-bottom: 18px;
}
.section-title {
justify-content: flex-start;
}
.section-title h4,
.card-header-row h4,
.balance-card h4 {
margin: 0;
font-size: 18px;
letter-spacing: -0.02em;
}
.section-icon {
width: 38px;

View File

@ -1794,19 +1794,19 @@ const CRM_Opportunite = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1842,19 +1842,19 @@ const CRM_Opportunite = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1953,19 +1953,19 @@ const CRM_Opportunite = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1997,19 +1997,19 @@ const CRM_Opportunite = (props) => {
setopport_changed("1");
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2105,19 +2105,19 @@ const CRM_Opportunite = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2212,19 +2212,20 @@ const CRM_Opportunite = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2310,19 +2311,19 @@ const CRM_Opportunite = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2409,19 +2410,19 @@ const CRM_Opportunite = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2527,12 +2528,12 @@ const CRM_Opportunite = (props) => {
// Gestion des cellule a distance ou presentiel
'& .cell--distantiel': {
backgroundColor: '#AFE1AF',
color: "#0a2a4d",
color: "#0a2a4d",
},
'& .cell--presentiel': {
backgroundColor: '#AFE1AF',
color: "#0a2a4d",
color: "#0a2a4d",
},
@ -2544,11 +2545,11 @@ const CRM_Opportunite = (props) => {
'& .line--statut--inscrit': {
backgroundColor: '#CEF6D8',
color: "#0a2a4d",
color: "#0a2a4d",
},
'& .line--statut--preinscrit': {
backgroundColor: '#F7F2E0',
color: "#0a2a4d",
color: "#0a2a4d",
},
/*"& .MuiDataGrid-virtualScrollerRenderZone": {
@ -2558,21 +2559,21 @@ const CRM_Opportunite = (props) => {
},*/
"& .MuiDataGrid-columnHeaders": {
backgroundColor: "#dfe8f2",
color: "#0a2a4d",
fontSize: '14px',
fontFamily:'DM Sans',
color: "#0a2a4d",
fontSize: '14px',
fontFamily: 'DM Sans',
},
'& .line--statut--selected': {
backgroundColor: '#e9f7f1',
color: "#0a2a4d",
color: "#0a2a4d",
},
'& .line--statut--pair': {
backgroundColor: 'rgba(235, 235, 235, .7)',
color: "#0a2a4d",
color: "#0a2a4d",
},
'& .line--statut--impair': {
backgroundColor: '#FFFFFF',
color: "#0a2a4d",
color: "#0a2a4d",
},
}}

View File

@ -3338,12 +3338,12 @@ const DisplayPartnerPromotion = (props) => {
setSession_step_chanel(local_opport_chanel);
if (String(props.reduce) === "0") {
var tmp = 80 / new_data2.length;
var tmp = 70 / new_data2.length;
var tmp_val = tmp + "vw";
setkanban_colonne_width(tmp_val);
} else {
var tmp = 95 / new_data2.length;
var tmp = 85 / new_data2.length;
var tmp_val = tmp + "vw";
setkanban_colonne_width(tmp_val);
@ -3479,18 +3479,18 @@ const DisplayPartnerPromotion = (props) => {
setSession_step_chanel(local_opport_chanel);
if (String(props.reduce) === "0") {
var tmp = 80 / new_data2.length;
var tmp = 70 / new_data2.length;
var tmp_val = tmp + "vw";
setkanban_colonne_width(tmp_val);
} else {
var tmp = 95 / new_data2.length;
var tmp = 85 / new_data2.length;
var tmp_val = tmp + "vw";
setkanban_colonne_width(tmp_val);
}
console.log(" ### local_opport_chanel = ", local_opport_chanel);
// console.log(" ### local_opport_chanel = ", local_opport_chanel);
} else {
@ -14421,7 +14421,7 @@ const DisplayPartnerPromotion = (props) => {
}
// MySy Comment : design d'une tache (couleur, taille, etc)
const classes_session_step = {
const classes_session_step_ORIG = {
board: {
display: "flex",
margin: "0 auto",
@ -14459,6 +14459,162 @@ const DisplayPartnerPromotion = (props) => {
}
};
const classes_session_step = {
board: {
display: "flex",
margin: "0 auto",
width: "100%",
fontFamily: 'Arial, "Helvetica Neue", sans-serif'
},
column: {
// minWidth: 200,
//width: "16vw",
width: kanban_colonne_width,
textAlign: "center",
height: "80vh",
margin: "0 auto",
backgroundColor: "#FFFFFF",
border: 'solid 1px',
borderLeft: "1px solid #ecf1fc",
borderRight: "1px solid #ecf1fc",
borderRadius: "24px",
backgroundColor: "rgba(255, 255, 255, 0.68)",
border: "1px solid rgba(221, 229, 239, 0.8)",
boxShadow: "var(--shadow-lg)",
overflow: "hidden",
backdropFilter: "blur(10px)",
fontFamily: "'DM Sans', Arial, Helvetica, sans-serif",
marginLeft: "30px",
},
columnHead: {
textAlign: "center",
padding: 5,
fontSize: "14px",
backgroundColor: randomColor(),
border: "1px solid",
marginBottom: "5px",
},
item: {
padding: 5,
marginBottom: 10,
fontSize: "0.8em",
cursor: "pointer",
backgroundColor: "#f4f6f6",
border: "0px solid",
cursor: "move",
width: "94%",
marginLeft: "3%",
},
column_first_left: {
// minWidth: 200,
//width: "16vw",
width: kanban_colonne_width,
textAlign: "center",
height: "80vh",
margin: "0 auto",
backgroundColor: "#FFFFFF",
border: 'solid 1px',
borderTop: 'none',
borderRadius: "24px",
backgroundColor: "rgba(255, 255, 255, 0.68)",
border: "1px solid rgba(221, 229, 239, 0.8)",
boxShadow: "var(--shadow-lg)",
overflow: "hidden",
backdropFilter: "blur(10px)",
fontFamily: "'DM Sans', Arial, Helvetica, sans-serif",
marginLeft: "30px",
// borderRight: "1px solid #ecf1fc",
},
column_right_solid_border: {
// minWidth: 200,
//width: "16vw",
width: kanban_colonne_width,
textAlign: "center",
height: "80vh",
margin: "0 auto",
backgroundColor: "#FFFFFF",
borderRadius: "24px",
backgroundColor: "rgba(255, 255, 255, 0.68)",
border: "1px solid rgba(221, 229, 239, 0.8)",
boxShadow: "var(--shadow-lg)",
overflow: "hidden",
backdropFilter: "blur(10px)",
fontFamily: "'DM Sans', Arial, Helvetica, sans-serif",
marginLeft: "30px",
},
columnHead_Encours: {
textAlign: "center",
padding: 5,
border: "none",
marginBottom: "5px",
background: "linear-gradient(180deg, #eef4ff 0%, #f7faff 100%)",
fontSize: "17px",
color: "#0f2552",
fontWeight: 600,
padding: "18px 18px 16px",
},
columnHead_Fait: {
textAlign: "center",
padding: 5,
border: "none",
marginBottom: "5px",
background: "linear-gradient(180deg, #edfdf4 0%, #f8fffb 100%)",
fontSize: "17px",
color: "#0f2552",
fontWeight: 600,
padding: "18px 18px 16px",
},
columnHead_Annule: {
textAlign: "center",
padding: 5,
border: "none",
marginBottom: "5px",
background: "linear-gradient(180deg, #fff5e9 0%, #fffaf3 100%)",
fontSize: "17px",
color: "#0f2552",
fontWeight: 600,
padding: "18px 18px 16px",
},
columnHead_Archivé: {
textAlign: "center",
padding: 5,
border: "none",
marginBottom: "5px",
background: "linear-gradient(180deg, #f2f6fb 0%, #f9fbfd 100%)",
fontSize: "17px",
color: "#0f2552",
fontWeight: 600,
padding: "18px 18px 16px",
},
item: {
padding: 5,
marginBottom: 10,
fontSize: "0.8em",
cursor: "pointer",
backgroundColor: "#f4f6f6",
border: "0px solid",
cursor: "move",
width: "94%",
marginLeft: "3%",
}
};
const KanbanColumn = ({ status, changeTaskStatus, children }) => {
const ref = useRef(null);
@ -21780,7 +21936,7 @@ const DisplayPartnerPromotion = (props) => {
<div className="div_row" style={{ width: "100%", float: "left", padding: "5px" }}>
<DndProvider backend={HTML5Backend}>
<section style={classes_session_step.board}>
{Session_step_chanel.map(channel => (
{Session_step_chanel.map((channel, index) => (
<KanbanColumn
@ -21788,66 +21944,131 @@ const DisplayPartnerPromotion = (props) => {
status={channel.label}
changeTaskStatus={changeTaskStatus}
>
<div style={classes_session_step.column}>
<div className="kanban_header_css" style={{ background: `${channel.session_step_color}` }} > {channel.label}
&nbsp; ({tasks.filter(item => item.session_etape === channel.label).length})
{String(index) === "0" && <div style={classes.column_first_left}>
<div style={classes_session_step.column}>
<div className="kanban_header_css" style={{ background: `${channel.session_step_color}` }} > {channel.label}
&nbsp; ({tasks.filter(item => item.session_etape === channel.label).length})
</div>
<div style={{ overflowY: 'auto', height: '95%' }}>
{tasks
.filter(item => item.session_etape === channel.label)
.map(item => (
<KanbanItem key={item._id} id={item._id} >
<div className="kanban_item_css" style={{
borderLeftColor: `${channel.session_step_color}`,
}} id={item._id}
onDoubleClick={(event) => {
setgridline_id(item.id);
setsequence_gridline_id("");
setaddOneSession("0");
setEdite_session("0");
setsessionChanged(false);
//handleClick_edit_session_From_Line(newSelectionModel.row.id);
setselected_session_id(item._id);
setsession_selected_row_id(item.id);
setsession_selected_class_id(item.class_id);
setselected_session_invoiced_statut(item.invoiced_statut);
//console.log(" ### newSelectionModel.row.invoiced_statut = ", newSelectionModel.row.invoiced_statut);
setDialog_2_message(String(JSON.parse(rowss[item.id]).title));
setDialog_2_open(true);
}}
>
{String(item.code_session).length > 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 26)}... </nav>}
{String(item.code_session).length <= 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 30)} </nav>}
{String(item.date_debut) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Début </font>: {String(item.date_debut).substring(0, 30)}</nav>}
{String(item.date_fin) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Fin </font>:{String(item.date_fin).substring(0, 30)}</nav>}
{String(item.nb_participant) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Place </font>: {String(item.nb_participant).substring(0, 30)}</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) < 0.3 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ffb343", minWidth: '20%', maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} % </nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) >= 0.3 && parseFloat(item.taux_remplissage) <= 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ececa3", maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} %</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) > 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#a5c90f", maxWidth: '95%' }} >
{String(Math.round((item.taux_remplissage) * 100)).substring(0, 3)} %
</nav>}
</div>
</KanbanItem>
))}
</div>
</div>
<div style={{ overflowY: 'auto', height: '95%' }}>
{tasks
.filter(item => item.session_etape === channel.label)
.map(item => (
<KanbanItem key={item._id} id={item._id} >
</div>}
<div className="kanban_item_css" style={{
borderLeftColor: `${channel.session_step_color}`,
{String(index) !== "0" && <div style={classes.column_right_solid_border}>
<div style={classes_session_step.column}>
<div className="kanban_header_css" style={{ background: `${channel.session_step_color}` }} > {channel.label}
&nbsp; ({tasks.filter(item => item.session_etape === channel.label).length})
</div>
<div style={{ overflowY: 'auto', height: '95%' }}>
{tasks
.filter(item => item.session_etape === channel.label)
.map(item => (
<KanbanItem key={item._id} id={item._id} >
}} id={item._id}
onDoubleClick={(event) => {
setgridline_id(item.id);
<div className="kanban_item_css" style={{
borderLeftColor: `${channel.session_step_color}`,
setsequence_gridline_id("");
}} id={item._id}
onDoubleClick={(event) => {
setgridline_id(item.id);
setaddOneSession("0");
setEdite_session("0");
setsessionChanged(false);
//handleClick_edit_session_From_Line(newSelectionModel.row.id);
setsequence_gridline_id("");
setselected_session_id(item._id);
setaddOneSession("0");
setEdite_session("0");
setsessionChanged(false);
//handleClick_edit_session_From_Line(newSelectionModel.row.id);
setsession_selected_row_id(item.id);
setsession_selected_class_id(item.class_id);
setselected_session_id(item._id);
setselected_session_invoiced_statut(item.invoiced_statut);
setsession_selected_row_id(item.id);
setsession_selected_class_id(item.class_id);
//console.log(" ### newSelectionModel.row.invoiced_statut = ", newSelectionModel.row.invoiced_statut);
setselected_session_invoiced_statut(item.invoiced_statut);
setDialog_2_message(String(JSON.parse(rowss[item.id]).title));
setDialog_2_open(true);
}}
>
//console.log(" ### newSelectionModel.row.invoiced_statut = ", newSelectionModel.row.invoiced_statut);
{String(item.code_session).length > 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 26)}... </nav>}
{String(item.code_session).length <= 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 30)} </nav>}
setDialog_2_message(String(JSON.parse(rowss[item.id]).title));
setDialog_2_open(true);
}}
>
{String(item.date_debut) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Début </font>: {String(item.date_debut).substring(0, 30)}</nav>}
{String(item.date_fin) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Fin </font>:{String(item.date_fin).substring(0, 30)}</nav>}
{String(item.nb_participant) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Place </font>: {String(item.nb_participant).substring(0, 30)}</nav>}
{String(item.code_session).length > 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 26)}... </nav>}
{String(item.code_session).length <= 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 30)} </nav>}
{String(item.date_debut) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Début </font>: {String(item.date_debut).substring(0, 30)}</nav>}
{String(item.date_fin) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Fin </font>:{String(item.date_fin).substring(0, 30)}</nav>}
{String(item.nb_participant) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Place </font>: {String(item.nb_participant).substring(0, 30)}</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) < 0.3 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ffb343", minWidth: '20%', maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} % </nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) >= 0.3 && parseFloat(item.taux_remplissage) <= 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ececa3", maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} %</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) > 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#a5c90f", maxWidth: '95%' }} >
{String(Math.round((item.taux_remplissage) * 100)).substring(0, 3)} %
</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) < 0.3 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ffb343", minWidth: '20%', maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} % </nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) >= 0.3 && parseFloat(item.taux_remplissage) <= 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ececa3", maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} %</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) > 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#a5c90f", maxWidth: '95%' }} >
{String(Math.round((item.taux_remplissage) * 100)).substring(0, 3)} %
</nav>}
</div>
</div>
</KanbanItem>
))}
</KanbanItem>
))}
</div>
</div>
</div>
</div>}
</KanbanColumn>
))}
</section>
@ -30296,4 +30517,132 @@ width: 100%;
.texte_area_filter_value{
text-align: left !important;
}
.kanban_item_css{
position: relative;
background: rgba(255, 255, 255, 0.96);
border: 1px solid #edf2f8;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
padding: 16px;
overflow: hidden;
cursor: move !important;
overflow: hidden;
cursor: move !important;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
}
.kanban_item_css-0{
padding: 5px;
margin-bottom: 10px;
font-size: 0.8em;
cursor: move;
background: #f4f6f6;
border: 0px solid;
border-left-width: 0px;
width: 94%;
margin-left: 3%;
min-height: 5rem;
border-left-width: 10px;
border-left-color : #f3f7ff;
overflow: hidden;
cursor: move !important;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
}
.kanban_item_css-1{
padding: 5px;
margin-bottom: 10px;
font-size: 0.8em;
cursor: move;
background: #f4f6f6;
border: 0px solid;
border-left-width: 0px;
width: 94%;
margin-left: 3%;
min-height: 5rem;
border-left-width: 10px;
border-left-color : #4d6a58;
overflow: hidden;
cursor: move !important;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
}
.kanban_item_css--1{
padding: 5px;
margin-bottom: 10px;
font-size: 0.8em;
cursor: move;
background: #f4f6f6;
border: 0px solid;
border-left-width: 0px;
width: 94%;
margin-left: 3%;
min-height: 5rem;
border-left-width: 10px;
border-left-color : #F5C527;
overflow: hidden;
cursor: move !important;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
}
.kanban_item_css-2{
padding: 5px;
margin-bottom: 10px;
font-size: 0.8em;
cursor: move;
background: #f4f6f6;
border: 0px solid;
border-left-width: 0px;
width: 94%;
margin-left: 3%;
min-height: 5rem;
border-left-width: 10px;
border-left-color : #bfd7f5;
overflow: hidden;
cursor: move !important;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
}
.btn {
height: 42px;
border-radius: 12px;
padding: 0 18px;
border: 1px solid var(--border);
display: inline-flex;
align-items: center;
gap: 9px;
font-weight: 700;
cursor: pointer;
background: #fff;
color: var(--text);
transition: 0.18s ease;
}
.btn:hover {
transform: translateY(-1px);
box-shadow: 0 10px 24px rgba(16, 66, 119, 0.1);
}
.btn-primary {
background: #0b55c4;
color: #fff;
border-color: #0b55c4;
}
.btn-light {
background: rgba(255, 255, 255, 0.86);
}
.kanban_header_css{
margin-bottom: 10px;
border: none;
}
`;

View File

@ -206,6 +206,7 @@ const DisplayPartnerSession = (props) => {
const classes = useStyles();
const history = useHistory();
const [submenu, setsubmenu] = useState("");
const [rowss, setRows] = useState([]);
@ -3439,18 +3440,18 @@ const DisplayPartnerSession = (props) => {
setSession_step_chanel(local_opport_chanel);
if (String(props.reduce) === "0") {
var tmp = 80 / new_data2.length;
var tmp = 70 / new_data2.length;
var tmp_val = tmp + "vw";
setkanban_colonne_width(tmp_val);
} else {
var tmp = 95 / new_data2.length;
var tmp = 85 / new_data2.length;
var tmp_val = tmp + "vw";
setkanban_colonne_width(tmp_val);
}
// console.log(" 222 local_opport_chanel = ", local_opport_chanel);
// console.log(" 222 local_opport_chanel = ", local_opport_chanel);
} else {
setNew_Getall_Parter_Session_Steps_result([]);
@ -3579,18 +3580,18 @@ const DisplayPartnerSession = (props) => {
setSession_step_chanel(local_opport_chanel);
if (String(props.reduce) === "0") {
var tmp = 80 / new_data2.length;
var tmp = 70 / new_data2.length;
var tmp_val = tmp + "vw";
setkanban_colonne_width(tmp_val);
} else {
var tmp = 95 / new_data2.length;
var tmp = 85 / new_data2.length;
var tmp_val = tmp + "vw";
setkanban_colonne_width(tmp_val);
}
console.log(" ### local_opport_chanel = ", local_opport_chanel);
// console.log(" ### local_opport_chanel = ", local_opport_chanel);
} else {
@ -15039,7 +15040,7 @@ const DisplayPartnerSession = (props) => {
}
// MySy Comment : design d'une tache (couleur, taille, etc)
const classes_session_step = {
const classes_session_step_ORIG = {
board: {
display: "flex",
margin: "0 auto",
@ -15077,6 +15078,161 @@ const DisplayPartnerSession = (props) => {
}
};
const classes_session_step = {
board: {
display: "flex",
margin: "0 auto",
width: "100%",
fontFamily: 'Arial, "Helvetica Neue", sans-serif'
},
column: {
// minWidth: 200,
//width: "16vw",
width: kanban_colonne_width,
textAlign: "center",
height: "80vh",
margin: "0 auto",
backgroundColor: "#FFFFFF",
border: 'solid 1px',
borderLeft: "1px solid #ecf1fc",
borderRight: "1px solid #ecf1fc",
borderRadius: "24px",
backgroundColor: "rgba(255, 255, 255, 0.68)",
border: "1px solid rgba(221, 229, 239, 0.8)",
boxShadow: "var(--shadow-lg)",
overflow: "hidden",
backdropFilter: "blur(10px)",
fontFamily: "'DM Sans', Arial, Helvetica, sans-serif",
marginLeft: "30px",
},
columnHead: {
textAlign: "center",
padding: 5,
fontSize: "14px",
backgroundColor: randomColor(),
border: "1px solid",
marginBottom: "5px",
},
item: {
padding: 5,
marginBottom: 10,
fontSize: "0.8em",
cursor: "pointer",
backgroundColor: "#f4f6f6",
border: "0px solid",
cursor: "move",
width: "94%",
marginLeft: "3%",
},
column_first_left: {
// minWidth: 200,
//width: "16vw",
width: kanban_colonne_width,
textAlign: "center",
height: "80vh",
margin: "0 auto",
backgroundColor: "#FFFFFF",
border: 'solid 1px',
borderTop: 'none',
borderRadius: "24px",
backgroundColor: "rgba(255, 255, 255, 0.68)",
border: "1px solid rgba(221, 229, 239, 0.8)",
boxShadow: "var(--shadow-lg)",
overflow: "hidden",
backdropFilter: "blur(10px)",
fontFamily: "'DM Sans', Arial, Helvetica, sans-serif",
marginLeft: "30px",
// borderRight: "1px solid #ecf1fc",
},
column_right_solid_border: {
// minWidth: 200,
//width: "16vw",
width: kanban_colonne_width,
textAlign: "center",
height: "80vh",
margin: "0 auto",
backgroundColor: "#FFFFFF",
borderRadius: "24px",
backgroundColor: "rgba(255, 255, 255, 0.68)",
border: "1px solid rgba(221, 229, 239, 0.8)",
boxShadow: "var(--shadow-lg)",
overflow: "hidden",
backdropFilter: "blur(10px)",
fontFamily: "'DM Sans', Arial, Helvetica, sans-serif",
marginLeft: "30px",
},
columnHead_Encours: {
textAlign: "center",
padding: 5,
border: "none",
marginBottom: "5px",
background: "linear-gradient(180deg, #eef4ff 0%, #f7faff 100%)",
fontSize: "17px",
color: "#0f2552",
fontWeight: 600,
padding: "18px 18px 16px",
},
columnHead_Fait: {
textAlign: "center",
padding: 5,
border: "none",
marginBottom: "5px",
background: "linear-gradient(180deg, #edfdf4 0%, #f8fffb 100%)",
fontSize: "17px",
color: "#0f2552",
fontWeight: 600,
padding: "18px 18px 16px",
},
columnHead_Annule: {
textAlign: "center",
padding: 5,
border: "none",
marginBottom: "5px",
background: "linear-gradient(180deg, #fff5e9 0%, #fffaf3 100%)",
fontSize: "17px",
color: "#0f2552",
fontWeight: 600,
padding: "18px 18px 16px",
},
columnHead_Archivé: {
textAlign: "center",
padding: 5,
border: "none",
marginBottom: "5px",
background: "linear-gradient(180deg, #f2f6fb 0%, #f9fbfd 100%)",
fontSize: "17px",
color: "#0f2552",
fontWeight: 600,
padding: "18px 18px 16px",
},
item: {
padding: 5,
marginBottom: 10,
fontSize: "0.8em",
cursor: "pointer",
backgroundColor: "#f4f6f6",
border: "0px solid",
cursor: "move",
width: "94%",
marginLeft: "3%",
}
};
const KanbanColumn = ({ status, changeTaskStatus, children }) => {
const ref = useRef(null);
@ -15106,7 +15262,7 @@ const DisplayPartnerSession = (props) => {
const opacity = isDragging ? 0 : 1;
drag(ref);
return (
<div ref={ref} style={{ opacity }}>
<div ref={ref} style={{ opacity, marginBottom: '20px' }}>
{children}
</div>
);
@ -22145,10 +22301,11 @@ const DisplayPartnerSession = (props) => {
}}
>
<div className="div_row" style={{ width: "100%", float: "left", padding: "5px" }}>
<DndProvider backend={HTML5Backend}>
<section style={classes_session_step.board}>
{Session_step_chanel.map(channel => (
{Session_step_chanel.map((channel, index) => (
<KanbanColumn
@ -22156,70 +22313,145 @@ const DisplayPartnerSession = (props) => {
status={channel.label}
changeTaskStatus={changeTaskStatus}
>
<div style={classes_session_step.column}>
<div className="kanban_header_css" style={{ background: `${channel.session_step_color}` }} > {channel.label}
&nbsp; ({tasks.filter(item => item.session_etape === channel.label).length})
{String(index) === "0" && <div style={classes.column_first_left}>
<div style={classes_session_step.column}>
<div className="kanban_header_css" style={{ background: `${channel.session_step_color}` }} > {channel.label}
&nbsp; ({tasks.filter(item => item.session_etape === channel.label).length})
</div>
<div style={{ overflowY: 'auto', height: '95%' }}>
{tasks
.filter(item => item.session_etape === channel.label)
.map(item => (
<KanbanItem key={item._id} id={item._id} >
<div className="kanban_item_css" style={{
borderLeftColor: `${channel.session_step_color}`,
}} id={item._id}
onDoubleClick={(event) => {
setgridline_id(item.id);
setsequence_gridline_id("");
setaddOneSession("0");
setEdite_session("0");
setsessionChanged(false);
//handleClick_edit_session_From_Line(newSelectionModel.row.id);
setselected_session_id(item._id);
setsession_selected_row_id(item.id);
setsession_selected_class_id(item.class_id);
setselected_session_invoiced_statut(item.invoiced_statut);
//console.log(" ### newSelectionModel.row.invoiced_statut = ", newSelectionModel.row.invoiced_statut);
setDialog_2_message(String(JSON.parse(rowss[item.id]).title));
setDialog_2_open(true);
}}
>
{String(item.is_session_alert) === "1" && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all', fontFamily: 'DM Sans', marginLeft: "40%" }} > <Tooltip className="tooltip_css" id="my_tooltip_alert_1_kanban" />
<a data-tooltip-id="my_tooltip_alert_1_kanban" data-tooltip-html={`${item.session_alert_message}`}>
<FcExpired />
</a>
</nav>}
{String(item.code_session).length > 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 26)}... </nav>}
{String(item.code_session).length <= 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 30)} </nav>}
{String(item.date_debut) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Début </font>: {String(item.date_debut).substring(0, 30)}</nav>}
{String(item.date_fin) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Fin </font>:{String(item.date_fin).substring(0, 30)}</nav>}
{String(item.nb_participant) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Place </font>: {String(item.nb_participant).substring(0, 30)}</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) < 0.3 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ffb343", minWidth: '20%', maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} % </nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) >= 0.3 && parseFloat(item.taux_remplissage) <= 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ececa3", maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} %</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) > 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#a5c90f", maxWidth: '95%' }} >
{String(Math.round((item.taux_remplissage) * 100)).substring(0, 3)} %
</nav>}
</div>
</KanbanItem>
))}
</div>
</div>
<div style={{ overflowY: 'auto', height: '95%' }}>
{tasks
.filter(item => item.session_etape === channel.label)
.map(item => (
<KanbanItem key={item._id} id={item._id} >
<div className="kanban_item_css" style={{
borderLeftColor: `${channel.session_step_color}`,
}} id={item._id}
onDoubleClick={(event) => {
setgridline_id(item.id);
setsequence_gridline_id("");
setaddOneSession("0");
setEdite_session("0");
setsessionChanged(false);
//handleClick_edit_session_From_Line(newSelectionModel.row.id);
setselected_session_id(item._id);
setsession_selected_row_id(item.id);
setsession_selected_class_id(item.class_id);
setselected_session_invoiced_statut(item.invoiced_statut);
//console.log(" ### newSelectionModel.row.invoiced_statut = ", newSelectionModel.row.invoiced_statut);
setDialog_2_message(String(JSON.parse(rowss[item.id]).title));
setDialog_2_open(true);
}}
>
{String(item.is_session_alert) === "1" && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all', fontFamily: 'DM Sans', marginLeft: "40%" }} > <Tooltip className="tooltip_css" id="my_tooltip_alert_1_kanban" />
<a data-tooltip-id="my_tooltip_alert_1_kanban" data-tooltip-html={`${item.session_alert_message}`}>
<FcExpired />
</a>
</nav>}
{String(item.code_session).length > 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 26)}... </nav>}
{String(item.code_session).length <= 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 30)} </nav>}
{String(item.date_debut) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Début </font>: {String(item.date_debut).substring(0, 30)}</nav>}
{String(item.date_fin) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Fin </font>:{String(item.date_fin).substring(0, 30)}</nav>}
{String(item.nb_participant) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Place </font>: {String(item.nb_participant).substring(0, 30)}</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) < 0.3 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ffb343", minWidth: '20%', maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} % </nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) >= 0.3 && parseFloat(item.taux_remplissage) <= 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ececa3", maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} %</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) > 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#a5c90f", maxWidth: '95%' }} >
{String(Math.round((item.taux_remplissage) * 100)).substring(0, 3)} %
</nav>}
</div>}
{String(index) !== "0" && <div style={classes.column_right_solid_border}>
<div style={classes_session_step.column}>
<div className="kanban_header_css" style={{ background: `${channel.session_step_color}` }} > {channel.label}
&nbsp; ({tasks.filter(item => item.session_etape === channel.label).length})
</div>
<div style={{ overflowY: 'auto', height: '95%' }}>
{tasks
.filter(item => item.session_etape === channel.label)
.map(item => (
<KanbanItem key={item._id} id={item._id} >
<div className="kanban_item_css" style={{
borderLeftColor: `${channel.session_step_color}`,
}} id={item._id}
onDoubleClick={(event) => {
setgridline_id(item.id);
setsequence_gridline_id("");
setaddOneSession("0");
setEdite_session("0");
setsessionChanged(false);
//handleClick_edit_session_From_Line(newSelectionModel.row.id);
setselected_session_id(item._id);
setsession_selected_row_id(item.id);
setsession_selected_class_id(item.class_id);
setselected_session_invoiced_statut(item.invoiced_statut);
//console.log(" ### newSelectionModel.row.invoiced_statut = ", newSelectionModel.row.invoiced_statut);
setDialog_2_message(String(JSON.parse(rowss[item.id]).title));
setDialog_2_open(true);
}}
>
{String(item.is_session_alert) === "1" && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all', fontFamily: 'DM Sans', marginLeft: "40%" }} > <Tooltip className="tooltip_css" id="my_tooltip_alert_1_kanban" />
<a data-tooltip-id="my_tooltip_alert_1_kanban" data-tooltip-html={`${item.session_alert_message}`}>
<FcExpired />
</a>
</nav>}
{String(item.code_session).length > 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 26)}... </nav>}
{String(item.code_session).length <= 30 && <nav style={{ 'fontWeight': '700', wordBreak: 'break-all' }} > {String(item.code_session).substring(0, 30)} </nav>}
{String(item.date_debut) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Début </font>: {String(item.date_debut).substring(0, 30)}</nav>}
{String(item.date_fin) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Fin </font>:{String(item.date_fin).substring(0, 30)}</nav>}
{String(item.nb_participant) && <nav style={{ 'fontWeight': '400', wordBreak: 'break-all' }} > <font style={{ fontWeight: '600px' }}> Place </font>: {String(item.nb_participant).substring(0, 30)}</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) < 0.3 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ffb343", minWidth: '20%', maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} % </nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) >= 0.3 && parseFloat(item.taux_remplissage) <= 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#ececa3", maxWidth: '95%' }} > {String(parseFloat(String(item.taux_remplissage)).toFixed(2) * 100).substring(0, 3)} %</nav>}
{item.taux_remplissage && parseFloat(item.taux_remplissage) > 0.6 && <nav style={{ width: `${item.taux_remplissage * 100}%`, 'fontWeight': '400', wordBreak: 'break-all', fontFamily: 'DM Sans', background: "#a5c90f", maxWidth: '95%' }} >
{String(Math.round((item.taux_remplissage) * 100)).substring(0, 3)} %
</nav>}
</div>
</div>
</KanbanItem>
))}
</KanbanItem>
))}
</div>
</div>
</div>
</div>}
</KanbanColumn>
))}
</section>
@ -23055,6 +23287,7 @@ const DisplayPartnerSession = (props) => {
</Box>}
{(!data_row_grouped_by || String(data_row_grouped_by) === "") && session_display_view && String(session_display_view) === "kanban" &&
<Box
sx={{
height: 800,
@ -23160,6 +23393,7 @@ const DisplayPartnerSession = (props) => {
}}
>
<div className="div_row" style={{ width: "100%", float: "left", padding: "5px" }}>
<DndProvider backend={HTML5Backend}>
@ -30066,7 +30300,7 @@ const DisplayPartnerSession = (props) => {
id="combo-box-demo"
className="block_en_mass_select"
fullWidth
sx={{
sx={{
backgroundColor: "#FFF",
}}
options={New_Option_Emargement_Masse}
@ -30569,7 +30803,7 @@ const DisplayPartnerSession = (props) => {
id="combo-box-demo"
className="block_en_mass_select"
fullWidth
sx={{
sx={{
backgroundColor: "#FFF",
}}
options={New_Option_Evaluation_Masse}
@ -30975,4 +31209,133 @@ width: 100%;
border: unset;
border-radius: 10px;
}
.kanban_item_css{
position: relative;
background: rgba(255, 255, 255, 0.96);
border: 1px solid #edf2f8;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
padding: 16px;
overflow: hidden;
cursor: move !important;
overflow: hidden;
cursor: move !important;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
}
.kanban_item_css-0{
padding: 5px;
margin-bottom: 10px;
font-size: 0.8em;
cursor: move;
background: #f4f6f6;
border: 0px solid;
border-left-width: 0px;
width: 94%;
margin-left: 3%;
min-height: 5rem;
border-left-width: 10px;
border-left-color : #f3f7ff;
overflow: hidden;
cursor: move !important;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
}
.kanban_item_css-1{
padding: 5px;
margin-bottom: 10px;
font-size: 0.8em;
cursor: move;
background: #f4f6f6;
border: 0px solid;
border-left-width: 0px;
width: 94%;
margin-left: 3%;
min-height: 5rem;
border-left-width: 10px;
border-left-color : #4d6a58;
overflow: hidden;
cursor: move !important;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
}
.kanban_item_css--1{
padding: 5px;
margin-bottom: 10px;
font-size: 0.8em;
cursor: move;
background: #f4f6f6;
border: 0px solid;
border-left-width: 0px;
width: 94%;
margin-left: 3%;
min-height: 5rem;
border-left-width: 10px;
border-left-color : #F5C527;
overflow: hidden;
cursor: move !important;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
}
.kanban_item_css-2{
padding: 5px;
margin-bottom: 10px;
font-size: 0.8em;
cursor: move;
background: #f4f6f6;
border: 0px solid;
border-left-width: 0px;
width: 94%;
margin-left: 3%;
min-height: 5rem;
border-left-width: 10px;
border-left-color : #bfd7f5;
overflow: hidden;
cursor: move !important;
border-radius: 18px;
box-shadow: 0 4px 14px rgba(17, 39, 76, 0.06);
}
.btn {
height: 42px;
border-radius: 12px;
padding: 0 18px;
border: 1px solid var(--border);
display: inline-flex;
align-items: center;
gap: 9px;
font-weight: 700;
cursor: pointer;
background: #fff;
color: var(--text);
transition: 0.18s ease;
}
.btn:hover {
transform: translateY(-1px);
box-shadow: 0 10px 24px rgba(16, 66, 119, 0.1);
}
.btn-primary {
background: #0b55c4;
color: #fff;
border-color: #0b55c4;
}
.btn-light {
background: rgba(255, 255, 255, 0.86);
}
.kanban_header_css{
margin-bottom: 10px;
border: none;
}
`;

View File

@ -8536,7 +8536,7 @@ const DisplayPartnerStagiaires = (props) => {
{ "id": "1", "label": "Supprimer", "value": "supprimer" },
{ "id": "2", "label": "Exporter", "value": "exporter" },
{ "id": "3", "label": "Desactiver Recyclage", "value": "recyclage_disable" },
{ "id": "4", "label": "Contacter par Email", "value": "sendemail" },
{ "id": "4", "label": "Envoyer par Email", "value": "sendemail" },
{ "id": "5", "label": "Partager Document", "value": "pushdocument" },
{ "id": "6", "label": "Archiver/Désarch.", "value": "archive_desarchive" },
]
@ -9592,6 +9592,75 @@ const DisplayPartnerStagiaires = (props) => {
}
const [Add_RH_Tuto_api, setAdd_RH_Tuto_api] = useState();
const [Add_RH_Tuto_message, setAdd_RH_Tuto_message] = useState();
const [Add_RH_Tuto_result, setAdd_RH_Tuto_result] = useState();
function Add_RH_Tuto(event) {
var form = new FormData();
const stored_cookie = getCookie('tokenmysypart');
form.append("token", stored_cookie);
var myurl = "";
myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_RH_List_Insc_Tutore/";
form.append("rh_id", p_one_detail_tuteur_id);
form.append("inscription_id", selected_id);
form.append("role", p_detail_tuteur_role);
form.append("include_com", p_detail_tuteur_communication);
form.append("comment", p_detail_tuteur_comment);
setLoading(true);
axios.post(myurl, form).then(res => {
setLoading(false);
if (String(res.data.status) === String("true")) {
//console.log(" In Add_RH_Tuto res.data.status = " + res.data.status);
//console.log(" In Add_RH_Tuto res.data.message r_class = " + res.data.message);
setAdd_RH_Tuto_api("true");
setAdd_RH_Tuto_result(res.data.message);
Getall_Tuteurs(selected_id);
// alert(res.data.message);
setdisplay_alert_mysy("1");
setalert_message(res.data.message);
setalert_type("success");
Dialog_tuteur_handleClose_buton();
}
else {
setAdd_RH_Tuto_api("false");
setAdd_RH_Tuto_message(res.data.message);
// alert(res.data.message);
setdisplay_alert_mysy("1");
setalert_message(res.data.message);
setalert_type("error");
}
}).catch((error) => {
setLoading(false);
console.warn('Not good man :( Add_RH_Tuto = ', error);
setAdd_RH_Tuto_api("false");
// alert(" Impossible de faire la mise à jour");
setdisplay_alert_mysy("1");
setalert_message(" Impossible de faire la mise à jour");
setalert_type("error");
//setmyApimyApiMessage("")
})
}
const [Update_RH_Tuto_api, setUpdate_RH_Tuto_api] = useState();
const [Update_RH_Tuto_message, setUpdate_RH_Tuto_message] = useState();
const [Update_RH_Tuto_result, setUpdate_RH_Tuto_result] = useState();
@ -9607,7 +9676,10 @@ const DisplayPartnerStagiaires = (props) => {
var myurl = "";
myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_RH_List_Insc_Tutore/";
form.append("rh_id", p_detail_tuteur_id);
form.append("inscription_id", selected_id);
form.append("role", p_detail_tuteur_role);
form.append("include_com", p_detail_tuteur_communication);
@ -10069,6 +10141,8 @@ const DisplayPartnerStagiaires = (props) => {
position: 'absolute',
top: "20rem",
margin: "2px",
maxWidth: 'unset',
width: '55rem'
},
}}
hideBackdrop={true}
@ -10082,7 +10156,7 @@ const DisplayPartnerStagiaires = (props) => {
>
<DialogTitle style={{ cursor: 'move', fontFamily: "DM Sans" }} id="draggable-dialog-title">Filtre </DialogTitle>
<DialogContent className="DialogContent_width">
<DialogContent>
<div className="div_row" style={{ "marginBottom": "5px" }}>
@ -10351,7 +10425,7 @@ const DisplayPartnerStagiaires = (props) => {
</div>
<div className="div_row_droite texte_area_filter_value" style={{ "marginTop": "0.5rem" }}>
{String(p_filtre2).length > 2 && String(p_filtre2) !== "archive" && String(p_filtre2) !== "invoiced" && String(p_filtre1) !== "session_id" &&
{String(p_filtre2).length > 2 && String(p_filtre2) !== "archive" && String(p_filtre2) !== "invoiced" && String(p_filtre2) !== "session_id" &&
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
@ -11051,7 +11125,7 @@ const DisplayPartnerStagiaires = (props) => {
Create_RH_And_Add_Tuto()
}}
>Créer ici</Button>}
>Créer </Button>}
{String(create_new_tuteur) !== "1" && String(add_one_tuteur) === "1" && <Button className="bton_enreg_dialog" onClick={(event, value) => {
@ -11067,7 +11141,7 @@ const DisplayPartnerStagiaires = (props) => {
setalert_type("error");
return;
}
// Create_RH_And_Add_Tuto()
Add_RH_Tuto()
}}>Ajouter</Button>}
</div>
<div className="div_row_droite" style={{ "textAlign": 'center' }}>
@ -13186,242 +13260,242 @@ const DisplayPartnerStagiaires = (props) => {
<div style={{ "border": "None", paddingRight: '10px' }}>
{(!display_stagiaire_with_alert || display_stagiaire_with_alert !== true) &&
<div style={{ height: 900, width: '100%', paddingRight: '5px' }}>
&nbsp;
<Box
sx={{
height: 750,
width: '100%',
paddingRight: '1px',
{(!display_stagiaire_with_alert || display_stagiaire_with_alert !== true) &&
<div style={{ height: 900, width: '100%', paddingRight: '5px' }}>
&nbsp;
<Box
sx={{
height: 750,
width: '100%',
paddingRight: '1px',
// Gestion des cellule a distance ou presentiel
'& .cell--distantiel': {
backgroundColor: '#AFE1AF',
color: "#0a2a4d",
},
// Gestion des cellule a distance ou presentiel
'& .cell--distantiel': {
backgroundColor: '#AFE1AF',
color: "#0a2a4d",
},
'& .cell--presentiel': {
backgroundColor: '#AFE1AF',
color: "#0a2a4d",
},
'& .cell--presentiel': {
backgroundColor: '#AFE1AF',
color: "#0a2a4d",
},
// gestion couleur des lignes avec le statut d'inscription
'& .line--statut--annule': {
backgroundColor: '#D8D8D8',
color: 'white',
},
// gestion couleur des lignes avec le statut d'inscription
'& .line--statut--annule': {
backgroundColor: '#D8D8D8',
color: 'white',
},
'& .line--statut--inscrit': {
backgroundColor: '#CEF6D8',
color: "#0a2a4d",
},
'& .line--statut--preinscrit': {
backgroundColor: '#F7F2E0',
color: "#0a2a4d",
},
'& .line--statut--inscrit': {
backgroundColor: '#CEF6D8',
color: "#0a2a4d",
},
'& .line--statut--preinscrit': {
backgroundColor: '#F7F2E0',
color: "#0a2a4d",
},
/*"& .MuiDataGrid-virtualScrollerRenderZone": {
"& .MuiDataGrid-row": {
"&:nth-child(2n)": { backgroundColor: "rgba(235, 235, 235, .7)" }
}
},*/
"& .MuiDataGrid-columnHeaders": {
backgroundColor: "#dfe8f2",
color: "#0a2a4d",
fontSize: '14px',
fontFamily: 'DM Sans',
},
/*"& .MuiDataGrid-virtualScrollerRenderZone": {
"& .MuiDataGrid-row": {
"&:nth-child(2n)": { backgroundColor: "rgba(235, 235, 235, .7)" }
}
},*/
"& .MuiDataGrid-columnHeaders": {
backgroundColor: "#dfe8f2",
color: "#0a2a4d",
fontSize: '14px',
fontFamily: 'DM Sans',
},
'& .line--statut--pair': {
backgroundColor: 'rgba(235, 235, 235, .7)',
color: '#0a2a4d',
},
'& .line--statut--impair': {
backgroundColor: '#FFFFFF',
color: '#0a2a4d',
},
'& .line--statut--selected': {
backgroundColor: '#e9f7f1',
color: '#0a2a4d',
},
}}
>
<DataGrid
loading={loading_datagrid}
checkboxSelection
components={{
Toolbar: CustomToolbar
}}
componentsProps={{ toolbar: { data_colums: columns } }}
onSelectionModelChange={(newSelectionModel) => {
setSelectionModel(newSelectionModel);
/*if (newSelectionModel.length === 1)
handleClick_edit_session_From_Line(newSelectionModel);*/
if (newSelectionModel.length !== 1) {
setaddOneParticipant();
setdisplay_detail_stagiaire();
setselected_code_session();
setsubmenu();
}
}}
selectionModel={selectionModel}
localeText={frFR.components.MuiDataGrid.defaultProps.localeText}
rows={rowss.map((item, index) => (
{
id: index,
_id: JSON.parse(item)._id,
class_id: JSON.parse(item).class_id,
class_internal_url: JSON.parse(item).class_internal_url,
code_session: JSON.parse(item).code_session,
session_id: JSON.parse(item).session_id,
email: JSON.parse(item).email,
nom: JSON.parse(item).nom,
prenom: JSON.parse(item).prenom,
employeur: JSON.parse(item).employeur,
client_nom: JSON.parse(item).client_rattachement_nom,
client_facture: JSON.parse(item).facture_client_rattachement_id,
status: JSON.parse(item).status,
title: JSON.parse(item).title,
distantiel: JSON.parse(item).distantiel,
presentiel: JSON.parse(item).presentiel,
date_debut: JSON.parse(item).date_du,
date_fin: JSON.parse(item).date_au,
class_internal_url: JSON.parse(item).class_internal_url,
civilite: JSON.parse(item).civilite,
telephone: JSON.parse(item).telephone,
date_naissance: JSON.parse(item).date_naissance,
invoiced: JSON.parse(item).invoiced,
invoiced_ref: JSON.parse(item).invoiced_ref,
invoiced_date: JSON.parse(item).invoiced_date,
class_recyclage_delai: JSON.parse(item).class_recyclage_delai,
class_recyclage_periodicite: JSON.parse(item).class_recyclage_periodicite,
nb_jour_avant_recyclage: JSON.parse(item).nb_jour_avant_recyclage,
warning_recyclage: JSON.parse(item).warning_recyclage,
warning_recyclage_alert: JSON.parse(item).warning_recyclage,
archive: JSON.parse(item).archive,
is_ftion_initiale: JSON.parse(item).is_ftion_initiale,
}
))}
columns={columns}
pageSize={20}
className="datagridclass"
onRowDoubleClick={(newSelectionModel) => {
///setuserimgclassprofil("");
setselected_id(newSelectionModel.row._id);
Get_List_UE_From_Class_Id(newSelectionModel.row.class_id);
Getall_Class_List_Evalution(newSelectionModel.row.class_id);
setselected_internal_url(newSelectionModel.row.class_internal_url);
setselected_class_id(newSelectionModel.row.class_id);
setselected_session_id(newSelectionModel.row.session_id);
setselected_class_is_ftion_initiale(newSelectionModel.row.is_ftion_initiale);
setinscription_invoiced(newSelectionModel.row.invoiced);
setselected_row_data_json_age('');
setgridline_id(newSelectionModel.row.id);
setselected_id_status(newSelectionModel.row.status);
//getStagiaireImages(newSelectionModel.row.class_internal_url, newSelectionModel.row.session_id, newSelectionModel.row.email);
var al = JSON.parse(rowss[newSelectionModel.row.id])
if (al.date_naissance) {
var date_eval = new Date(moment(al.date_naissance, "DD/MM/YYYY"));
var diff = Date.now() - date_eval.getTime();
var age = new Date(diff);
var reel_age = Math.abs(age.getUTCFullYear() - 1970);
setselected_row_data_json_age(reel_age);
setp_detail_age(reel_age);
}
Get_Inscrit_List_UE(newSelectionModel.row._id);
Get_Inscrit_List_Evaluation_Par_UE(newSelectionModel.row._id);
setselected_row_data_json(JSON.parse(rowss[newSelectionModel.row.id]));
setDialog_stagiaire_open(true);
'& .line--statut--pair': {
backgroundColor: 'rgba(235, 235, 235, .7)',
color: '#0a2a4d',
},
'& .line--statut--impair': {
backgroundColor: '#FFFFFF',
color: '#0a2a4d',
},
'& .line--statut--selected': {
backgroundColor: '#e9f7f1',
color: '#0a2a4d',
},
}}
>
<DataGrid
loading={loading_datagrid}
checkboxSelection
components={{
Toolbar: CustomToolbar
}}
componentsProps={{ toolbar: { data_colums: columns } }}
rowsPerPageOptions={[20]}
disableSelectionOnClick
/* components={{
Toolbar: GridToolbar,
}}*/
//sx={datagridSx}
getCellClassName={(params) => {
//field === 'distantiel'
if (params.field === 'distantiel' && String(params.value) === "1") {
return 'cell--distantiel';
}
if (params.field === "presentiel" && String(params.value) == "1") {
return 'cell--presentiel';
}
onSelectionModelChange={(newSelectionModel) => {
setSelectionModel(newSelectionModel);
/*if (newSelectionModel.length === 1)
handleClick_edit_session_From_Line(newSelectionModel);*/
if (newSelectionModel.length !== 1) {
setaddOneParticipant();
setdisplay_detail_stagiaire();
setselected_code_session();
setsubmenu();
}
}}
selectionModel={selectionModel}
localeText={frFR.components.MuiDataGrid.defaultProps.localeText}
rows={rowss.map((item, index) => (
{
id: index,
_id: JSON.parse(item)._id,
class_id: JSON.parse(item).class_id,
class_internal_url: JSON.parse(item).class_internal_url,
code_session: JSON.parse(item).code_session,
session_id: JSON.parse(item).session_id,
email: JSON.parse(item).email,
nom: JSON.parse(item).nom,
prenom: JSON.parse(item).prenom,
employeur: JSON.parse(item).employeur,
client_nom: JSON.parse(item).client_rattachement_nom,
client_facture: JSON.parse(item).facture_client_rattachement_id,
status: JSON.parse(item).status,
title: JSON.parse(item).title,
distantiel: JSON.parse(item).distantiel,
presentiel: JSON.parse(item).presentiel,
date_debut: JSON.parse(item).date_du,
date_fin: JSON.parse(item).date_au,
class_internal_url: JSON.parse(item).class_internal_url,
civilite: JSON.parse(item).civilite,
telephone: JSON.parse(item).telephone,
date_naissance: JSON.parse(item).date_naissance,
invoiced: JSON.parse(item).invoiced,
invoiced_ref: JSON.parse(item).invoiced_ref,
invoiced_date: JSON.parse(item).invoiced_date,
class_recyclage_delai: JSON.parse(item).class_recyclage_delai,
class_recyclage_periodicite: JSON.parse(item).class_recyclage_periodicite,
nb_jour_avant_recyclage: JSON.parse(item).nb_jour_avant_recyclage,
warning_recyclage: JSON.parse(item).warning_recyclage,
warning_recyclage_alert: JSON.parse(item).warning_recyclage,
archive: JSON.parse(item).archive,
is_ftion_initiale: JSON.parse(item).is_ftion_initiale,
}
))}
columns={columns}
pageSize={20}
className="datagridclass"
onRowDoubleClick={(newSelectionModel) => {
///setuserimgclassprofil("");
setselected_id(newSelectionModel.row._id);
Get_List_UE_From_Class_Id(newSelectionModel.row.class_id);
Getall_Class_List_Evalution(newSelectionModel.row.class_id);
setselected_internal_url(newSelectionModel.row.class_internal_url);
setselected_class_id(newSelectionModel.row.class_id);
setselected_session_id(newSelectionModel.row.session_id);
setselected_class_is_ftion_initiale(newSelectionModel.row.is_ftion_initiale);
setinscription_invoiced(newSelectionModel.row.invoiced);
setselected_row_data_json_age('');
setgridline_id(newSelectionModel.row.id);
setselected_id_status(newSelectionModel.row.status);
//getStagiaireImages(newSelectionModel.row.class_internal_url, newSelectionModel.row.session_id, newSelectionModel.row.email);
var al = JSON.parse(rowss[newSelectionModel.row.id])
if (al.date_naissance) {
var date_eval = new Date(moment(al.date_naissance, "DD/MM/YYYY"));
var diff = Date.now() - date_eval.getTime();
var age = new Date(diff);
var reel_age = Math.abs(age.getUTCFullYear() - 1970);
setselected_row_data_json_age(reel_age);
setp_detail_age(reel_age);
}
Get_Inscrit_List_UE(newSelectionModel.row._id);
Get_Inscrit_List_Evaluation_Par_UE(newSelectionModel.row._id);
setselected_row_data_json(JSON.parse(rowss[newSelectionModel.row.id]));
setDialog_stagiaire_open(true);
}}
rowsPerPageOptions={[20]}
disableSelectionOnClick
/* components={{
Toolbar: GridToolbar,
}}*/
//sx={datagridSx}
getCellClassName={(params) => {
//field === 'distantiel'
if (params.field === 'distantiel' && String(params.value) === "1") {
return 'cell--distantiel';
}
if (params.field === "presentiel" && String(params.value) == "1") {
return 'cell--presentiel';
}
//field === "statut"
if (params.field === "status" && String(params.value) == "0") {
return 'cell--statut--preinscrit';
}
//field === "statut"
if (params.field === "status" && String(params.value) == "0") {
return 'cell--statut--preinscrit';
}
if (params.field === "status" && String(params.value) == "1") {
return 'cell--statut--inscrit';
}
if (params.field === "status" && String(params.value) == "1") {
return 'cell--statut--inscrit';
}
if (params.field === "status" && String(params.value) == "-1") {
return 'cell--statut--annule';
}
if (params.field === "status" && String(params.value) == "-1") {
return 'cell--statut--annule';
}
}}
getRowClassName={(params) => {
// Pour la gestion de la couleur de zone double cliquée
if (String(params.row.id) === String(gridline_id)) {
}}
getRowClassName={(params) => {
// Pour la gestion de la couleur de zone double cliquée
if (String(params.row.id) === String(gridline_id)) {
return 'line--statut--selected';
}
if (String(params.row.status) === "-1") {
return 'line--statut--annule';
}
if (String(params.row.status) === "0") {
return 'line--statut--preinscrit';
}
if (String(params.row.status) === "1") {
return 'line--statut--inscrit';
}
else if (parseInt(String(params.row.id)) % 2 === 0) {
return 'line--statut--pair';
}
else if (parseInt(String(params.row.id)) % 2 !== 0) {
return 'line--statut--impair';
}
return 'line--statut--selected';
}
if (String(params.row.status) === "-1") {
return 'line--statut--annule';
}
if (String(params.row.status) === "0") {
return 'line--statut--preinscrit';
}
if (String(params.row.status) === "1") {
return 'line--statut--inscrit';
}
else if (parseInt(String(params.row.id)) % 2 === 0) {
return 'line--statut--pair';
}
else if (parseInt(String(params.row.id)) % 2 !== 0) {
return 'line--statut--impair';
}
}}
getEstimatedRowHeight={() => 200}
getRowHeight={() => "auto"}
}}
getEstimatedRowHeight={() => 200}
getRowHeight={() => "auto"}
/>
</Box>
<br />
/>
</Box>
<br />
</div>}
</div>}
{(display_stagiaire_with_alert && display_stagiaire_with_alert === true) && <div style={{ height: 550, width: '100%', paddingRight: '5px' }}>
&nbsp;
@ -13652,153 +13726,205 @@ const DisplayPartnerStagiaires = (props) => {
<div className="div_row">
{String(props.check_user_acces_right("stagiaire", "write")) === "1" && selectionModel && selectionModel.length >= 1 && <div className="block_en_mass">
<nav >Traitement en masse </nav>
&nbsp;
<Autocomplete
disablePortal
id="combo-box-demo"
className="block_en_mass_select"
fullWidth
options={New_Option}
onChange={(event, value) => {
if (value && value.value) {
if (String(value.value) === "supprimer"
|| String(value.value) === "convention"
|| String(value.value) === "exporter"
|| String(value.value) === "valide_inscr"
|| String(value.value) === "recyclage_disable"
|| String(value.value) === "sendemail"
|| String(value.value) === "pushdocument"
|| String(value.value) === "archive_desarchive") {
setactionmass_ftion_val(value.value);
}
else {
setactionmass_ftion_val("");
{String(props.check_user_acces_right("stagiaire", "write")) === "1" && selectionModel && selectionModel.length >= 1 &&
<div className="block_en_mass">
<nav >Traitement en masse </nav>
&nbsp;
<Autocomplete
disablePortal
id="combo-box-demo"
className="block_en_mass_select"
fullWidth
options={New_Option}
onChange={(event, value) => {
if (value && value.value) {
if (String(value.value) === "supprimer"
|| String(value.value) === "convention"
|| String(value.value) === "exporter"
|| String(value.value) === "valide_inscr"
|| String(value.value) === "recyclage_disable"
|| String(value.value) === "archive_desarchive") {
setactionmass_ftion_val(value.value);
}
else if (String(value.value) === "sendemail") {
var liste_session = "";
var liste_emails = "";
if (display_stagiaire_with_alert && display_stagiaire_with_alert === true) {
liste_session = GetSelectedRowsSession_filtered_on_alert();
liste_emails = GetSelectedRows_Emails_filtered_on_alert();
}
else {
liste_session = GetSelectedRowsSession();
liste_emails = GetSelectedRows_Emails();
}
setliste_selected_inscription_id(liste_session);
setselectedtraining_emails(liste_session);
// console.log(" ### liste_emails = ", liste_emails);
setDialog_SEND_EMAIL_open(true);
}
else if (String(value.value) === "pushdocument") {
settab_selected_list_ue([]);
setNew_Get_List_UE_From_Session_Id_result([]);
setGet_List_UE_From_Session_Id_result([])
// actionmass_ftion_Traitemet();
var myid = parseInt(String(selectionModel[0]));
var first_line_selected = JSON.parse(rowss[myid]);
Get_List_UE_From_Session_Id(first_line_selected.session_id);
console.log(" #### selectedtraining_emails_liste = ", selectedtraining_emails_liste);
settab_email_pieces_jointes_result([]);
setDialog_PUSH_DOCUMENT_TO_ENT_open(true);
setent_push_doc_message_notif("");
}
else {
setactionmass_ftion_val("");
}
}
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
}
/>
}
/>
{String(props.check_user_acces_right("stagiaire", "write")) === "1" && selectionModel && selectionModel.length >= 1 && actionmass_ftion_val && String(actionmass_ftion_val).length > 2 &&
String(actionmass_ftion_val) !== "sendemail"
&& String(actionmass_ftion_val) !== "pushdocument" && <nav className='block_en_mass_bton_action'>
<Popup
trigger={<Button className="bton_enreg" style={{ "width": "90%" }}>
{String(props.check_user_acces_right("stagiaire", "write")) === "1" && selectionModel && selectionModel.length >= 1 && actionmass_ftion_val && String(actionmass_ftion_val).length > 2 &&
String(actionmass_ftion_val) !== "sendemail"
&& String(actionmass_ftion_val) !== "pushdocument" && <nav className='block_en_mass_bton_action'>
<Popup
trigger={<Button className="bton_enreg" style={{ "width": "90%" }}>
<FcAcceptDatabase /> Traiter
<FcAcceptDatabase /> Traiter
</Button>}
modal
nested
position="center center"
>
</Button>}
modal
nested
position="center center"
>
{close => (
<div>
<button className="gest_close" onClick={close}>
&times;
</button>
<div className="gest_header"> MySy Information </div>
<div className="gest_content">
{' '}
{close => (
<div>
<button className="gest_close" onClick={close}>
&times;
</button>
<div className="gest_header"> MySy Information </div>
<div className="gest_content">
{' '}
{String(actionmass_ftion_val) === "valide_inscr" &&
<font> Confirmer la <b> validation des inscriptions </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "valide_inscr" &&
<font> Confirmer la <b> validation des inscriptions </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "supprimer" &&
<font color="red"> Confirmer la <b> suppression </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "supprimer" &&
<font color="red"> Confirmer la <b> suppression </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "exporter" &&
<font> Confirmer l' <b> export </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "exporter" &&
<font> Confirmer l' <b> export </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "convention" &&
<font> Confirmer l' <b> édition des conventions </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "convention" &&
<font> Confirmer l' <b> édition des conventions </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "recyclage_disable" &&
<font> Confirmer la <b> désactivation du recyclage </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "recyclage_disable" &&
<font> Confirmer la <b> désactivation du recyclage </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "sendemail" &&
<font> Confirmer la <b> rédaction d'un email </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "sendemail" &&
<font> Confirmer la <b> rédaction d'un email </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "archive_desarchive" &&
<font> Confirmer la <b> l'archivage / désarchivage </b> en masse pour {selectionModel.length} lignes.
</font>}
{String(actionmass_ftion_val) === "archive_desarchive" &&
<font> Confirmer la <b> l'archivage / désarchivage </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_annuler"
onClick={() => {
//console.log('modal closed ');
<div className="gest_actions">
<div style={{ "width": "45%", "float": "left" }}>
<button className="gest_bton_popup" onClick={(event) => {
actionmass_ftion_Traitemet();
close();
}}
>
Annuler
</button>
}}> Valider </button>
</div>
<div style={{ "width": "45%", "float": "right" }}>
<button
className="gest_bton_popup_annuler"
onClick={() => {
//console.log('modal closed ');
close();
}}
>
Annuler
</button>
</div>
</div>
</div>
</div>
)}
</Popup>
</nav>
}
)}
</Popup>
</nav>
}
{actionmass_ftion_val && (String(actionmass_ftion_val) === "sendemail" || String(actionmass_ftion_val) === "pushdocument") && <nav className='block_en_mass_bton_action'>
{/*actionmass_ftion_val && String(actionmass_ftion_val) === "pushdocument" && <nav className='block_en_mass_bton_action'>
<Button className="bton_enreg" style={{ "width": "90%" }}
onClick={(event) => {
settab_selected_list_ue([]);
setNew_Get_List_UE_From_Session_Id_result([]);
setGet_List_UE_From_Session_Id_result([])
actionmass_ftion_Traitemet();
// actionmass_ftion_Traitemet();
var myid = parseInt(String(selectionModel[0]));
var first_line_selected = JSON.parse(rowss[myid]);
console.log(" first_line_selected == ", first_line_selected);
Get_List_UE_From_Session_Id(first_line_selected.session_id);
// console.log(" #### selectedtraining_emails_liste = ", selectedtraining_emails_liste);
settab_email_pieces_jointes_result([]);
setDialog_PUSH_DOCUMENT_TO_ENT_open(true);
setent_push_doc_message_notif("");
}}
>
<FcAcceptDatabase /> Traiter
</Button>
</nav>}
</nav>*/}
</div>}
</div>}
</div>

View File

@ -700,7 +700,7 @@ const DistplayPartnerTraningsPage = (props) => {
{ field: 'internal_url', headerName: 'internal_url', hide: true, editable: false, },
{ field: 'external_code', headerName: 'Code Formation', minWidth: 150, flex: 1, maxWidth: 250, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
{ field: 'title', headerName: 'Titre', minWidth: 250, flex: 1, editable: false, renderCell: (params) => <Display_Colunm_text {...params} />, },
{ field: 'referentiel_padagogique', headerName: 'Réferentiel Ped.', minWidth: 150, flex: 1, hideable: true, hide: false, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
{ field: 'referentiel_padagogique', headerName: 'Réferentiel Ped.', minWidth: 0, hideable: true, hide: true, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
{ field: 'domain', headerName: 'Domaine', minWidth: 100, flex: 1, maxWidth: 200, hideable: true, editable: false, renderCell: (params) => <ExpandableCell_50 {...params} />, },
@ -784,7 +784,7 @@ const DistplayPartnerTraningsPage = (props) => {
{
field: 'is_ftion_initiale', headerName: 'Ftion. Init.', hide: false, Width: 50, editable: false, renderCell: (cellValues) => {
field: 'is_ftion_initiale', headerName: 'Ftion. Init.', hide: true, Width: 0, editable: false, renderCell: (cellValues) => {
return (
<div style={{ paddingLeft: "5px", paddingRight: "10px", "display": "block", wordBreak: "break-all" }}>
{String(cellValues.row.is_ftion_initiale) === "1" && "Oui"}&nbsp;
@ -1633,7 +1633,7 @@ const DistplayPartnerTraningsPage = (props) => {
.then((response) => response.json())
.then((result) => {
//console.log('Success:', result['message'], "result['status'] = ", result['status']);
setactionmass_ftion_val("");
setactionmass_ftion_val("");
if (String(result['status']) === String("true")) {
//alert(" OK pour la formation :" + tab_class[i]);
}
@ -1670,7 +1670,7 @@ const DistplayPartnerTraningsPage = (props) => {
.then((response) => response.json())
.then((result) => {
//console.log('Success:', result['message'], "result['status'] = ", result['status']);
setactionmass_ftion_val("");
setactionmass_ftion_val("");
if (String(result['status']) === String("true")) {
//alert(" OK pour la formation :" + tab_class[i]);
}
@ -3111,19 +3111,19 @@ const DistplayPartnerTraningsPage = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -3182,19 +3182,19 @@ const DistplayPartnerTraningsPage = (props) => {
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>}
@ -3248,19 +3248,19 @@ const DistplayPartnerTraningsPage = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -3315,19 +3315,19 @@ const DistplayPartnerTraningsPage = (props) => {
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>}
@ -3382,19 +3382,19 @@ const DistplayPartnerTraningsPage = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -3450,19 +3450,19 @@ const DistplayPartnerTraningsPage = (props) => {
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>}

File diff suppressed because it is too large Load Diff

View File

@ -1500,7 +1500,7 @@ const Module_ENT_Absence = (props) => {
{String(display_view) === "planning" && <div style={{ "width": "98%", "marginLeft": "5px" }}>
&nbsp;
{Get_ENT_Apprenant_Total_Heure_Absence_result && <nav> Total heure Absence = {JSON.parse(Get_ENT_Apprenant_Total_Heure_Absence_result).total_heure_absence} </nav>}
<div className="bloc_planning" style={{ fontSize: '12px' }}>
<FullCalendar

View File

@ -453,7 +453,7 @@ const Module_Email_Management = (props) => {
}
}
//console.log(" ### form = ", form)
console.log(" ### form = ", form)
// return;
@ -700,7 +700,7 @@ const Module_Email_Management = (props) => {
<DialogTitle style={{ cursor: 'move', background: '#fff', fontFamily: 'DM Sans' }} id="draggable-dialog-title"> </DialogTitle>
<DialogContent style={{ "width": "400px" }}>
<DialogContentText>
{Dialog_1_message}
Gestion Email
</DialogContentText>
</DialogContent>
@ -736,52 +736,63 @@ const Module_Email_Management = (props) => {
<div>
<div className="titre1"> Gestion Email </div>
<div className="session_caract_Dialog" style={{ "marginBottom": '0px' }} > Choisir un modèle de courrier
{New_Get_Partner_List_SendEmail_Document_result && <Autocomplete
disablePortal
id="competence_nom"
name="competence_nom"
fullWidth
<div style={{ width: '100%', float: 'left' }}>
<div className="session_caract_Dialog" style={{ "marginBottom": '0px' }}>
options={New_Get_Partner_List_SendEmail_Document_result}
<div className="div_row_gauche_dialog_session" style={{ "textAlign": 'left', height: '2.5rem', paddingTop: '20px' }}>
Choisir un modèle de courrier
</div>
<div className="div_row_droite_dialog_session" style={{ "textAlign": 'right' }}>
onChange={(event, value) => {
{New_Get_Partner_List_SendEmail_Document_result && <Autocomplete
disablePortal
id="competence_nom"
name="competence_nom"
if (value && value._id) {
setselected_courrier_template_id(value._id);
var msg = "Vous allez modifier le coprs de l'email ! ";
setDialog_1_message(msg);
setDialog_1_open(true);
} else {
setselected_courrier_template_id("");
var msg = "Vous allez modifier le coprs de l'email ! ";
setDialog_1_message(msg);
setDialog_1_open(true);
}
fullWidth
}}
options={New_Get_Partner_List_SendEmail_Document_result}
onChange={(event, value) => {
if (value && value._id) {
setselected_courrier_template_id(value._id);
var msg = "Vous allez modifier le coprs de l'email ! ";
setDialog_1_message(msg);
setDialog_1_open(true);
} else {
setselected_courrier_template_id("");
var msg = "Vous allez modifier le coprs de l'email ! ";
setDialog_1_message(msg);
setDialog_1_open(true);
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
}
/>}
</div>
</div>
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
}
/>}
</div>
<div className="session_caract_Dialog" style={{ "marginBottom": '1px' }}>
@ -806,7 +817,8 @@ const Module_Email_Management = (props) => {
</div>
</div>
<div className="session_caract_Dialog" style={{ "marginBottom": '0px' }}>
<div className="session_caract_Dialog" style={{ "marginBottom": '0px', }}>
<div className="div_row_gauche_dialog_session" style={{ "textAlign": 'left', height: '2.5rem', paddingTop: '20px' }}>
CC
</div>
@ -828,27 +840,8 @@ const Module_Email_Management = (props) => {
</div>
</div>
<div className="session_caract_Dialog" style={{ "marginBottom": '1px' }}>
<div className="div_row_gauche_dialog_session" style={{ "textAlign": 'left', height: '2.5rem', paddingTop: '20px' }}>
BCC
</div>
<div className="div_row_droite_dialog_session" style={{ "textAlign": 'right' }}>
<TextField
margin="dense"
id="email_dest"
type="text"
fullWidth
value={email_bcc}
onChange={(e) => {
setemail_bcc(String(e.target.value).replaceAll(";", ","));
}
}
/>
</div>
</div>
<div className="session_caract_Dialog" style={{ "marginBottom": '1px' }}>
<div className="div_row_gauche_dialog_session" style={{ "textAlign": 'left', height: '2.5rem', paddingTop: '20px' }}>
@ -870,36 +863,51 @@ const Module_Email_Management = (props) => {
}
/>
</div>
{props.related_collection && ['inscription', 'apprenant', 'contact'].includes(props.related_collection) && <div className="session_caract_Dialog" style={{ "marginBottom": '1px' }}>
<FormGroup sx={{ position: 'flex', flexDirection: 'row', justifyContent: 'right', alignItems: 'right' }}>
<FormControlLabel
control={
<Checkbox
size="small"
checked={include_client}
onChange={handleChange_include_client}
name="include_client"
/>
}
label="Client en CC"
sx={{
color: "#104277",
fontWeight: 600,
fontFamily:'DM Sans',
fontSize:'10px'
}}
/>
<FormControlLabel
control={
<Checkbox
size="small"
checked={include_tuteur}
onChange={handleChange_include_tuteur}
name="include_tuteur"
/>
}
label="Tuteur en CC"
sx={{
color: "#104277",
fontWeight: 600,
fontFamily:'DM Sans',
fontSize:'10px'
}}
/>
</FormGroup>
</div>}
</div>
{props.related_collection && ['inscription', 'apprenant', 'contact'].includes(props.related_collection) && <div className="session_caract_Dialog" style={{ "marginBottom": '1px' }}>
<FormGroup sx={{ position: 'flex', flexDirection: 'row', justifyContent: 'right', alignItems: 'right' }}>
<FormControlLabel
control={
<Checkbox
size="small"
checked={include_client}
onChange={handleChange_include_client}
name="include_client"
/>
}
label="Client en CC"
/>
<FormControlLabel
control={
<Checkbox
size="small"
checked={include_tuteur}
onChange={handleChange_include_tuteur}
name="include_tuteur"
/>
}
label="Tuteur en CC"
/>
</FormGroup>
</div>}
@ -921,7 +929,7 @@ const Module_Email_Management = (props) => {
}}
init={{
resize: false,
height: 400,
height: 300,
menubar: true,
plugins: [
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace',

View File

@ -374,7 +374,8 @@ const Module_Ent_Internal_Email_Management = (props) => {
Clear_Detail_internal_email_Fields();
Clear_One_Detail_internal_email_Fields();
setgridline_id("");
props.Get_Nb_Unread_Emails();
if (props.Get_Nb_Unread_Emails)
props.Get_Nb_Unread_Emails();
sethandleClick_Delete_Internal_Mail_api("true");
@ -470,7 +471,7 @@ const Module_Ent_Internal_Email_Management = (props) => {
setLoading(false);
if (String(res.data.status) === String("true")) {
//console.log(" In Get_All_Connected_User_Email res.data.status = " + res.data.status);
// console.log(" In Get_All_Connected_User_Email res.data.message r_class = " + res.data.message);
// console.log(" In Get_All_Connected_User_Email res.data.message r_class = " + res.data.message);
setGet_All_Connected_User_Email_api("true");
setGet_All_Connected_User_Email_result(res.data.message);
}
@ -529,7 +530,7 @@ const Module_Ent_Internal_Email_Management = (props) => {
var node = {
"_id": local_id,
"id": localid,
"label": local_prenom+" "+local_nom+" <"+local_email+">",
"label": local_prenom + " " + local_nom + " <" + local_email + ">",
"nom": local_nom,
"prenom": local_prenom,
"email": local_email,
@ -620,8 +621,8 @@ const Module_Ent_Internal_Email_Management = (props) => {
useEffect(() => {
Get_All_Connected_User_Email();
Get_All_Internal_Destinataire_Emails();
Get_All_Connected_User_Email();
Get_All_Internal_Destinataire_Emails();
}, [])
@ -710,15 +711,15 @@ const Module_Ent_Internal_Email_Management = (props) => {
form.append("token", stored_cookie);
form.append("internal_mail_id", local_selected_email_id);
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Given_Internal_Mail/";
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_ENT_Given_Internal_Mail/";
setLoading(true);
axios.post(myurl, form).then(res => {
if (String(res.data.status) === "true") {
//console.log(" In Get_Given_Email_Data res.data.status = " + res.data.status);
// console.log(" In Get_Given_Email_Data res.data.message r_class = " + res.data.message);
// console.log(" In Get_Given_Email_Data res.data.message len = " + String(res.data.message).length);
console.log(" In Get_Given_Email_Data res.data.message r_class = " + res.data.message);
console.log(" In Get_Given_Email_Data res.data.message len = " + String(res.data.message).length);
setLoading(false);
setGet_Given_Email_Data_api("true");
@ -797,7 +798,7 @@ const Module_Ent_Internal_Email_Management = (props) => {
});
}
props.Get_Nb_Unread_Emails();
Get_Nb_Unread_Emails();
if (email_envoye_recu === "1") {
Get_All_Connected_Sent_User_Email();
@ -1508,7 +1509,7 @@ const Module_Ent_Internal_Email_Management = (props) => {
}
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_Message_To_Internal_Mail/";
var myurl = process.env.REACT_APP_API_URL + "myclass/api/From_ENT_Update_Message_To_Internal_Mail/";
axios.post(myurl, form).then(res => {
setLoading(false);
@ -1528,7 +1529,7 @@ const Module_Ent_Internal_Email_Management = (props) => {
setalert_message(res.data.message);
setalert_type("success");
// props.Get_Nb_Unread_Emails();
// props.Get_Nb_Unread_Emails();
window.scrollTo({
top: 0,
@ -1722,19 +1723,19 @@ const Module_Ent_Internal_Email_Management = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1823,19 +1824,19 @@ const Module_Ent_Internal_Email_Management = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1975,14 +1976,14 @@ const Module_Ent_Internal_Email_Management = (props) => {
},
"& .MuiDataGrid-columnHeaders": {
backgroundColor: "#dfe8f2",
color: "#0a2a4d",
fontSize: '14px',
fontFamily:'DM Sans',
backgroundColor: "#dfe8f2",
color: "#0a2a4d",
fontSize: '14px',
fontFamily: 'DM Sans',
},
'& .line--statut--selected': {
backgroundColor: '#e9f7f1',
backgroundColor: '#e9f7f1',
color: '#0a2a4d',
},
@ -1996,12 +1997,12 @@ const Module_Ent_Internal_Email_Management = (props) => {
},
'& .line--statut--not_read': {
backgroundColor: '#FFFFFF',
color: "#0a2a4d",
color: "#0a2a4d",
fontWeight: '600'
},
'& .line--statut--read': {
backgroundColor: '#FFFFFF',
color: "#0a2a4d",
color: "#0a2a4d",
fontWeight: '400'
},
@ -2009,23 +2010,23 @@ const Module_Ent_Internal_Email_Management = (props) => {
'& .line--statut--pair_not_read': {
backgroundColor: 'rgba(235, 235, 235, .7)',
color: "#0a2a4d",
color: "#0a2a4d",
fontWeight: '600'
},
'& .line--statut--pair--read': {
backgroundColor: 'rgba(235, 235, 235, .7)',
color: "#0a2a4d",
color: "#0a2a4d",
fontWeight: '400'
},
'& .line--statut--impair_not_read': {
backgroundColor: '#FFFFFF',
color: "#0a2a4d",
color: "#0a2a4d",
fontWeight: '600'
},
'& .line--statut--impair--read': {
backgroundColor: '#FFFFFF',
color: "#0a2a4d",
color: "#0a2a4d",
fontWeight: '400'
},
@ -2073,7 +2074,7 @@ const Module_Ent_Internal_Email_Management = (props) => {
setdisplay_internal_email("1")
setselected_id(newSelectionModel.row._id);
setgridline_id(newSelectionModel.row.id);
Get_Given_Email_Data(newSelectionModel.row._id);
Get_Given_Email_Data(newSelectionModel.row._id);
}}
@ -2158,20 +2159,20 @@ const Module_Ent_Internal_Email_Management = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
background:'#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2384,8 +2385,8 @@ const Module_Ent_Internal_Email_Management = (props) => {
height: 600,
menubar: true,
plugins: [
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace',
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'code',
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace',
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'code',
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
],
@ -2462,10 +2463,10 @@ const Module_Ent_Internal_Email_Management = (props) => {
<div style={{ width: '100%', float: 'left', }}>
<div style={{ width: '10%', float: 'left', paddingTop: '1.5rem', fontFamily: "DM Sans", textAlign:'left' }}>
<div style={{ width: '10%', float: 'left', paddingTop: '1.5rem', fontFamily: "DM Sans", textAlign: 'left' }}>
<b> Envoyer à </b>
</div>
{(!reply_email || reply_email !== "1") && <div style={{ width: '90%', float: 'right', textAlign:'left'}}>
{(!reply_email || reply_email !== "1") && <div style={{ width: '90%', float: 'right', textAlign: 'left' }}>
<Autocomplete
disablePortal
name="detail_internal_mail_to"
@ -2483,19 +2484,19 @@ const Module_Ent_Internal_Email_Management = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2503,7 +2504,7 @@ const Module_Ent_Internal_Email_Management = (props) => {
/>
</div>}
{reply_email && reply_email === "1" && <div style={{ width: '90%', float: 'right', textAlign:'left'}}>
{reply_email && reply_email === "1" && <div style={{ width: '90%', float: 'right', textAlign: 'left' }}>
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
@ -2532,9 +2533,9 @@ const Module_Ent_Internal_Email_Management = (props) => {
<div style={{ width: '100%', float: 'left', }}>
<div style={{ width: '10%', float: 'left', paddingTop: '1.5rem', fontFamily: "DM Sans", textAlign:'left'}}> <b> Sujet </b>
<div style={{ width: '10%', float: 'left', paddingTop: '1.5rem', fontFamily: "DM Sans", textAlign: 'left' }}> <b> Sujet </b>
</div>
<div style={{ width: '90%', float: 'right',textAlign:'left' }}>
<div style={{ width: '90%', float: 'right', textAlign: 'left' }}>
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
@ -2579,8 +2580,8 @@ const Module_Ent_Internal_Email_Management = (props) => {
height: 600,
menubar: true,
plugins: [
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace',
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'code',
'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace',
'visualblocks', 'code', 'fullscreen', 'insertdatetime', 'media', 'table', 'code',
'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'searchreplace', 'visualblocks',
],
@ -2598,7 +2599,7 @@ const Module_Ent_Internal_Email_Management = (props) => {
<div style={{ width: "100%" }}>
<div style={{ "marginRight": "10px" }}>
<div style={{ "padding": "5px", "marginRight": "10px", textAlign:'center' }}>
<div style={{ "padding": "5px", "marginRight": "10px", textAlign: 'center' }}>
<div className="div_row" style={{ "padding": "5px", "border": "None", "marginBottom": "1px" }}>
<div style={{ "fontSize": "12px" }}>
@ -2746,7 +2747,7 @@ const Module_Ent_Internal_Email_Management = (props) => {
<div className="div_row">
<div className="div_row_gauche" style={{textAlign:'left'}}>
<div className="div_row_gauche" style={{ textAlign: 'left' }}>
<Button
onClick={(e) => {

View File

@ -2950,7 +2950,7 @@ const Module_Ent_Mes_Formations = (props) => {
&nbsp;
{device !== "mobile" && <div className="div_row" style={{ "border": "None", "background": '#F8F9F9', "padding": '5px' }}>
{device !== "mobile" && <div className="div_row" style={{ "border": "None", "background": '#ebf1f4', "padding": '5px' }}>
<div className="session_data">
<div style={{ "border": "None", paddingRight: '10px' }}>
@ -3089,7 +3089,7 @@ const Module_Ent_Mes_Formations = (props) => {
</div>}
{device && device === "mobile" && <div className="div_row" style={{ "border": "None", "background": '#F8F9F9', "padding": '5px' }}>
{device && device === "mobile" && <div className="div_row" style={{ "border": "None", "background": '#ebf1f4', "padding": '5px' }}>
<div className="session_data">
<div style={{ "border": "None", paddingRight: '10px' }}>
@ -3236,7 +3236,7 @@ const Module_Ent_Mes_Formations = (props) => {
}
{String(submenu) === "piece_jointe" && Get_Given_Class_Data_result && Get_Given_Class_Data_result.length > 0 &&
<div className="div_row" style={{ "border": "None", "background": '#F8F9F9', "padding": '5px' }}>
<div className="div_row" style={{ "border": "None", "background": '#ebf1f4', "padding": '5px' }}>
<Modules_ENT_Mes_Documents
apprenant_id={props.apprenant_id}

View File

@ -436,7 +436,7 @@ const Module_Ent_Mes_Notes = (props) => {
{selected_session_id && selected_session_id.length > 5 &&
Get_All_Notes_Of_Evaluations_result && Get_All_Notes_Of_Evaluations_result.length > 0 &&
<div className="div_row" style={{ "border": "None", "background": '#F8F9F9', "padding": '5px' }}>
<div className="div_row" style={{ "border": "None", "background": '#ebf1f4', "padding": '5px' }}>
{/*<div className="div_row" style={{ "textAlign": "right", "marginTop": "0.5rem" }}>
@ -584,7 +584,7 @@ const Module_Ent_Mes_Notes = (props) => {
</div>}
{device && device === "mobile" && <div className="div_row" style={{ "border": "None", "background": '#F8F9F9', "padding": '5px' }}>
{device && device === "mobile" && <div className="div_row" style={{ "border": "None", "background": '#ebf1f4', "padding": '5px' }}>
<div className="session_data">
<div style={{ "border": "None", paddingRight: '10px' }}>

View File

@ -233,7 +233,7 @@ const Modules_Mes_Documents = (props) => {
},
{
field: 'file_date_expiration', headerName: 'Expiration', minWidth: 100, flex: 1, hide: true, editable: false,
field: 'file_date_expiration', headerName: 'Expiration', minWidth: 100, flex: 1, hide: false, editable: false,
renderCell: (cellValues) => {
return (<>
{cellValues.row.file_expired === "1" && <nav style={{ width: '100%', 'textAlign': 'left', color: 'red' }}>
@ -699,6 +699,7 @@ const Modules_Mes_Documents = (props) => {
{ "id": "filter_nom_client", "label": "Nom Client", "value": "filter_nom_client" },
{ "id": "filter_nom_prenom_mail_inscrit", "label": "Nom/Prénom/Email inscrit", "value": "filter_nom_prenom_mail_inscrit" },
{ "id": "date_creation", "label": "Date Création (jj/mm/aaaa) ", "value": "date_creation" },
{ "id": "date_expiration", "label": "Date Expiration (jj/mm/aaaa) ", "value": "date_expiration" },
{ "id": "filter_formation_external_code", "label": "Lié a la Formation (code externe)", "value": "filter_formation_external_code" },
{ "id": "filter_session_code", "label": "Lié a la session (code session)", "value": "filter_session_code" },
{ "id": "", "label": "", "value": "" },
@ -711,6 +712,7 @@ const Modules_Mes_Documents = (props) => {
{ "id": "filter_type_document", "label": "Type Document", "value": "filter_type_document" },
{ "id": "filter_nom_client", "label": "Nom Client", "value": "filter_nom_client" },
{ "id": "date_creation", "label": "Date Création (jj/mm/aaaa) ", "value": "date_creation" },
{ "id": "date_expiration", "label": "Date Expiration (jj/mm/aaaa) ", "value": "date_expiration" },
{ "id": "filter_formation_external_code", "label": "Lié a la Formation (code externe)", "value": "filter_formation_external_code" },
{ "id": "filter_session_code", "label": "Lié a la session (code session)", "value": "filter_session_code" },
{ "id": "", "label": "", "value": "" },
@ -723,6 +725,7 @@ const Modules_Mes_Documents = (props) => {
{ "id": "filter_type_document", "label": "Type Document", "value": "filter_type_document" },
{ "id": "filter_nom_prenom_mail_inscrit", "label": "Nom/Prénom/Email inscrit", "value": "filter_nom_prenom_mail_inscrit" },
{ "id": "date_creation", "label": "Date Création (jj/mm/aaaa) ", "value": "date_creation" },
{ "id": "date_expiration", "label": "Date Expiration (jj/mm/aaaa) ", "value": "date_expiration" },
{ "id": "filter_formation_external_code", "label": "Lié a la Formation (code externe)", "value": "filter_formation_external_code" },
{ "id": "filter_session_code", "label": "Lié a la session (code session)", "value": "filter_session_code" },
{ "id": "", "label": "", "value": "" },
@ -1051,24 +1054,44 @@ const Modules_Mes_Documents = (props) => {
form.append("date_create_start_date", String(p_date_du));
form.append("date_create_end_date", String(p_date_au));
}
else if (p_filtre1 && String(p_filtre1) === "date_expiration") {
form.append("expiration_start_date", String(p_date_expiration_du));
form.append("expiration_end_date", String(p_date_expiration_au));
}
else if (p_filtre1_value && p_filtre1 && String(p_filtre1) !== "date_creation") {
filtre1_value = p_filtre1_value;
form.append(filtre1, filtre1_value);
}
if (p_filtre2 && String(p_filtre2) === "date_creation") {
form.append("date_create_start_date", String(p_date_du));
form.append("date_create_end_date", String(p_date_au));
}
else if (p_filtre2 && String(p_filtre2) === "date_expiration") {
form.append("expiration_start_date", String(p_date_expiration_du));
form.append("expiration_end_date", String(p_date_expiration_au));
}
else if (p_filtre2 && String(p_filtre2) !== "date_creation") {
filtre2_value = p_filtre2_value;
form.append(filtre2, filtre2_value);
}
if (p_filtre3_value && p_filtre3 && String(p_filtre3) === "date_creation") {
form.append("date_create_start_date", String(p_date_du));
form.append("date_create_end_date", String(p_date_au));
}
else if (p_filtre3_value && p_filtre3 && String(p_filtre3) === "date_expiration") {
form.append("expiration_start_date", String(p_date_expiration_du));
form.append("expiration_end_date", String(p_date_expiration_au));
}
else if (p_filtre3_value && p_filtre3 && String(p_filtre3) !== "date_creation") {
filtre3_value = p_filtre3_value;
form.append(filtre3, filtre3_value);
@ -1104,13 +1127,21 @@ const Modules_Mes_Documents = (props) => {
else {
setGet_All_Documents_With_Filter_api("false");
setGet_All_Documents_With_Filter_message(res.data.message);
alert(res.data.message);
//alert(res.data.message);
setdisplay_alert_mysy("1");
setalert_message(res.data.message);
setalert_type("error");
}
}).catch((error) => {
console.warn('Not good man :( Get_All_Documents_With_Filter = ', error);
setGet_All_Documents_With_Filter_api("false");
alert(" Impossible de recuperer la liste des factures");
// alert(" Impossible de recuperer la liste des factures");
setdisplay_alert_mysy("1");
setalert_message(" Impossible de récuperer les documents ");
setalert_type("error");
//setm yApimyApiMessage("")
})
}
@ -1120,6 +1151,10 @@ const Modules_Mes_Documents = (props) => {
const [p_date_du, setp_date_du] = useState(new Date().toLocaleDateString('fr-FR'));
const [p_date_au, setp_date_au] = useState(new Date().toLocaleDateString('fr-FR'));
const [p_date_expiration_du, setp_date_expiration_du] = useState(new Date().toLocaleDateString('fr-FR'));
const [p_date_expiration_au, setp_date_expiration_au] = useState(new Date().toLocaleDateString('fr-FR'));
const [affichage_doc, setaffichage_doc] = useState("list");
const [display_alert_mysy, setdisplay_alert_mysy] = useState("");
@ -1280,7 +1315,11 @@ const Modules_Mes_Documents = (props) => {
.catch((error) => {
console.error(' Record_All_PJ Error:', error);
setDelete_List_document_api("false");
alert(" Impossible de supprimer le document")
// alert(" Impossible de supprimer le document")
setdisplay_alert_mysy("1");
setalert_message(" Impossible de supprimer le document");
setalert_type("error");
});
@ -1401,6 +1440,7 @@ const Modules_Mes_Documents = (props) => {
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
@ -1425,6 +1465,7 @@ const Modules_Mes_Documents = (props) => {
<div className="div_row_droite texte_area_filter_value" >
{p_filtre1 && String(p_filtre1) !== "filter_type_document" && String(p_filtre1) !== "date_creation" &&
String(p_filtre1) !== "date_expiration" &&
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
@ -1472,6 +1513,7 @@ const Modules_Mes_Documents = (props) => {
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
@ -1538,6 +1580,53 @@ const Modules_Mes_Documents = (props) => {
</div>
}
{p_filtre1 && String(p_filtre1) === "date_expiration" &&
<div className="disabled_style autocomplete_float_right">
<div style={{ width: "45%", float: "left", textAlign: "left" }}>
<DatePicker
name="date_du"
id="date_du"
selected={new Date(moment(p_date_expiration_du, "DD/MM/YYYY"))}
onChange={(date) => {
setp_date_expiration_du(format(date, 'd/MM/yyyy'));
}
}
showTimeSelect={false}
dateFormat="dd/MM/yyyy"
className="disabled_style enable_style datepicker_complement"
locale={'fr'}
/>
</div>
<div style={{ width: "5%", float: "left", textAlign: "center", paddingTop: "20px", fontSize: "12px" }}>
Au
</div>
<div style={{ width: "45%", float: "right", textAlign: "right" }}>
<DatePicker
name="date_du"
id="date_du"
selected={new Date(moment(p_date_expiration_au, "DD/MM/YYYY"))}
onChange={(date) => {
setp_date_expiration_au(format(date, 'd/MM/yyyy'));
}
}
showTimeSelect={false}
dateFormat="dd/MM/yyyy"
className="disabled_style enable_style datepicker_complement"
locale={'fr'}
/>
</div>
</div>
}
</div>
@ -1583,6 +1672,7 @@ const Modules_Mes_Documents = (props) => {
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
@ -1601,8 +1691,10 @@ const Modules_Mes_Documents = (props) => {
}
/>}
</div>
<div className="div_row_droite texte_area_filter_value" style={{ "marginTop": "0.5rem" }} >
{String(p_filtre2).length > 2 && String(p_filtre2) !== "filter_type_document" &&
{String(p_filtre2).length > 2 && String(p_filtre2) !== "filter_type_document" && String(p_filtre2) !== "date_creation" &&
String(p_filtre2) !== "date_expiration" &&
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
@ -1648,6 +1740,7 @@ const Modules_Mes_Documents = (props) => {
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
@ -1666,8 +1759,107 @@ const Modules_Mes_Documents = (props) => {
}
/>}
{p_filtre2 && String(p_filtre2) === "date_creation" &&
<div className="disabled_style autocomplete_float_right">
<div style={{ width: "45%", float: "left", textAlign: "left" }}>
<DatePicker
name="date_du"
id="date_du"
selected={new Date(moment(p_date_du, "DD/MM/YYYY"))}
onChange={(date) => {
setp_date_du(format(date, 'd/MM/yyyy'));
}
}
showTimeSelect={false}
dateFormat="dd/MM/yyyy"
className="disabled_style enable_style datepicker_complement"
locale={'fr'}
/>
</div>
<div style={{ width: "5%", float: "left", textAlign: "center", paddingTop: "20px", fontSize: "12px" }}>
Au
</div>
<div style={{ width: "45%", float: "right", textAlign: "right" }}>
<DatePicker
name="date_du"
id="date_du"
selected={new Date(moment(p_date_au, "DD/MM/YYYY"))}
onChange={(date) => {
setp_date_au(format(date, 'd/MM/yyyy'));
}
}
showTimeSelect={false}
dateFormat="dd/MM/yyyy"
className="disabled_style enable_style datepicker_complement"
locale={'fr'}
/>
</div>
</div>
}
{p_filtre2 && String(p_filtre2) === "date_expiration" &&
<div className="disabled_style autocomplete_float_right">
<div style={{ width: "45%", float: "left", textAlign: "left" }}>
<DatePicker
name="date_du"
id="date_du"
selected={new Date(moment(p_date_expiration_du, "DD/MM/YYYY"))}
onChange={(date) => {
setp_date_expiration_du(format(date, 'd/MM/yyyy'));
}
}
showTimeSelect={false}
dateFormat="dd/MM/yyyy"
className="disabled_style enable_style datepicker_complement"
locale={'fr'}
/>
</div>
<div style={{ width: "5%", float: "left", textAlign: "center", paddingTop: "20px", fontSize: "12px" }}>
Au
</div>
<div style={{ width: "45%", float: "right", textAlign: "right" }}>
<DatePicker
name="date_du"
id="date_du"
selected={new Date(moment(p_date_expiration_au, "DD/MM/YYYY"))}
onChange={(date) => {
setp_date_expiration_au(format(date, 'd/MM/yyyy'));
}
}
showTimeSelect={false}
dateFormat="dd/MM/yyyy"
className="disabled_style enable_style datepicker_complement"
locale={'fr'}
/>
</div>
</div>
}
</div>
{String(p_filtre2).length > 2 && <div className='filter_bton_add' >
<Tooltip className="tooltip_css" id="my-tooltip03" style={{ "fontSize": "12px" }} />
<a data-tooltip-id="my-tooltip03" data-tooltip-html="Ajouter une nouvelle ligne de filtre">
@ -1716,6 +1908,7 @@ const Modules_Mes_Documents = (props) => {
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
@ -1736,7 +1929,8 @@ const Modules_Mes_Documents = (props) => {
</div>
<div className="div_row_droite texte_area_filter_value" style={{ "marginTop": "0.5rem" }}>
{String(p_filtre3).length > 2 && String(p_filtre3) !== "filter_type_document" &&
{String(p_filtre3).length > 2 && String(p_filtre3) !== "filter_type_document" && String(p_filtre3) !== "date_creation" &&
String(p_filtre3) !== "date_expiration" &&
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
@ -1782,6 +1976,7 @@ const Modules_Mes_Documents = (props) => {
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
@ -1800,6 +1995,101 @@ const Modules_Mes_Documents = (props) => {
}
/>}
{p_filtre3 && String(p_filtre3) === "date_creation" &&
<div className="disabled_style autocomplete_float_right">
<div style={{ width: "45%", float: "left", textAlign: "left" }}>
<DatePicker
name="date_du"
id="date_du"
selected={new Date(moment(p_date_du, "DD/MM/YYYY"))}
onChange={(date) => {
setp_date_du(format(date, 'd/MM/yyyy'));
}
}
showTimeSelect={false}
dateFormat="dd/MM/yyyy"
className="disabled_style enable_style datepicker_complement"
locale={'fr'}
/>
</div>
<div style={{ width: "5%", float: "left", textAlign: "center", paddingTop: "20px", fontSize: "12px" }}>
Au
</div>
<div style={{ width: "45%", float: "right", textAlign: "right" }}>
<DatePicker
name="date_du"
id="date_du"
selected={new Date(moment(p_date_au, "DD/MM/YYYY"))}
onChange={(date) => {
setp_date_au(format(date, 'd/MM/yyyy'));
}
}
showTimeSelect={false}
dateFormat="dd/MM/yyyy"
className="disabled_style enable_style datepicker_complement"
locale={'fr'}
/>
</div>
</div>
}
{p_filtre3 && String(p_filtre3) === "date_expiration" &&
<div className="disabled_style autocomplete_float_right">
<div style={{ width: "45%", float: "left", textAlign: "left" }}>
<DatePicker
name="date_du"
id="date_du"
selected={new Date(moment(p_date_expiration_du, "DD/MM/YYYY"))}
onChange={(date) => {
setp_date_expiration_du(format(date, 'd/MM/yyyy'));
}
}
showTimeSelect={false}
dateFormat="dd/MM/yyyy"
className="disabled_style enable_style datepicker_complement"
locale={'fr'}
/>
</div>
<div style={{ width: "5%", float: "left", textAlign: "center", paddingTop: "20px", fontSize: "12px" }}>
Au
</div>
<div style={{ width: "45%", float: "right", textAlign: "right" }}>
<DatePicker
name="date_du"
id="date_du"
selected={new Date(moment(p_date_expiration_au, "DD/MM/YYYY"))}
onChange={(date) => {
setp_date_expiration_au(format(date, 'd/MM/yyyy'));
}
}
showTimeSelect={false}
dateFormat="dd/MM/yyyy"
className="disabled_style enable_style datepicker_complement"
locale={'fr'}
/>
</div>
</div>
}
</div>
{String(p_filtre2).length > 2 && <div className='filter_bton_add' >

View File

@ -230,7 +230,7 @@ const New_Sidebar_ENT_Student_2025 = () => {
// Pass on our props
<div>
{String(environnment) === "PROD" && stored_tokenmysytypeconnexion !== "tuteur" &&
{String(environnment) === "PROD" && stored_tokenmysytypeconnexion !== "tuteur" &&
<Menu className="ch_burger_menu">
<a href={"/mysy-student-ent/" + `${stored_apprenant_id}` + "/mes_formations"} className="menu-link">Formations</a>
@ -272,7 +272,7 @@ const New_Sidebar_ENT_Student_2025 = () => {
}
</Menu>}
{String(environnment) === "PROD" && stored_tokenmysytypeconnexion === "tuteur" &&
{String(environnment) === "PROD" && stored_tokenmysytypeconnexion === "tuteur" &&
<Menu className="ch_burger_menu">
<a href={"/mysy-student-ent/" + `${stored_tuteur_id}` + "/mes_formations"} className="menu-link">Formations</a>
@ -346,12 +346,12 @@ const New_Sidebar_ENT_Student_2025 = () => {
}
</Menu>}
{(String(environnment) === "REC" || String(environnment) === "DEM") && stored_tokenmysytypeconnexion === "tuteur" &&
{(String(environnment) === "REC" || String(environnment) === "DEM") && stored_tokenmysytypeconnexion === "tuteur" &&
<Menu className="ch_burger_menu">
<a href={"/mysy-student-ent/" + `${stored_tuteur_id}` + "/mes_formations"} className="menu-link">Formations</a>
{String(someoneconnected) !== String("1") &&
<nav onClick={handleAccountConnexion}>

View File

@ -3,6 +3,7 @@ import axios from "axios";
import profileimg from "../mysy_img/MYSY-profil-2.png";
import TrainingForm from "./AddClassManual"
import PartnerTranings from "./DisplayPartnerTrainingsPagination";
import PartnerTranings_FI from "./DisplayPartnerTrainingsPagination_FI";
import HebergementLms from "./HebergementLms";
import Button from '@mui/material/Button';
import SendIcon from '@mui/icons-material/Send';
@ -3799,7 +3800,7 @@ const Partner = (props) => {
{String(menu) === "affichage" && class_is_ftion_initiale === "1" &&
<div className="div_droite">
<PartnerTranings ispending={partnerstatus} currentpack={partnerPackService} conntected_employee_id={conntected_employee_id}
<PartnerTranings_FI ispending={partnerstatus} currentpack={partnerPackService} conntected_employee_id={conntected_employee_id}
class_external_code={orderid} class_internal_url={packs} formation_initiale={"1"}
check_user_acces_right={check_user_acces_right}
partner_lms_virtualhost_url={partner_lms_virtualhost_url}
@ -3810,7 +3811,7 @@ const Partner = (props) => {
{String(menu) === "affichage_fi" &&
<div className="div_droite">
<PartnerTranings ispending={partnerstatus} currentpack={partnerPackService} conntected_employee_id={conntected_employee_id}
<PartnerTranings_FI ispending={partnerstatus} currentpack={partnerPackService} conntected_employee_id={conntected_employee_id}
class_external_code={orderid} class_internal_url={packs} formation_initiale={"1"}
check_user_acces_right={check_user_acces_right}
partner_lms_virtualhost_url={partner_lms_virtualhost_url}
@ -4848,7 +4849,7 @@ const Partner = (props) => {
{String(menu) === "affichage" && class_is_ftion_initiale === "1" &&
<div className="div_droite div_droite_ralonge">
<PartnerTranings ispending={partnerstatus} currentpack={partnerPackService} conntected_employee_id={conntected_employee_id}
<PartnerTranings_FI ispending={partnerstatus} currentpack={partnerPackService} conntected_employee_id={conntected_employee_id}
class_external_code={orderid} class_internal_url={packs}
check_user_acces_right={check_user_acces_right}
partner_lms_virtualhost_url={partner_lms_virtualhost_url}
@ -4860,7 +4861,7 @@ const Partner = (props) => {
{String(menu) === "affichage_fi" &&
<div className="div_droite div_droite_ralonge">
<PartnerTranings ispending={partnerstatus} currentpack={partnerPackService} conntected_employee_id={conntected_employee_id}
<PartnerTranings_FI ispending={partnerstatus} currentpack={partnerPackService} conntected_employee_id={conntected_employee_id}
class_external_code={orderid} class_internal_url={packs}
check_user_acces_right={check_user_acces_right}
partner_lms_virtualhost_url={partner_lms_virtualhost_url}
@ -5715,6 +5716,7 @@ width: 100%;
letter-spacing: 0.12em;
font-weight: 800;
padding: 4px 8px 10px;
}
.section-items {

View File

@ -1663,19 +1663,20 @@ const PartnerClient_Activite_For_Client = (props) => {
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1704,19 +1705,20 @@ const PartnerClient_Activite_For_Client = (props) => {
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1747,19 +1749,20 @@ const PartnerClient_Activite_For_Client = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -1888,7 +1891,6 @@ const PartnerClient_Activite_For_Client = (props) => {
<div className="div_row">
<DndProvider backend={HTML5Backend}>
<section style={classes.board}>
@ -2175,19 +2177,20 @@ const PartnerClient_Activite_For_Client = (props) => {
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2233,19 +2236,20 @@ const PartnerClient_Activite_For_Client = (props) => {
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2288,19 +2292,20 @@ const PartnerClient_Activite_For_Client = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2436,19 +2441,20 @@ const PartnerClient_Activite_For_Client = (props) => {
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2491,19 +2497,20 @@ const PartnerClient_Activite_For_Client = (props) => {
}
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>
@ -2529,19 +2536,20 @@ const PartnerClient_Activite_For_Client = (props) => {
}}
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
sx={{
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
sx={{
background: '#FFF',
"& .MuiOutlinedInput-root": {
"& fieldset": {
border: "solid #e8eef6 1px;",
},
"&:hover fieldset": {
border: "solid #e8eef6 1px;",
},
"&.Mui-focused fieldset": {
border: "solid #e8eef6 1px;",
},
},
}}
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
/>

View File

@ -359,6 +359,7 @@ const Session_Admission_FI = (props) => {
},
},
{ field: 'nom', headerName: 'Nom', flex: 1, hide: false, minWidth: 180, renderCell: (params) => <ExpandableCell_50 {...params} />, },
{ field: 'nom_fille', headerName: 'Nom J. Fille', flex: 1, hide: false, minWidth: 180, renderCell: (params) => <ExpandableCell_50 {...params} />, },
{ field: 'prenom', headerName: 'Prenom', flex: 1, hide: false, minWidth: 180, renderCell: (params) => <ExpandableCell_50 {...params} />, },
{ field: 'email', headerName: 'Email', flex: 1, hide: false, minWidth: 180, renderCell: (params) => <ExpandableCell_50 {...params} />, },
{ field: 'date_naissance', headerName: 'Date naissance', flex: 1, hide: false, minWidth: 180, renderCell: (params) => <ExpandableCell_50 {...params} />, },
@ -1456,7 +1457,7 @@ const Session_Admission_FI = (props) => {
async function Enable_Inscrit_DetailFields() {
setinscrit_edit_mode("1");
await sleep(5);
var liste_champs = ["inscrit_num_ss", "inscrit_sitation_famille", "inscrit_nom", "inscrit_prenom", "inscrit_civilite", "inscrit_email", "inscrit_phone",
var liste_champs = ["inscrit_num_ss", "inscrit_sitation_famille", "inscrit_nom", "inscrit_nom_fille", "inscrit_prenom", "inscrit_civilite", "inscrit_email", "inscrit_phone",
"inscrit_pi", "inscrit_pi_num", "inscrit_adresse", "inscrit_cp", "inscrit_ville", "inscrit_pays", "inscrit_naissance_date", "inscrit_naissance_lieu",
"inscrit_naissance_dep", "inscrit_naissance_pays", "inscrit_nationalite", "inscrit_ine"]
@ -1476,7 +1477,7 @@ const Session_Admission_FI = (props) => {
setinscrit_edit_mode("");
await sleep(5);
var liste_champs = ["inscrit_num_ss", "inscrit_sitation_famille", "inscrit_nom", "inscrit_prenom", "inscrit_civilite", "inscrit_email", "inscrit_phone",
var liste_champs = ["inscrit_num_ss", "inscrit_sitation_famille", "inscrit_nom", "inscrit_nom_fille", "inscrit_prenom", "inscrit_civilite", "inscrit_email", "inscrit_phone",
"inscrit_pi", "inscrit_pi_num", "inscrit_adresse", "inscrit_cp", "inscrit_ville", "inscrit_pays", "inscrit_naissance_date", "inscrit_naissance_lieu",
"inscrit_naissance_dep", "inscrit_naissance_pays", "inscrit_nationalite", "inscrit_ine"]
@ -2867,6 +2868,7 @@ const Session_Admission_FI = (props) => {
}
const [p_detail_inscrit_nom, setp_detail_inscrit_nom] = useState("");
const [p_detail_inscrit_nom_fille, setp_detail_inscrit_nom_fille] = useState("");
const [p_detail_inscrit_prenom, setp_detail_inscrit_prenom] = useState("");
const [p_detail_inscrit_email, setp_detail_inscrit_email] = useState("");
const [p_detail_inscrit_telephone, setp_detail_inscrit_telephone] = useState("");
@ -2946,6 +2948,13 @@ const Session_Admission_FI = (props) => {
setp_detail_inscrit_nom("");
}
if (tmp.nom_fille) {
setp_detail_inscrit_nom_fille(tmp.nom_fille);
} else {
setp_detail_inscrit_nom_fille("");
}
if (tmp.prenom) {
setp_detail_inscrit_prenom(tmp.prenom);
} else {
@ -3548,6 +3557,7 @@ const Session_Admission_FI = (props) => {
form.append("date_naissance", format(p_detail_inscrit_date_naissance, 'dd/MM/yyyy'));
form.append("nom", p_detail_inscrit_nom);
form.append("nom_fille", p_detail_inscrit_nom_fille);
form.append("prenom", p_detail_inscrit_prenom);
form.append("email", p_detail_inscrit_email);
form.append("telephone", p_detail_inscrit_telephone);
@ -3621,8 +3631,6 @@ const Session_Admission_FI = (props) => {
Getall_Partner_Session_Inscrit();
Disable_Inscrit_DetailFields();
setdisplay_alert_mysy("1");
setalert_message(String(res.data.message));
setalert_type("success");
@ -6998,6 +7006,7 @@ const Session_Admission_FI = (props) => {
id: index,
_id: JSON.parse(item)._id,
nom: JSON.parse(item).nom,
nom_fille: JSON.parse(item).nom_fille,
prenom: JSON.parse(item).prenom,
email: JSON.parse(item).email,
date_naissance: JSON.parse(item).date_naissance,
@ -7473,6 +7482,23 @@ const Session_Admission_FI = (props) => {
</div>
{p_detail_inscrit_civilite !== "m" && <div className="session_caract"> Nom jeune fille <br />
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
name="inscrit_nom_fille"
id="inscrit_nom_fille"
disabled={false}
InputLabelProps={{
shrink: true,
}}
className="disabled_style"
value={p_detail_inscrit_nom_fille}
/>
</div>}
<div className="session_caract"> Prenom <br />
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
@ -8063,6 +8089,31 @@ const Session_Admission_FI = (props) => {
</div>
{p_detail_inscrit_civilite !== "m" && <div className="session_caract"> Nom jeune fille <br />
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
name="inscrit_nom_fille"
id="inscrit_nom_fille"
disabled={false}
InputLabelProps={{
shrink: true,
}}
className="disabled_style"
value={p_detail_inscrit_nom_fille}
onChange={(e) => {
setp_detail_inscrit_nom_fille(e.target.value);
setinscrit_data_changed("1");
}
}
/>
</div>}
<div className="session_caract"> <b> Prenom </b> <br />
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
@ -8756,6 +8807,29 @@ const Session_Admission_FI = (props) => {
</div>
<div className="session_caract"> Nom jeune fille <br />
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}
required
name="inscrit_nom_fille"
id="inscrit_nom_fille"
disabled={false}
InputLabelProps={{
shrink: true,
}}
className="disabled_style"
value={p_detail_inscrit_nom_fille}
onChange={(e) => {
setp_detail_inscrit_nom_fille(e.target.value);
setinscrit_data_changed("1");
}
}
/>
</div>
<div className="session_caract"> <b> Prenom </b> <br />
<TextField
sx={{ '& legend': { display: 'none' }, '& fieldset': { top: 0 }, }}

View File

@ -15,12 +15,12 @@
font-weight: 600;
font-size: 14px;
}
.tooltip_css {
background: #81BC3A;
z-index: 9999;
}
.css-1bp1ao6 {
height: 3.5rem !important;
@ -310,7 +310,7 @@
color: black;
width: 100%;
height: 2rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_import_excel {
@ -318,7 +318,7 @@
color: black;
width: 100% !important;
height: 2rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.div_row_gauche_etendu {
@ -340,7 +340,7 @@
width: 100%;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_enreg {
@ -354,7 +354,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_edit {
@ -367,7 +367,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_annule {
@ -380,7 +380,7 @@
color: black;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.div_row_gauche_image {
@ -436,12 +436,12 @@
margin-top: 0.5rem;
width: 10rem;
cursor: pointer;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_supprime_image_class:hover {
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_image_class {
@ -456,12 +456,12 @@
border-radius: 10px;
width: 10rem;
cursor: pointer;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_image_class:hover {
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.tick_ok_ko {
@ -556,7 +556,7 @@
margin-left: 10px;
margin-right: 10px;
margin-bottom: 1rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_enreg {
@ -569,7 +569,7 @@
width: 100%;
color: white;
margin-bottom: 1rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_edit {
@ -581,7 +581,7 @@
width: 100%;
color: white;
margin-bottom: 1rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_annule {
@ -605,7 +605,7 @@
.disabled_style {
//background-color: #ECEFF1;
font-size: small !important;
color: #0a2a4d !important;
color: #0a2a4d !important;
width: 100% !important;
height: 3.5rem !important;
@ -690,7 +690,7 @@
float: left;
margin-bottom: 1rem;
padding-top: 0.5rem !important;
}
}
.bton_enreg_dialog {
@ -703,7 +703,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -717,7 +717,7 @@
color: black;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -733,7 +733,7 @@
margin-right: 10px;
padding-right: 5px;
padding-left: 5px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.DialogContent_width {
@ -755,7 +755,7 @@
cursor: pointer;
text-align: center;
}
.block_groupe_class {
width: 100%;
@ -882,7 +882,7 @@
.disabled_style {
//background-color: #ECEFF1;
font-size: small !important;
color: #0a2a4d !important;
color: #0a2a4d !important;
width: 90% !important;
height: 3.5rem !important;
margin: 5px !important;
@ -1001,7 +1001,7 @@
color: black;
width: 50%;
height: 2rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -1011,7 +1011,7 @@
color: black;
width: 65% !important;
height: 2rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.div_row_gauche_etendu {
@ -1033,7 +1033,7 @@
width: 80%;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_enreg {
@ -1047,7 +1047,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_edit {
@ -1060,7 +1060,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_annule {
@ -1073,7 +1073,7 @@
color: black;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.div_row_gauche_image {
@ -1128,12 +1128,12 @@
margin-top: 0.5rem;
width: 15rem;
cursor: pointer;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_supprime_image_class:hover {
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_image_class {
@ -1148,12 +1148,12 @@
border-radius: 10px;
width: 15rem;
cursor: pointer;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_image_class:hover {
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.tick_ok_ko {
@ -1254,7 +1254,7 @@
margin-left: 10px;
margin-right: 10px;
min-width: 15rem;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_enreg {
@ -1269,7 +1269,7 @@
margin-left: 10px;
margin-right: 10px;
min-width: 15rem;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_edit {
@ -1283,7 +1283,7 @@
margin-left: 10px;
margin-right: 10px;
min-width: 15rem;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_annule {
@ -1297,7 +1297,7 @@
margin-left: 10px;
margin-right: 10px;
min-width: 15rem;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -1393,7 +1393,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -1407,7 +1407,7 @@
color: black;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -1423,7 +1423,7 @@
margin-right: 10px;
padding-right: 5px;
padding-left: 5px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.DialogContent_width {
@ -1443,7 +1443,7 @@
width: 15%;
float: right;
cursor: pointer;
text-align: center;
text-align: center;
}
.block_groupe_class {
@ -1608,7 +1608,7 @@
.disabled_style {
//background-color: #ECEFF1;
font-size: small !important;
color: #0a2a4d !important;
color: #0a2a4d !important;
width: 90% !important;
height: 3.5rem !important;
margin: 5px !important;
@ -1725,7 +1725,7 @@
color: black;
width: 40%;
height: 2rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_add_session_create_automatic {
@ -1733,7 +1733,7 @@
color: black;
width: 60% !important;
height: 2rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_import_excel {
@ -1741,7 +1741,7 @@
color: black;
width: 50% !important;
height: 2rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.div_row_gauche_etendu {
@ -1763,7 +1763,7 @@
width: 65%;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_enreg {
@ -1777,7 +1777,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_edit {
@ -1790,7 +1790,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_annule {
@ -1803,7 +1803,7 @@
color: black;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -1859,12 +1859,12 @@
margin-top: 0.5rem;
width: 15rem;
cursor: pointer;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_supprime_image_class:hover {
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_image_class {
@ -1879,12 +1879,12 @@
border-radius: 10px;
width: 15rem;
cursor: pointer;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_image_class:hover {
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.tick_ok_ko {
@ -2002,7 +2002,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -2016,7 +2016,7 @@
color: black;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -2032,7 +2032,7 @@
margin-right: 10px;
padding-right: 5px;
padding-left: 5px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.DialogContent_width {
@ -2052,7 +2052,7 @@
width: 12%;
float: right;
cursor: pointer;
text-align: center;
text-align: center;
}
.block_groupe_class {
@ -2216,7 +2216,7 @@
.disabled_style {
//background-color: #ECEFF1;
font-size: small !important;
color: #0a2a4d !important;
color: #0a2a4d !important;
width: 90% !important;
height: 3.5rem !important;
margin: 5px !important;
@ -2229,7 +2229,7 @@
.disabled_style_moitier {
//background-color: #ECEFF1;
font-size: small !important;
color: #0a2a4d !important;
color: #0a2a4d !important;
width: 45% !important;
height: 3.5rem !important;
margin: 5px !important;
@ -2352,7 +2352,7 @@
color: black;
width: 20% !important;
height: 2rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_add_session_create_automatic {
@ -2360,7 +2360,7 @@
color: black;
width: 40% !important;
height: 2rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_import_excel {
@ -2368,7 +2368,7 @@
color: black;
width: 40% !important;
height: 2rem !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.div_row_gauche_etendu {
@ -2385,7 +2385,7 @@
padding: 0.3rem;
width: 60%;
background: #81BC3A;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -2398,7 +2398,7 @@
margin-left: 5%;
height: 2rem;
color: white !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -2411,7 +2411,7 @@
margin-left: 5%;
height: 2rem;
color: white !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -2424,7 +2424,7 @@
width: 60%;
background-color: white;
color: #107758 !important;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -2456,7 +2456,7 @@
color: white;
cursor: pointer;
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_emarge:hover {
@ -2470,7 +2470,7 @@
cursor: pointer;
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.css-1x5jdm {
@ -2499,7 +2499,7 @@
width: 40%;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_enreg {
@ -2513,7 +2513,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_edit {
@ -2526,7 +2526,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_annule {
@ -2539,7 +2539,7 @@
color: black;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -2596,12 +2596,12 @@
margin-top: 0.5rem;
width: 15rem;
cursor: pointer;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_supprime_image_class:hover {
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_image_class {
@ -2616,12 +2616,12 @@
border-radius: 10px;
width: 15rem;
cursor: pointer;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.bton_image_class:hover {
box-shadow: 5px 1px 5px 1px rgb(0 0 0 / 25%);
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.tick_ok_ko {
@ -2669,7 +2669,7 @@
margin: 0.4rem !important;
margin-top: 0px !important;
margin-bottom: 2px !important;
text-align: right;
text-align: right;
cursor: pointer;
}
@ -2748,7 +2748,7 @@
color: white;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -2762,7 +2762,7 @@
color: black;
margin-left: 10px;
margin-right: 10px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -2778,7 +2778,7 @@
margin-right: 10px;
padding-right: 5px;
padding-left: 5px;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
@ -2841,7 +2841,7 @@
width: 8%;
float: right;
cursor: pointer;
text-align: center;
text-align: center;
}
.DialogContent_width_for_week_model {
@ -2945,7 +2945,7 @@
margin-left: 10px;
margin-right: 10px;
font-style: italic;
font-family: 'DM Sans';
font-family: 'DM Sans';
}
.mode_affichage_selected {
@ -2971,6 +2971,7 @@
margin-left: 3%;
min-height: 5rem;
border-left-width: 10px;
text-align: left;
}
.kanban_header_css {
@ -2982,7 +2983,9 @@
border: 1px solid #ecf1fc;
border-bottom: 1px solid;
font-family: 'DM Sans';
// background: #ecf1fc !important;
// background: #ecf1fc !important;
margin-bottom: 10px;
border: none;
}
@ -3004,7 +3007,7 @@
.disabled_style_width_100_percent {
//background-color: #ECEFF1;
font-size: small !important;
color: #0a2a4d !important;
color: #0a2a4d !important;
width: 100% !important;
height: 3.5rem !important;
padding: 5px !important;
@ -3031,7 +3034,7 @@
font-size: large;
padding-top: 10px;
}
.disabled_style_left_text_with_visualiser_icone {
width: 80% !important;
float: left;
@ -3047,7 +3050,7 @@
.disabled_style_100_percent_row {
font-size: small !important;
color: #0a2a4d !important;
color: #0a2a4d !important;
width: 100% !important;
height: 3.5rem !important;
margin: 5px !important;
@ -3073,7 +3076,7 @@
}
.session_caract_Dialog_comment_2_lines {
color: #0a2a4d;
color: #0a2a4d;
width: 100%;
padding: 5px;
float: left;
@ -3083,8 +3086,8 @@
background-color: #FFFFFF;
}
.session_caract_Dialog_comment_3_lines {
color: #0a2a4d;
.session_caract_Dialog_comment_3_lines {
color: #0a2a4d;
width: 100%;
padding: 5px;
float: left;
@ -3096,24 +3099,24 @@
.session_caract_Dialog_DatePicker {
color: #0a2a4d;
color: #0a2a4d;
width: 99% !important;
background-color: #FFFFFF;
}
.session_caract_Dialog_icone_bton_add_reduce {
color: #0a2a4d;
color: #0a2a4d;
font-size: large;
cursor: pointer;
}
.css-1v4ccyo {
border: solid #e8eef6 1px;
.css-1v4ccyo {
border: solid #e8eef6 1px;
height: 3.5rem !important;
font-size: small;
color: #0a2a4d !important;
color: #0a2a4d !important;
}
option {
@ -3201,11 +3204,11 @@
width: 110%;
}
.css-1t8l2tu-MuiInputBase-input-MuiOutlinedInput-input {
color: #0a2a4d !important;
font-size: small !important;
font-family: "DM Sans" !important;
.css-1t8l2tu-MuiInputBase-input-MuiOutlinedInput-input {
color: #0a2a4d !important;
font-size: small !important;
font-family: "DM Sans" !important;
padding-left: 5px !important;
}

View File

@ -2499,8 +2499,8 @@
width: 10rem;
}
@media only screen and (min-width: 601px) and (max-width: 991px){
background-color: #1e1e1e;
@media only screen and (min-width: 601px) and (max-width: 991px) {
background-color: #1e1e1e;
border: 1px solid #2a2a2a;
border-radius: 8px;
padding: 1rem;
@ -2508,9 +2508,9 @@
transition: transform 0.2s, box-shadow 0.2s;
min-height: 12rem;
width: 12rem;
}
@media only screen and (min-width: 992px) {
}
@media only screen and (min-width: 992px) {
background-color: #1e1e1e;
border: 1px solid #2a2a2a;
border-radius: 8px;
@ -2597,6 +2597,7 @@
.autocomplete_float_right {
float: right !important;
border: none;
background: unset;
}
.datepicker_complement {
@ -2653,11 +2654,11 @@
}
.css-1v4ccyo {
border: solid #e8eef6 1px;
.css-1v4ccyo {
border: solid #e8eef6 1px;
height: 3.5rem !important;
font-size: small;
color: #0a2a4d !important;
color: #0a2a4d !important;
}
option {
@ -2752,8 +2753,8 @@
}
.css-1t8l2tu-MuiInputBase-input-MuiOutlinedInput-input {
color: #0a2a4d !important;
color: #0a2a4d !important;
font-size: small !important;
font-family: "DM Sans" !important;
padding-left: 5px !important;