02/12/22 - 13h00

recette2
cherif 2022-12-02 13:19:36 +01:00
parent 48cc90057a
commit 29db62440e
19 changed files with 832 additions and 688 deletions

View File

@ -25,7 +25,7 @@ import PaymentMethod from "./PaymentMethode";
import { IoAddCircleOutline, IoCloseCircleOutline } from "react-icons/io5"; import { IoAddCircleOutline, IoCloseCircleOutline } from "react-icons/io5";
import fileDownload from 'js-file-download' import fileDownload from 'js-file-download'
import PayementComponent_Carte from "./PaymentMethode_Carte" import PayementComponent_Carte from "./PaymentMethode_Carte"
import img_logo_stripe from "./../mysy_img/logo-stripe-secure.png";
function Abonnement(props) { function Abonnement(props) {
@ -573,7 +573,7 @@ function Abonnement(props) {
<div className="titre1"> Votre plan actuel </div> <div className="titre1"> Votre plan actuel </div>
Vous êtes actuellement sur un plan : {String(currentpack2).toUpperCase()} Vous êtes actuellement sur un plan : {String(currentpack2).toUpperCase()}
<div style={{ "marginBottom": "2rem" }}> &nbsp; </div> <div style={{ "marginBottom": "2rem" }}> &nbsp; </div>
<div className="titre1"> Mode de Paiement </div> <div className="titre1"> Mode de Paiement </div>
{paymentmode && Object.keys(paymentmode).length > 0 && paymentmode.map((payment) => ( {paymentmode && Object.keys(paymentmode).length > 0 && paymentmode.map((payment) => (
@ -664,8 +664,10 @@ function Abonnement(props) {
))} ))}
{paymentmode && Object.keys(paymentmode).length > 0 && {paymentmode && Object.keys(paymentmode).length > 0 &&
String(new_mode_payement) !== "1" && <div className="div_row_central"> String(new_mode_payement) !== "1" && <div className="div_row_central">
<img src={img_logo_stripe} className="img_payment" /> &nbsp;
<Button variant="contained" color="success" className="div_row22 btn_modif" onClick={menu_paymentmethode}>Editer</Button> <Button variant="contained" color="success" className="div_row22 btn_modif" onClick={menu_paymentmethode}>Editer</Button>
</div>} </div>}

View File

@ -515,6 +515,7 @@ const AddClassManual = (props) => {
} }
var mots_cle = ""; var mots_cle = "";
if (editorRef_mots_cle.current) { if (editorRef_mots_cle.current) {
mots_cle = editorRef_mots_cle.current.getContent(); mots_cle = editorRef_mots_cle.current.getContent();
@ -540,13 +541,13 @@ const AddClassManual = (props) => {
// Verification si il y a plus de 3 mot clés separés par des ";" // Verification si il y a plus de 3 mot clés separés par des ";"
const words = mots_cle.split(';'); const words = mots_cle.split(';');
if (words.length > 3) { if (words.length > 3) {
Alert(" Il a plus de 3 mots clés. le max autorisé est 3"); alert(" Il a plus de 3 mots clés. le max autorisé est 3");
return; return;
} }
const tab_zone_de_diffusion = zone_de_diffusion.split(';'); const tab_zone_de_diffusion = zone_de_diffusion.split(';');
if (tab_zone_de_diffusion.length > 3) { if (tab_zone_de_diffusion.length > 3) {
Alert(" Il a plus de 3 zones de diffusion. le max autorisé est 3"); alert(" Il a plus de 3 zones de diffusion. le max autorisé est 3");
return; return;
} }

View File

@ -244,6 +244,11 @@ const ButtonHilight = () => {
} }
const handleBlogMenu = (event) => {
history.push("/Recherche-Article-formation")
};
return ( return (
<div className='ButtonHilight'> <div className='ButtonHilight'>
<Helmet> <Helmet>
@ -374,6 +379,11 @@ const ButtonHilight = () => {
<div className="hilight_menuPrincipal" onClick={handleProduitMenu}> <div className="hilight_menuPrincipal" onClick={handleProduitMenu}>
Nos Services Nos Services
</div> </div>
<div className="hilight_menuPrincipal" onClick={handleBlogMenu}>
Le blog
</div>
<div className="hilight_menuPrincipal" onClick={publiecatalogue} <div className="hilight_menuPrincipal" onClick={publiecatalogue}
style={{ "background": "red", "borderRadius": "5px", "paddingLeft": "3px", "paddingRight": "3px" }}> style={{ "background": "red", "borderRadius": "5px", "paddingLeft": "3px", "paddingRight": "3px" }}>
publier mes formations publier mes formations

View File

@ -17,6 +17,7 @@ import OrderConfirmation from "./OrderConfirmation";
import { IoAddCircleOutline } from "react-icons/io5"; import { IoAddCircleOutline } from "react-icons/io5";
import MyPaymentMethode from "./PaymentMethode"; import MyPaymentMethode from "./PaymentMethode";
import img_visa_mastercard from "./../mysy_img/visa_mastercard.png" import img_visa_mastercard from "./../mysy_img/visa_mastercard.png"
import img_logo_stripe from "./../mysy_img/logo-stripe-secure.png";
import img_paypal from "./../mysy_img/paypal.png" import img_paypal from "./../mysy_img/paypal.png"
import moment from "moment"; import moment from "moment";
import { import {
@ -1104,7 +1105,7 @@ function CheckOut(props) {
</Box> </Box>
</div> </div>
<div className="div_row_droite"> <div className="titre1"> Mode de Paiement </div> <div className="div_row_droite"> <div className="titre1"> Mode de Paiement</div>
@ -1130,6 +1131,11 @@ function CheckOut(props) {
</ul> </ul>
<img src={img_logo_stripe} className="img_payment_checkout" /> &nbsp;
</div> </div>
</ul> </ul>
@ -1257,8 +1263,8 @@ function CheckOut(props) {
<div className="div_row_chekout"> <div className="div_row_chekout">
<div className="div_row_gauche" style={{ "minHeight": "4rem" }}> Carte Bancaire </div> <div className="div_row_gauche" style={{ "minHeight": "4rem" }}> Carte Bancaire </div>
<div className="div_row_droite" style={{ "textAlign": "right", "maxHeight": "rem" }}> <div className="div_row_droite" style={{ "textAlign": "right", "maxHeight": "rem" }}>
<img src={img_visa_mastercard} className="img_payment_chekout" /> &nbsp; <img src={img_logo_stripe} className="img_payment_chekout" /> &nbsp;
<img src={img_paypal} className="img_payment_chekout" />
</div> </div>
</div> </div>
<Box alignItems="left" sx={{ '& > :not(style)': { m: 1 }, width: '100%', }}> <Box alignItems="left" sx={{ '& > :not(style)': { m: 1 }, width: '100%', }}>

View File

@ -10,8 +10,9 @@ import { DataGrid, GridToolbar, frFR } from '@mui/x-data-grid';
import Footer from "./Fotter"; import Footer from "./Fotter";
import tick_ko from "../mysy_img/tick_KO.png"; import tick_ko from "../mysy_img/tick_KO.png";
import { AiFillCloseCircle } from "react-icons/ai"; import { AiFillCloseCircle, } from "react-icons/ai";
import parse from 'html-react-parser' import parse from 'html-react-parser'
import { BsEye, BsFileText } from "react-icons/bs";
const DistplayPartnerTraningsPage = (props) => { const DistplayPartnerTraningsPage = (props) => {
@ -150,6 +151,42 @@ const DistplayPartnerTraningsPage = (props) => {
{ field: 'description', headerName: 'Description', width: 150, flex: 1 }, { field: 'description', headerName: 'Description', width: 150, flex: 1 },
{ field: 'price', headerName: 'Prix', width: 100, align: "center", flex: 1 }, { field: 'price', headerName: 'Prix', width: 100, align: "center", flex: 1 },
{ field: 'published', headerName: 'Publié', width: 100, align: "center", flex: 1 }, { field: 'published', headerName: 'Publié', width: 100, align: "center", flex: 1 },
{
field: "management", headerName: 'Gestion',
renderCell: (cellValues) => {
return (
<Button
onClick={(event) => {
handleClickManagement(event, cellValues);
}}
>
<BsFileText />
</Button>
);
}
},
{
field: "visual", headerName: 'Visualiser',
renderCell: (cellValues) => {
return (
<Button
onClick={(event) => {
Visualiser(event, cellValues);
}}
>
<BsEye />
</Button>
);
}
},
{ {
field: "Print", headerName: 'Editer', field: "Print", headerName: 'Editer',
renderCell: (cellValues) => { renderCell: (cellValues) => {
@ -167,11 +204,27 @@ const DistplayPartnerTraningsPage = (props) => {
); );
} }
} },
] ]
function Visualiser(event, cellValues) {
window.open(
"/Display-Detail-formation/" + cellValues.row.internal_url ,
'_blank'
);
}
function handleClickManagement(event, cellValues){
window.open(
"/GestionAdministrative/" + cellValues.row.internal_url ,
'_blank'
);
}
function Edittraining(event, cellValues) { function Edittraining(event, cellValues) {
setreftrainingtoupdate(cellValues.row.internal_url); setreftrainingtoupdate(cellValues.row.internal_url);

View File

@ -407,7 +407,7 @@ function GestionAdministrative(props) {
var montant = String(cellValues.row.amount); var montant = String(cellValues.row.amount);
if (parseFloat(montant).toFixed(2) <= 0) { if (parseFloat(montant).toFixed(2) <= 0) {
alert(" le montant de la formation est incorrect"); alert(" Le montant de la formation est incorrect");
return; return;
} }
@ -1079,6 +1079,7 @@ function GestionAdministrative(props) {
function annuleSessionUpdate() { function annuleSessionUpdate() {
GetCurrentSession(mysession); GetCurrentSession(mysession);
setsessionChanged(false); setsessionChanged(false);
desableSessionFields();
} }
const [SessionstartDate, setSessionstartDate] = useState(); const [SessionstartDate, setSessionstartDate] = useState();
const filterPassedTime_start = (time) => { const filterPassedTime_start = (time) => {
@ -1333,6 +1334,25 @@ function GestionAdministrative(props) {
}); });
} }
function PrintSesssionDetail() {
var filedetail = "detail_session.xlsx"
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
const stored_cookie = getCookie('tokenmysypart');
var url = process.env.REACT_APP_API_URL + "myclass/api/DownloadParticipantsList/" + stored_cookie + "/" + mysession;
axios.get(url, { responseType: 'blob', },)
.then((res) => {
fileDownload(res.data, filedetail)
})
}
function ConfirmEnvoiListEmargement() { function ConfirmEnvoiListEmargement() {
confirmAlert({ confirmAlert({
message: "Confirmez l'envoi des demandes d'emargement aux participants", message: "Confirmez l'envoi des demandes d'emargement aux participants",
@ -1603,6 +1623,13 @@ function GestionAdministrative(props) {
</nav> </nav>
</div> </div>
<div className="session_caract" style={{ "float": "right" }}>
<Button className="bton_envoyer" onClick={PrintSesssionDetail}> Télécharger les details </Button>
</div>
</div>} </div>}
@ -1754,18 +1781,18 @@ function GestionAdministrative(props) {
<div className="div_row_gauche" style={{ "textAlign": 'left', 'marginLeft': '15px' }}> <div className="div_row_gauche" style={{ "textAlign": 'left', 'marginLeft': '15px' }}>
{sessionChanged && {sessionChanged && mysession &&
<Button variant="contained" className="bton_envoyer" onClick={CreateSessionFormation}>Enregistrer les modifications <Button variant="contained" className="bton_envoyer" onClick={CreateSessionFormation}>Enregistrer les modifications
</Button>} </Button>}
</div> </div>
<div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }}> <div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
{!sessionChanged && {!sessionChanged && mysession &&
<Button variant="contained" className="bton_fermer" onClick={enableSessionFields}>Editer <Button variant="contained" className="bton_fermer" onClick={enableSessionFields}>Editer
</Button>} </Button>}
{sessionChanged && {sessionChanged && mysession &&
<Button variant="contained" className="bton_fermer" onClick={annuleSessionUpdate}>Annuler les modifications <Button variant="contained" className="bton_fermer" onClick={annuleSessionUpdate}>Annuler les modifications
</Button>} </Button>}

View File

@ -219,6 +219,10 @@ const Header = () => {
history.push("/Partner", {mysy_arg:'partner'}); history.push("/Partner", {mysy_arg:'partner'});
} }
const handleBlogMenu = (event) => {
history.push("/Recherche-Article-formation")
};
return ( return (
<div className="header"> <div className="header">
@ -354,6 +358,11 @@ const Header = () => {
Nos Services Nos Services
</div> </div>
<div className="header_menuPrincipal" onClick={handleBlogMenu}>
Le blog
</div>
<div className="header_menuPrincipal" onClick={publiecatalogue} <div className="header_menuPrincipal" onClick={publiecatalogue}
style={{ "background": "red", "borderRadius": "5px", "paddingLeft": "3px", "paddingRight": "3px" }}> style={{ "background": "red", "borderRadius": "5px", "paddingLeft": "3px", "paddingRight": "3px" }}>
publier mes formations publier mes formations

View File

@ -803,7 +803,7 @@ function Inscription_Information(props) {
'searchreplace visualblocks code fullscreen', 'searchreplace visualblocks code fullscreen',
'insertdatetime media table paste code help wordcount' 'insertdatetime media table paste code help wordcount'
], ],
//toolbar: false, toolbar: false,
content_style: 'body { font-family:Helvetica,Arial,sans-serif; font-size:14px; }' content_style: 'body { font-family:Helvetica,Arial,sans-serif; font-size:14px; }'
}} }}
/> />
@ -818,8 +818,6 @@ function Inscription_Information(props) {
onClick={SendInformationRequest} onClick={SendInformationRequest}
startIcon={<SendIcon />}>Envoyer &nbsp; &nbsp; {<SendIcon />}</Button> startIcon={<SendIcon />}>Envoyer &nbsp; &nbsp; {<SendIcon />}</Button>
</div> </div>
{/* <div className="div_row_droite" style={{ "textAlign": "right" }}> {/* <div className="div_row_droite" style={{ "textAlign": "right" }}>

View File

@ -15,6 +15,7 @@ import FormControl from '@mui/material/FormControl';
import InputLabel from '@mui/material/InputLabel'; import InputLabel from '@mui/material/InputLabel';
import OutlinedInput from '@mui/material/OutlinedInput'; import OutlinedInput from '@mui/material/OutlinedInput';
import moment from 'moment' import moment from 'moment'
import img_logo_stripe from "./../mysy_img/logo-stripe-secure.png";
function PaymentMethode(props) { function PaymentMethode(props) {
@ -265,8 +266,8 @@ function PaymentMethode(props) {
<div className="div_row"> <div className="div_row">
<div className="div_row_gauche" style={{ "minHeight": "4rem" }}> Carte Bancaire </div> <div className="div_row_gauche" style={{ "minHeight": "4rem" }}> Carte Bancaire </div>
<div className="div_row_droite" style={{ "textAlign": "right", "maxHeight": "rem" }}> <div className="div_row_droite" style={{ "textAlign": "right", "maxHeight": "rem" }}>
<img src={img_visa_mastercard} className="img_payment" /> &nbsp; <img src={img_logo_stripe} className="img_payment" /> &nbsp;
<img src={img_paypal} className="img_payment" />
</div> </div>
</div> </div>
<Box alignItems="left" sx={{ '& > :not(style)': { m: 1 }, width: '100%', }}> <Box alignItems="left" sx={{ '& > :not(style)': { m: 1 }, width: '100%', }}>

View File

@ -1,7 +1,8 @@
import React, { useState, useEffect } from "react"; import React, { useState, useEffect } from "react";
import Button from '@mui/material/Button'; import Button from '@mui/material/Button';
import img_visa_mastercard from "./../mysy_img/visa_mastercard.png" import img_visa_mastercard from "./../mysy_img/visa_mastercard.png";
import img_paypal from "./../mysy_img/paypal.png" import img_logo_stripe from "./../mysy_img/logo-stripe-secure.png";
import img_paypal from "./../mysy_img/paypal.png";
import axios from "axios"; import axios from "axios";
import Box from '@mui/material/Box'; import Box from '@mui/material/Box';
import TextField from '@mui/material/TextField'; import TextField from '@mui/material/TextField';
@ -253,8 +254,8 @@ function PaymentMethodeNoConnect(props) {
<div> <div>
<div className="div_row_central"> <div className="div_row_central">
<img src={img_visa_mastercard} className="img_payment" /> &nbsp; <img src={img_logo_stripe} className="img_payment" /> &nbsp;
<img src={img_paypal} className="img_payment" />
</div> </div>
<Box alignItems="left" sx={{ '& > :not(style)': { m: 1 }, width: '100%', }}> <Box alignItems="left" sx={{ '& > :not(style)': { m: 1 }, width: '100%', }}>

View File

@ -1,6 +1,7 @@
import React, { useState, useEffect } from "react"; import React, { useState, useEffect } from "react";
import Button from '@mui/material/Button'; import Button from '@mui/material/Button';
import img_visa_mastercard from "./../mysy_img/visa_mastercard.png" import img_visa_mastercard from "./../mysy_img/visa_mastercard.png"
import img_logo_stripe from "./../mysy_img/logo-stripe-secure.png";
import img_paypal from "./../mysy_img/paypal.png" import img_paypal from "./../mysy_img/paypal.png"
import axios from "axios"; import axios from "axios";
import Box from '@mui/material/Box'; import Box from '@mui/material/Box';
@ -235,8 +236,8 @@ function PaymentMethodeNoConnect(props) {
<div className="div_row_gauche"> Carte Bancaire </div> <div className="div_row_gauche"> Carte Bancaire </div>
<div className="div_row_droite" style={{ "textAlign": "right" }}> <div className="div_row_droite" style={{ "textAlign": "right" }}>
<img src={img_visa_mastercard} className="img_payment" /> &nbsp; <img src={img_logo_stripe} className="img_payment" /> &nbsp;
<img src={img_paypal} className="img_payment" />
</div> </div>
<Box alignItems="left" sx={{ '& > :not(style)': { m: 1 }, width: '100%', }}> <Box alignItems="left" sx={{ '& > :not(style)': { m: 1 }, width: '100%', }}>

View File

@ -421,6 +421,9 @@ const RechercheArticles = (props) => {
history.push("/Partner", {mysy_arg:'partner'}); history.push("/Partner", {mysy_arg:'partner'});
} }
const handleFtionMenu = (event) => {
history.push("/")
};
return ( return (
<div className="recherche_style RechercheArticles"> <div className="recherche_style RechercheArticles">
@ -509,6 +512,12 @@ const RechercheArticles = (props) => {
<div className="menuPrincipal" onClick={handleProduitMenu}> <div className="menuPrincipal" onClick={handleProduitMenu}>
Nos Services Nos Services
</div> </div>
<div className="menuPrincipal" onClick={handleFtionMenu}>
Les formations
</div>
<div className="menuPrincipal" onClick={publiecatalogue} <div className="menuPrincipal" onClick={publiecatalogue}
style={{"background":"red", "borderRadius":"5px", "paddingLeft":"3px", "paddingRight":"3px"}}> style={{"background":"red", "borderRadius":"5px", "paddingLeft":"3px", "paddingRight":"3px"}}>
publier mes formations publier mes formations

View File

@ -1550,11 +1550,18 @@ const Recherche_new = () => {
}; };
const handleClose_Account = () => { const handleClose_Account = () => {
//alert(" my account"); //alert(" my account");
setAccountMenu(null); setAccountMenu(null);
}; };
const handleBlogMenu = (event) => {
setproduitMenu(event.currentTarget);
history.push("/Recherche-Article-formation")
};
const handleAccountConnexion = () => { const handleAccountConnexion = () => {
setAccountMenu(null); setAccountMenu(null);
history.push("/Connexion") history.push("/Connexion")
@ -2201,6 +2208,10 @@ const Recherche_new = () => {
Nos Services Nos Services
</div> </div>
<div className="menuPrincipal" onClick={handleBlogMenu}>
Le blog
</div>
<div className="menuPrincipal" onClick={publiecatalogue} <div className="menuPrincipal" onClick={publiecatalogue}
style={{ "background": "red", "borderRadius": "5px", "paddingLeft": "3px", "paddingRight": "3px" }}> style={{ "background": "red", "borderRadius": "5px", "paddingLeft": "3px", "paddingRight": "3px" }}>
publier mes formations publier mes formations

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

File diff suppressed because it is too large Load Diff

View File

@ -628,14 +628,17 @@
scroll-behavior: smooth; scroll-behavior: smooth;
} }
.img_payment{
max-width: 30%;
margin-bottom: 5rem;
}
} }
} }
.img_payment_checkout{
max-width: 25%;
margin-top: 1rem;
}
.Mui-disabled{ .Mui-disabled{
font-size: small !important; font-size: small !important;

View File

@ -111,7 +111,6 @@
width: 100%; width: 100%;
text-align: left; text-align: left;
margin: auto; margin: auto;
padding: 0.8rem;
font-family: "verdana", "Quicksand", "Signika", "sans-serif"; font-family: "verdana", "Quicksand", "Signika", "sans-serif";
font-weight: var(--bs-body-font-weight); font-weight: var(--bs-body-font-weight);
line-height: var(--bs-body-line-height); line-height: var(--bs-body-line-height);
@ -295,7 +294,7 @@
//border:1px solid black; //border:1px solid black;
//border-width: 0.01rem; //border-width: 0.01rem;
//background-color: #e6ebe2; //background-color: #e6ebe2;
top: 4rem; top: 5rem;
z-index: 1; z-index: 1;
width: 98%; width: 98%;

View File

@ -52,6 +52,11 @@
} }
@media only screen and (max-width: 600px) { @media only screen and (max-width: 600px) {
.css-iljtu2-MuiRating-root {
font-size: 1rem !important;
}
.left_box { .left_box {
display: none; display: none;
} }
@ -196,7 +201,7 @@
} }
.div_row_critere_gauche { .div_row_critere_gauche {
width: 55%; width: 56%;
float: left; float: left;
text-align: right; text-align: right;
font-weight: bold; font-weight: bold;
@ -1471,7 +1476,7 @@
z-index: 10000; z-index: 10000;
} }
.bton_recontact{ .bton_recontact {
color: white; color: white;
text-align: right; text-align: right;
padding-right: 2rem; padding-right: 2rem;

View File

@ -827,7 +827,7 @@
} }
.css-1t10bd6-MuiFormControl-root-MuiTextField-root fieldset { .css-1t10bd6-MuiFormControl-root-MuiTextField-root fieldset {
border-color: white !important; border-color: transparent !important;
border-radius: 20px !important; border-radius: 20px !important;
} }