diff --git a/src/App.js b/src/App.js index 2ab2428..1301a50 100644 --- a/src/App.js +++ b/src/App.js @@ -36,6 +36,7 @@ import UserSignFirst from "./pages/usersigninfirst"; import GestionAdministrative from "./components/GestionAdministrative"; import Emargement from "./pages/emargementOk"; import Formation_Cartouche_Com from "./pages/recherche_cartouche_com"; +import SeDesabonner from './pages/sedesabonner'; function App() { @@ -93,6 +94,7 @@ function App() { + diff --git a/src/components/Sedesabonner.js b/src/components/Sedesabonner.js new file mode 100644 index 0000000..110926e --- /dev/null +++ b/src/components/Sedesabonner.js @@ -0,0 +1,252 @@ +import React, { useRef, useState, useEffect } from "react"; +import { useForm } from 'react-hook-form'; +import Navigation from "../components/Navigation"; +import { Helmet } from "react-helmet"; +import bannerimg2 from "../mysy_img/MYSY-LOGO-BLUE.png"; +import 'react-toastify/dist/ReactToastify.min.css'; +import axios from "axios"; +import { Button, } from "reactstrap"; +import { FacebookShareButton, LinkedinShareButton, TwitterShareButton } from "react-share"; +import { SocialIcon } from 'react-social-icons'; +import ousommesnousimg from "../mysy_img/mysy_training_technology_ici.png" +import logowhite from "../mysy_img/MYSY-LOGO-WHITE.png"; +import Footer from "./Fotter"; +import Header from "./Header"; +import SendIcon from '@mui/icons-material/Send'; + +const Sedesabonner = () => { + + const [country_code, setcountry_code] = useState(""); + const [country_name, setcountry_name] = useState(""); + const [city, setcity] = useState(""); + const [postal, setpostal] = useState(""); + const [latitude, setlatitude] = useState(""); + const [longitude, setlongitude] = useState(""); + const [IPv4, setIPv4] = useState(""); + const [state, setstate] = useState(""); + const [userIp, setuserIp] = useState(""); + const [mynote, setmynote] = useState(0); + const [usermessage, setusermessage] = useState(""); + const [object, setobject] = useState(""); + const [result, setResult] = useState(""); + const [myApiResponse, setmyApiResponse] = useState(""); + + + + const { + register, + handleSubmit, + reset, + formState: { errors } + } = useForm(); + + const onSubmit = async (data) => { + const { email, } = data; + + Desabonnement(); + }; + + const [Desabonnement_api, setDesabonnement_api] = useState(""); + const [Desabonnement_message, setDesabonnement_message] = useState(""); + const [Desabonnement_result, setDesabonnement_result] = useState(""); + function Desabonnement(e) { + var mysender_email = document.getElementsByName("email")[0].value; + + var re = /\S+@\S+\.\S+/; + if (re.test(mysender_email) == false) { + alert("l'email est incorrecte"); + return; + } + + + var myurl = process.env.REACT_APP_API_URL + "myclass/api/Sedesabonner/"; + var form = new FormData(); + form.append("email", mysender_email); + + + axios.post(myurl, form).then(res => { + + if (String(res.data.status) === String("false")) { + //console.log(" In test res.data.status = " + res.data.status); + //console.log(" In test res.data.message = " + res.data.message); + setDesabonnement_api("false"); + } + + else if (String(res.data.status) === String("true")) { + //console.log(" In test res.data.status (true) = " + res.data.status); + //console.log(" In test res.data.message = " + res.data.message); + + setDesabonnement_api("true"); + setDesabonnement_message(res.data.message); + window.setTimeout(function() { + window.location.href = process.env.REACT_APP_BASE_URL + }, 7000); + + } + else { + //console.log(" contact-nous statut = " + res.data.status); + //console.log(" contact-nous res.data.message = " + res.data.message); + setDesabonnement_api("false"); + } + }).catch((error) => { + console.warn('contact-nous Not good man :( mysearchtext = ', error); + setDesabonnement_api("false"); + + }) + + } + + + + + + + return ( +
+ + MySy Training, Se désabonner + + + + + + + +
+ + +
+
 
+
Se désabonner
+
+
+
+
+
+ {/* Row 1 of form */} +
+ +
+ + {errors.email && ( + Adresse email invalide + )} +
+
+ {/* Row 2 of form */} + + {/* Row 3 of form */} + +
+ + +
+ +
+
+ {String(Desabonnement_api) === String("true") &&
+ Votre demande a bien été prise en compte. Elle sera traitée dans 24h.
+ Vous allez être redirigé vers la page d'accueil. + + + +
} + + {String(Desabonnement_api) === String("false") &&
+ Impossible de traiter votre demande. Merci de ressayer dans un instant. +
} +
+
+
+ +
+ +
+
+
Où nous trouver ?
+ +
+ + logo MySy Technology ou sommes nous + + + +
+ +
+
+
MySy Training Technology
+
+
+ + Adresse : 1 Cr du Havre, 75008 Paris
+ Adresse email : + contact@mysy-training.com
+ + Téléphone fixe : +331 77 00 38 57
+ Téléphone : +337 69 20 39 45
+ +
+
+
Sur nos reseaux sociaux + +
+
+ + + +   + + + + + +   + + + + + +
+ +
+ + +
+
+
+
+ + +
+
+
+
+
+ ); +}; + +export default Sedesabonner; \ No newline at end of file diff --git a/src/pages/sedesabonner.js b/src/pages/sedesabonner.js new file mode 100644 index 0000000..7f1a091 --- /dev/null +++ b/src/pages/sedesabonner.js @@ -0,0 +1,20 @@ +import SeDesabonner from "../components/Sedesabonner"; +import Navigation from "../components/Navigation"; + +const recherche_draft = () => { + + + return ( +
+ +
+ +
+ +
+ + ) +} + + +export default recherche_draft; diff --git a/src/styles/components/_contactform.scss b/src/styles/components/_contactform.scss index cc6b328..ef8c17a 100644 --- a/src/styles/components/_contactform.scss +++ b/src/styles/components/_contactform.scss @@ -1,10 +1,10 @@ .ContactForm { .h1_transparent { color: transparent; - font-size: 0.1rem; + font-size: 0.1rem; } - .formRow{ + .formRow { margin-bottom: 1rem !important; } @@ -67,7 +67,7 @@ display: inline-block; } - + .div_row2 { float: left; //border:0px solid black; @@ -104,7 +104,7 @@ .div_mobile { position: relative; - top: 7rem; + top: 5rem; z-index: 1; width: 98%; height: 100%; @@ -186,6 +186,42 @@ margin-right: auto; } + .titre { + width: 99%; + margin-left: 5px; + + padding-top: 10px; + + font-family: 'Albert Sans'; + font-style: normal; + font-weight: 700; + font-size: 30px; + line-height: 38px; + /* identical to box height */ + + text-align: center; + letter-spacing: 1px; + + /* Deep Blue */ + + color: #0A043C; + + + /* Inside auto layout */ + + flex: none; + order: 0; + flex-grow: 0; + } + + .col-6 { + flex: 0 0 auto; + width: 100%; + margin-bottom: 1rem; + } + + + } @media only screen and (min-width: 601px) and (max-width: 991px) { @@ -222,6 +258,7 @@ text-align: center; margin-bottom: 1rem; } + .img_gauche_taille { max-width: 50%; } @@ -250,6 +287,7 @@ position: relative; display: inline-block; } + .div_row2 { float: left; //border:0px solid black; @@ -375,6 +413,37 @@ margin-left: auto; margin-right: auto; } + + .titre { + width: 99%; + margin-left: 5px; + height: 80px; + padding-top: 10px; + + font-family: 'Albert Sans'; + font-style: normal; + font-weight: 700; + font-size: 30px; + line-height: 38px; + /* identical to box height */ + + text-align: center; + letter-spacing: 1px; + + /* Deep Blue */ + + color: #0A043C; + + + /* Inside auto layout */ + + flex: none; + order: 0; + flex-grow: 0; + + } + + } @media only screen and (min-width: 992px) and (max-width: 1199px) { @@ -409,6 +478,7 @@ margin-bottom: 1rem; font-weight: bold; } + .okUpdateData { font-size: medium; color: green; @@ -560,6 +630,37 @@ margin-right: auto; } + + .titre { + width: 99%; + margin-left: 5px; + height: 80px; + padding-top: 10px; + + font-family: 'Albert Sans'; + font-style: normal; + font-weight: 700; + font-size: 40px; + line-height: 48px; + /* identical to box height */ + + text-align: center; + letter-spacing: 1px; + + /* Deep Blue */ + + color: #0A043C; + + + /* Inside auto layout */ + + flex: none; + order: 0; + flex-grow: 0; + + } + + } @media only screen and (min-width: 1200px) { @@ -747,5 +848,30 @@ margin-right: auto; } + .titre { + height: 80px; + padding-top: 10px; + + font-family: 'Albert Sans'; + font-style: normal; + font-weight: 700; + font-size: 40px; + line-height: 48px; + + text-align: center; + letter-spacing: 1px; + + /* Deep Blue */ + + color: #0A043C; + + + /* Inside auto layout */ + + flex: none; + order: 0; + flex-grow: 0; + } + } -} +} \ No newline at end of file diff --git a/src/styles/index.scss b/src/styles/index.scss index a0aff63..bfe64f3 100644 --- a/src/styles/index.scss +++ b/src/styles/index.scss @@ -60,4 +60,5 @@ @import "./components/userprofil"; @import "./components/reherche_new_v2"; @import "./components/footer_v2"; -@import "./components/displaydetailclass_new_v2"; \ No newline at end of file +@import "./components/displaydetailclass_new_v2"; +@import "./components/sedesabonner"; \ No newline at end of file