diff --git a/src/App.js b/src/App.js index 0ab993f..51590e5 100644 --- a/src/App.js +++ b/src/App.js @@ -52,7 +52,9 @@ import UpdateAttendeeList from "./pages/updateattendeelist"; import Emarge_QR_Code from "./pages/emarge_qr_code"; import AutomaticQuotation from "./pages/automaticquotation"; -import Maintenance from "./pages/maintenance_page" +import Maintenance from "./pages/maintenance_page"; + +import Subdomain_Recherche_new_v2 from "./pages/subdomain_recherche_new_v2"; function App() { @@ -69,12 +71,15 @@ function App() { API URL = {process.env.REACT_APP_API_URL}
*/} - +
- + + + + @@ -154,4 +159,5 @@ function App() { ); } + export default App; diff --git a/src/components/AddClassManual.js b/src/components/AddClassManual.js index 4b97743..bbe7b0f 100644 --- a/src/components/AddClassManual.js +++ b/src/components/AddClassManual.js @@ -1479,7 +1479,14 @@ const AddClassManual = (props) => { if (mylocaltraining.recyclage_delai) { setp_detail_recyclage_delai(mylocaltraining.recyclage_delai); } else { - p_detail_recyclage_delai("0"); + setp_detail_recyclage_delai("0"); + } + + + if (mylocaltraining.recyclage_alert) { + setp_detail_recyclage_alert(mylocaltraining.recyclage_alert); + } else { + setp_detail_recyclage_alert("0"); } @@ -1853,6 +1860,7 @@ const AddClassManual = (props) => { formData.append('recyclage_delai', p_detail_recyclage_delai); formData.append('recyclage_periodicite', p_detail_recyclage_periodicite); + formData.append('recyclage_alert', p_detail_recyclage_alert); formData.append('note', mynote); @@ -3216,6 +3224,7 @@ const AddClassManual = (props) => { const [p_detail_recyclage_delai, setp_detail_recyclage_delai] = useState("0"); const [p_detail_recyclage_periodicite, setp_detail_recyclage_periodicite] = useState("mois"); + const [p_detail_recyclage_alert, setp_detail_recyclage_alert] = useState("0"); const [p_detail_class_inscription_url, setp_detail_class_inscription_url] = useState(""); const [p_detail_class_banner_img_url, setp_detail_class_banner_img_url] = useState(""); @@ -5241,6 +5250,25 @@ const AddClassManual = (props) => { />
+
+ { + setp_detail_recyclage_alert(e.target.value); + } + } + /> +
+ {/* -- début champs specifiques **/}

diff --git a/src/components/DisplayPartnerStagiaires.js b/src/components/DisplayPartnerStagiaires.js index c236e5e..606a113 100644 --- a/src/components/DisplayPartnerStagiaires.js +++ b/src/components/DisplayPartnerStagiaires.js @@ -780,6 +780,7 @@ const DisplayPartnerStagiaires = (props) => { //console.log(" In UpdateStagiaireData res.data.message r_class = " + res.data.message); setRecyclage_Desactivation_api("true"); setRecyclage_Desactivation_result(res.data.message); + setSelectionModel([]); Getall_TrainingParticipant(); alert(res.data.message); @@ -1081,7 +1082,12 @@ const DisplayPartnerStagiaires = (props) => { Get_List_Partner_Financeurs(); - var line = JSON.parse(rowss[selected_row_id]); + var line = ""; + + if (display_stagiaire_with_alert && display_stagiaire_with_alert === true) + line = JSON.parse(rowss.filter((data) => (JSON.parse(data)).warning_recyclage === "1")[selected_row_id]); + else + line = JSON.parse(rowss[selected_row_id]); var code_session = line.code_session; setselected_code_session(line.code_session); @@ -5358,11 +5364,11 @@ const DisplayPartnerStagiaires = (props) => { var liste_session = ""; var liste_emails = ""; - if (display_stagiaire_with_alert && display_stagiaire_with_alert === true){ + if (display_stagiaire_with_alert && display_stagiaire_with_alert === true) { liste_session = GetSelectedRowsSession_filtered_on_alert(); liste_emails = GetSelectedRows_Emails_filtered_on_alert(); } - else{ + else { liste_session = GetSelectedRowsSession(); liste_emails = GetSelectedRows_Emails(); } @@ -5372,7 +5378,7 @@ const DisplayPartnerStagiaires = (props) => { console.log(" liste_session = ", liste_session); - + //console.log(" actionmass_ftion_val = ", actionmass_ftion_val); if (String(actionmass_ftion_val) === String("valide_inscr")) { @@ -5438,7 +5444,7 @@ const DisplayPartnerStagiaires = (props) => { const [selectedtraining, setselectedtraining] = useState([]) function GetSelectedRowsSession() { - // alert(" les lignes slected sont : " + selectionModel + " nb item = " + selectionModel.length); + // alert(" les lignes slected sont : " + selectionModel + " nb item = " + selectionModel.length); //const selectedRowsData = selectionModel.map((id) => rowss.find((row) => row.id === id)); //console.log(rowss[0]); var tab_tmp = [] @@ -5458,7 +5464,7 @@ const DisplayPartnerStagiaires = (props) => { //const selectedRowsData = selectionModel.map((id) => rowss.find((row) => row.id === id)); //console.log(rowss[0]); - + var tab_tmp = [] for (var i = 0; i < selectionModel.length; i++) { var myid = parseInt(String(selectionModel[i])); @@ -6569,7 +6575,7 @@ const DisplayPartnerStagiaires = (props) => { - {Dialog_1_message} + @@ -8330,7 +8336,7 @@ const DisplayPartnerStagiaires = (props) => { 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])); + setselected_row_data_json(JSON.parse(rowss.filter((data) => (JSON.parse(data)).warning_recyclage === "1")[newSelectionModel.row.id])); setDialog_stagiaire_open(true); }} @@ -10047,7 +10053,8 @@ const DisplayPartnerStagiaires = (props) => {
- {String(participant_data_edit_mode) !== "1" && String(inscription_invoiced) !== "1" &&
+ + {String(participant_data_edit_mode) !== "1" && String(inscription_invoiced) !== "1" && p_detail_apprenant_id && String(p_detail_apprenant_id).trim().length > 3 &&
} diff --git a/src/components/Module_Email_Management.js b/src/components/Module_Email_Management.js index 25332ba..22e0e6d 100644 --- a/src/components/Module_Email_Management.js +++ b/src/components/Module_Email_Management.js @@ -43,7 +43,7 @@ import img_loading_spin from "./../mysy_img/mysy_spin_loading.gif"; import daygridPlugin from "@fullcalendar/daygrid"; //import interactionPlugin from "@fullcalendar/interaction"; //import timeGridPlugin from "@fullcalendar/timegrid"; - +import Checkbox from '@mui/material/Checkbox'; import allLocales from '@fullcalendar/core/locales-all' import { RepeatOnRounded, ResetTvRounded, RestaurantMenu } from "@mui/icons-material"; import { alignPropType } from "react-bootstrap/esm/types"; @@ -75,6 +75,9 @@ import { IoMdAddCircle, IoIosRemoveCircleOutline } from "react-icons/io"; import { FcViewDetails, FcDisapprove, FcInfo } from "react-icons/fc"; import { convertNwSeToNeSw } from "google-map-react"; +import FormGroup from '@mui/material/FormGroup'; +import FormControlLabel from '@mui/material/FormControlLabel'; + const Module_Email_Management = (props) => { const myconntected_employee_id = props.conntected_employee_id; @@ -592,6 +595,28 @@ const Module_Email_Management = (props) => { } + const [include_client, setinclude_client] = useState(false); + const [include_tuteur, setinclude_tuteur] = useState(false); + + const handleChange_include_tuteur = (event) => { + if (event.currentTarget.checked) { + setinclude_tuteur(true); + } + else { + setinclude_tuteur(false); + } + } + + + const handleChange_include_client = (event) => { + if (event.currentTarget.checked) { + setinclude_client(true); + } + else { + setinclude_client(false); + } + } + return ( @@ -777,6 +802,34 @@ const Module_Email_Management = (props) => {
+ {props.related_collection && ['inscription', 'apprenant', 'contact'].includes(props.related_collection) &&
+ + + + } + label="Client en CC" + /> + + } + label="Tuteur en CC" + /> + + +
} diff --git a/src/components/Recherche_new_v2.js b/src/components/Recherche_new_v2.js index 1c12023..cf0d595 100644 --- a/src/components/Recherche_new_v2.js +++ b/src/components/Recherche_new_v2.js @@ -92,6 +92,8 @@ const Recherche_new_v2 = () => { const textInput = useRef(null); const scrollDiv = useRef(null); + const [url_subdomain, seturl_subdomain] = useState(window.location.host.split(".")[0]); + const [textplaceholder, settextplaceholder] = useState(""); const [empltysearch, setempltysearch] = useState("1"); @@ -946,9 +948,9 @@ const Recherche_new_v2 = () => { var ip = ""; async function fetchData() { - // const result = await axios('https://geolocation-db.com/json/',); - - + // const result = await axios('https://geolocation-db.com/json/',); + + /* setuserIp("172.71.122.128"); setcountry_code("FR"); @@ -2572,6 +2574,7 @@ const Recherche_new_v2 = () => { }; + return ( diff --git a/src/components/Subdomain_Recherche_new_v2.js b/src/components/Subdomain_Recherche_new_v2.js new file mode 100644 index 0000000..5ac4195 --- /dev/null +++ b/src/components/Subdomain_Recherche_new_v2.js @@ -0,0 +1,4087 @@ +import React, { useRef, useState, useMemo, useEffect } from "react"; +import { useForm } from "react-hook-form"; +import axios from "axios"; +import Formation from "./Formation"; +import { FaSearch, FaRegArrowAltCircleDown, FaRegArrowAltCircleUp } from 'react-icons/fa'; +import { BsFillXCircleFill } from "react-icons/bs"; + + + + +import Pagination from "./TestPagination"; +import data from "./data/mock-data.json"; +import { useHistory } from "react-router-dom"; +import { getCookie, removeCookie } from 'react-use-cookie'; +import { Helmet } from "react-helmet"; + +import AideRecherche from "./AideRecherche" +import { useParams } from 'react-router-dom' +import Footer_v2 from "./Fotter_v2"; +import Footer from "./Fotter"; +import LogoutOutlinedIcon from '@mui/icons-material/LogoutOutlined'; +import Button from '@mui/material/Button'; +import MenuItem from "@material-ui/core/MenuItem"; +import Menu from "@material-ui/core/Menu"; +import Header from "./Header"; + +import connect_white from "../mysy_img/connect_white_v2.png"; +import connect_green from "../mysy_img/connect_green.png"; +import { confirmAlert } from 'react-confirm-alert'; // Import +import { useCookies } from "react-cookie"; +import InputRange from 'react-input-range'; +import 'react-input-range/lib/css/index.css'; +import tick_ko from "../mysy_img/tick_KO.png"; + + +import { SelectChangeEvent } from '@mui/material/Select'; +import Chip from '@mui/material/Chip'; +import Select, { StylesConfig } from 'react-select'; + +import mysy_logo2 from "../mysy_img2/Logo_MySy.png" +import { AiTwotoneFolder } from "react-icons/ai"; +import serv_img_market_digi from "../mysy_img/market_digi.jpg"; +import serv_img_gestion_admin from "../mysy_img/gestion_admin_2.jpg"; +import serv_img_publication from "../mysy_img/publication.jpg"; + +import mysy_search from "../mysy_img2/mysy_search.jpg"; +import mysy_lms from "../mysy_img2/mysy_e_learning.jpg"; +import mysy_consulting from "../mysy_img2/mysy_consulting.jpg"; +import mysy_datacenter from "../mysy_img2/mysy_datacenter.png"; +import Dialog from '@mui/material/Dialog'; +import DialogActions from '@mui/material/DialogActions'; +import DialogContent from '@mui/material/DialogContent'; +import DialogContentText from '@mui/material/DialogContentText'; +import DialogTitle from '@mui/material/DialogTitle'; + + + +import { CiCircleRemove, CiCircleMinus } from "react-icons/ci"; + +let PageSize = 10; +const Subdomain_Recherche_new_v2 = () => { + const { type, categorie } = useParams(); + const { NewSearchText } = useParams(); + const [v11, setv11] = useState(""); + const [userconnected, setuserconnected] = useState("0"); + const [TrainingSupport, setTrainingSupport] = useState(""); + const [TrainingType, setTrainingType] = useState(""); + const [TrainingCertif, setTrainingCertif] = useState(""); + const [TrainingCPF, setTrainingCPF] = useState(""); + const [TrainingLang, setTrainingLang] = useState(""); + const [TrainingPrice, setTrainingPrice] = useState(""); + const [SearchText, setSearchText] = useState(""); + const [SearchcitiesText, setSearchcitiesText] = useState(""); + const [result, setResult] = useState(""); + const [myApiResponse, setmyApiResponse] = useState("false"); + const [displayAllClasses, setdisplayAllClasses] = useState("0"); + const [showelement, setshowelement] = useState("init"); + const [country_code, setcountry_code] = useState("FR"); + const [country_name, setcountry_name] = useState("France"); + const [city, setcity] = useState("Paris"); + const [postal, setpostal] = useState("75001"); + const [latitude, setlatitude] = useState("48.861000061035156"); + const [longitude, setlongitude] = useState("2.3380000591278076"); + const [IPv4, setIPv4] = useState("172.71.122.128"); + const [state, setstate] = useState("France"); + const [userIp, setuserIp] = useState("172.71.122.128"); + const [currentPage, setCurrentPage] = useState(1); + const [currentPage2, setCurrentPage2] = useState(1); + const [fin, setfin] = useState(0); + const [ismobilephone, setismobilephone] = useState(); + const [TrainingDistanciel, setTrainingDistanciel] = useState(); + const textInput = useRef(null); + const scrollDiv = useRef(null); + + const [url_subdomain, seturl_subdomain] = useState(window.location.host.split(".")[0]); + + + const [textplaceholder, settextplaceholder] = useState(""); + const [empltysearch, setempltysearch] = useState("1"); + const [empltycitiessearch, setempltycitiessearch] = useState("1"); + + const [filtredistance, setfiltredistance] = useState("0"); + const continent = ['oui', 'non']; + const [selectedcontinent, setselectedcontinent] = useState(""); + const [newresult, setnewresult] = useState(); + const stored_user = getCookie('tokenmysych'); + const history = useHistory(); + const [besoinaiderecherche, setbesoinaiderecherche] = useState(""); + const [istrier, setistrier] = useState(); + const [selectmetier, setselectmetier] = useState(); + const [initAllfiter, setinitAllfiter] = useState(); + const testDivRef = useRef(null); + const [partcookie, setpartCookie, removepartCookie] = useCookies(['tokenmysypart']); + const inputEl = useRef(null); + + + + + const url = process.env.REACT_APP_API_URL + "myclass/api/add_user_account/"; + const { + register, + formState: { errors }, + handleSubmit, + watch, + } = useForm(); + const pwd = useRef({}); + pwd.current = watch("pwd", ""); + + + + const onSubmit = async (data) => { + + searchFunction(); + }; + + const [Trainingdistance, setTrainingdistance] = useState(0); + const handleInput = (e) => { + setTrainingdistance(e.target.value); + } + + const [Trainingduration, setTrainingduration] = useState(0); + const handleInputDuration = (e) => { + setTrainingduration(e.target.value); + } + + + function showdisplayfilter(event) { + + if (showelement == "true") { + setshowelement("false"); + document.getElementById('block_partner').style.top = "5200px" + document.getElementById('pieddepage_v2').style.top = "5800px" + } + else if (showelement == "false") { + setshowelement("true"); + document.getElementById('block_partner').style.top = "6300px" + document.getElementById('pieddepage_v2').style.top = "6800px" + } + + + } + + function clearsearchtext(event) { + setSearchText(""); + setResult([]); + document.getElementById("SearchText").value = ""; + setempltysearch("1") + setbesoinaiderecherche(""); + settext(""); + DisplayXfirstClas(); + } + + const [suggestion2, setsuggestion2] = useState([]); + const [suggestioncities, setsuggestioncities] = useState([]); + + function SearchTextHandle(event) { + setempltysearch("0"); + setSearchText(event.target.value); + + var val = String(event.target.value).toLocaleLowerCase(); + let matches = []; + // 13/01 : A faire absolument. j'ai bloqué car bug d'affichage (pas au bon endroit) + + if (String(val).length > 2) { + matches = suggestedwords.filter(usr => { + //alert(JSON.parse(usr).name ); + const regex = new RegExp(`${val}`, "gi"); + return JSON.parse(usr).name.match(regex); + } + + ) + + } + + //console.log("matches = " + matches); + setsuggestion2(matches); + settext(event.target.value); + } + + function SearchcitiesHandle(event) { + setempltycitiessearch("0"); + setSearchcitiesText(event.target.value); + + var val = String(event.target.value).toLocaleLowerCase().trimStart(); + const regex = new RegExp(`^${val}`, "gi"); + + let matches = []; + + if (String(val).length > 2) { + matches = suggestedcities.filter(usr => { + return JSON.parse(usr).ville.match(regex); + }) + } + + //console.log("matches = " + matches); + setsuggestioncities(matches); + setcities(event.target.value); + + } + + + const [v1, setv1] = useState(); + const [v2, setv2] = useState(); + + + function TrainingSupportHandle(event) { + setsupportchecked("1"); + var toto = ""; + var filtre1 = ""; + var filtre2 = ""; + var filtre3 = ""; + + var crit_TrainingSupport = ""; + var crit_TrainingSupport22 = ""; + + + if (document.getElementById("supoort_list_derou")) { + crit_TrainingSupport = document.getElementById("supoort_list_derou").value; + + //console.log("crit_TrainingSupport = ", crit_TrainingSupport); + + if (crit_TrainingSupport.length > 0) { + filtre1 = result.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + setv11(filtre1); + } + else if (crit_TrainingSupport.length <= 0) { + /* l'utilisateur a choisi d'annuler le filter */ + annulefiltresupportchecked(); + return; + //filtre1 = result; + //setv11(filtre1); + } + } + + /* + + + + if (document.querySelector('input[name="TrainingSupport"]:checked')) { + crit_TrainingSupport = document.querySelector('input[name="TrainingSupport"]:checked').value; + if (crit_TrainingSupport.length > 0) { + filtre1 = result.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + setv11(filtre1); + } + else if (crit_TrainingSupport.length <= 0 || String(crit_TrainingSupport) === String("NA")) { + filtre1 = result; + setv11(filtre1); + } + + } + */ + + + var crit_TrainingCertif = ""; + if (document.querySelector('input[name="TrainingCertif"]:checked')) { + crit_TrainingCertif = document.querySelector('input[name="TrainingCertif"]:checked').value; + if (crit_TrainingCertif.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingCertif); + + } + + // recuperation du filtre du type (cours, tuto, etc) + var crit_TrainingType = ""; + if (document.querySelector('input[name="TrainingType"]:checked')) { + crit_TrainingType = document.querySelector('input[name="TrainingType"]:checked').value; + if (crit_TrainingType.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).type === crit_TrainingType); + + } + + // recuperation du filtre de la distance + var crit_Trainingdistance = ""; + if (document.querySelector('input[name="TrainingPresentiel"]:checked')) { + crit_Trainingdistance = document.querySelector('input[name="TrainingPresentiel"]:checked').value; + if (crit_Trainingdistance.length > 0) { + // filtre presentiel = 1 + if (String(crit_Trainingdistance) === String("1")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.distantiel === "1"); + setv11(filtre1); + + } + else if (String(crit_Trainingdistance) === String("0")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.presentiel === "1"); + setv11(filtre1); + } + } + } + // Recup du filtre de prix + var crit_TrainingPrice = range_price.min + ":" + range_price.max; + + if (range_price.min && range_price.max) { + filtre1 = filtre1.filter((maformation) => Number(JSON.parse(maformation).price) >= Number(range_price.min) && + Number(JSON.parse(maformation).price) <= Number(range_price.max) + ); + + setv11(filtre1); + } + + + setnewresult(filtre1); + + //alert("crit_TrainingCertif = " + crit_TrainingCertif + " ET crit_TrainingSupport = " + crit_TrainingSupport + " ET crit_TrainingType = " + crit_TrainingType); + //console.log("############################ filtre1 = " + filtre1); + setCurrentPage2(1); + //console.log(" ????????????????????????????filtre2 = "+filtre2); + + } + + + + function TrainingCertifHandle(event) { + + var ele = document.querySelector('input[name="TrainingCertif"]:checked').value + + var toto = ""; + var filtre1 = ""; + var filtre2 = ""; + var filtre3 = ""; + + setcertifchecked(""); + var crit_TrainingCertif = ""; + if (document.querySelector('input[name="TrainingCertif"]:checked')) { + setcertifchecked("1"); + crit_TrainingCertif = document.querySelector('input[name="TrainingCertif"]:checked').value + if (crit_TrainingCertif.length > 0) { + //alert(" laa = " + crit_TrainingCertif); + //console.log(result) + filtre1 = result.filter((maformation) => String(JSON.parse(maformation).certif) === String(crit_TrainingCertif)); + setv11(filtre1); + } + + } else { + + filtre1 = result; + setv11(filtre1); + } + + /* + // recuperation du filtre du support + var crit_TrainingSupport = ""; + if (document.querySelector('input[name="TrainingSupport"]:checked')) { + crit_TrainingSupport = document.querySelector('input[name="TrainingSupport"]:checked').value + if (crit_TrainingSupport.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + + } + */ + // recuperation du filtre du support + var crit_TrainingSupport = ""; + if (document.getElementById("supoort_list_derou")) { + crit_TrainingSupport = document.getElementById("supoort_list_derou").value; + if (crit_TrainingSupport.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + + } + + + // recuperation du filtre du CPF + var crit_TrainingCPF = ""; + if (document.querySelector('input[name="TrainingCPF"]:checked')) { + crit_TrainingCPF = document.querySelector('input[name="TrainingCPF"]:checked').value + if (crit_TrainingCPF.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).cpf === crit_TrainingCPF); + + } + + + // recuperation du filtre du type + var crit_TrainingType = ""; + if (document.querySelector('input[name="TrainingType"]:checked')) { + crit_TrainingType = document.querySelector('input[name="TrainingType"]:checked').value + if (crit_TrainingType.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingType); + + } + + // recuperation du filtre de la distance + var crit_Trainingdistance = ""; + if (document.querySelector('input[name="TrainingPresentiel"]:checked')) { + crit_Trainingdistance = document.querySelector('input[name="TrainingPresentiel"]:checked').value + if (crit_Trainingdistance.length > 0) { + // filtre presentiel = 1 + if (String(crit_Trainingdistance) === String("1")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.distantiel === "1"); + setv11(filtre1); + + } + else if (String(crit_Trainingdistance) === String("0")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.presentiel === "1"); + setv11(filtre1); + } + } + + } + + // Recup du filtre de prix + var crit_TrainingPrice = range_price.min + ":" + range_price.max; + + if (range_price.min && range_price.max) { + filtre1 = filtre1.filter((maformation) => Number(JSON.parse(maformation).price) >= Number(range_price.min) && + Number(JSON.parse(maformation).price) <= Number(range_price.max) + ); + + setv11(filtre1); + } + + + setnewresult(filtre1); + //alert("crit_TrainingCertif = " + crit_TrainingCertif + " ET crit_TrainingSupport = " + crit_TrainingSupport + " ET crit_TrainingType = " + crit_TrainingType); + //console.log("############################ filtre1 = " + filtre1); + setCurrentPage2(1); + //console.log(" ????????????????????????????filtre2 = "+filtre2); + + + return; + } + + + + // Pour le CPF + const [cpfchecked, setcpfchecked] = useState(); + function TrainingCPFHandle(event) { + + var ele = document.querySelector('input[name="TrainingCPF"]:checked').value + var myelement; + + if (document.getElementById('rech_middlebox')) { + myelement = document.getElementById('rech_middlebox'); + } + + + var toto = ""; + var filtre1 = ""; + var filtre2 = ""; + var filtre3 = ""; + + setcpfchecked(""); + var crit_TrainingCPF = ""; + if (document.querySelector('input[name="TrainingCPF"]:checked')) { + setcpfchecked("1"); + crit_TrainingCPF = document.querySelector('input[name="TrainingCPF"]:checked').value + if (crit_TrainingCPF.length > 0) { + //alert(" crit_TrainingCPF = " + crit_TrainingCPF); + + filtre1 = result.filter((maformation) => String(JSON.parse(maformation).cpf) === String(crit_TrainingCPF)); + setv11(filtre1); + //console.log(" #### ",filtre1); + } + + } else { + + filtre1 = result; + setv11(filtre1); + } + + // recuperation du filtre du certificat + var crit_TrainingCertif = ""; + if (document.querySelector('input[name="TrainingCertif"]:checked')) { + crit_TrainingCertif = document.querySelector('input[name="TrainingCertif"]:checked').value + if (crit_TrainingCertif.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingCertif); + + } + + + // recuperation du filtre du support + var crit_TrainingSupport = ""; + if (document.getElementById("supoort_list_derou")) { + crit_TrainingSupport = document.getElementById("supoort_list_derou").value; + if (crit_TrainingSupport.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + + } + + + // recuperation du filtre du type + var crit_TrainingType = ""; + if (document.querySelector('input[name="TrainingType"]:checked')) { + crit_TrainingType = document.querySelector('input[name="TrainingType"]:checked').value + if (crit_TrainingType.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingType); + + } + + // recuperation du filtre de la distance + var crit_Trainingdistance = ""; + if (document.querySelector('input[name="TrainingPresentiel"]:checked')) { + crit_Trainingdistance = document.querySelector('input[name="TrainingPresentiel"]:checked').value + if (crit_Trainingdistance.length > 0) { + // filtre presentiel = 1 + if (String(crit_Trainingdistance) === String("1")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.distantiel === "1"); + setv11(filtre1); + + } + else if (String(crit_Trainingdistance) === String("0")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.presentiel === "1"); + setv11(filtre1); + } + } + + + + } + + // Recup du filtre de prix + var crit_TrainingPrice = range_price.min + ":" + range_price.max; + + if (range_price.min && range_price.max) { + filtre1 = filtre1.filter((maformation) => Number(JSON.parse(maformation).price) >= Number(range_price.min) && + Number(JSON.parse(maformation).price) <= Number(range_price.max) + ); + + setv11(filtre1); + } + + + setnewresult(filtre1); + //alert("crit_TrainingCertif = " + crit_TrainingCertif + " ET crit_TrainingSupport = " + crit_TrainingSupport + " ET crit_TrainingType = " + crit_TrainingType); + //console.log("############################ filtre1 = " + filtre1); + setCurrentPage2(1); + //console.log(" ????????????????????????????filtre2 = "+filtre2); + if (myelement) { + myelement.scrollIntoView({ behavior: 'smooth' }); + } + + return; + } + + + // END PR CPF + function TrainingTypeHandle(event) { + + settypechecked("1"); + var toto = ""; + var filtre1 = ""; + var filtre2 = ""; + var filtre3 = ""; + + var myelement; + + if (document.getElementById('rech_middlebox')) { + myelement = document.getElementById('rech_middlebox'); + } + + var crit_TrainingPrice = ""; + + var crit_TrainingType = ""; + if (document.querySelector('input[name="TrainingType"]:checked')) { + crit_TrainingType = document.querySelector('input[name="TrainingType"]:checked').value + if (crit_TrainingType.length > 0) { + filtre1 = result.filter((maformation) => JSON.parse(maformation).type === crit_TrainingType); + setv11(filtre1); + } + + } else { + + filtre1 = result; + setv11(filtre1); + } + + // recuperation du filtre du support + var crit_TrainingSupport = ""; + if (document.getElementById("supoort_list_derou")) { + crit_TrainingSupport = document.getElementById("supoort_list_derou").value; + if (crit_TrainingSupport.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + + } + + + // recuperation du filtre du CPF + var crit_TrainingCPF = ""; + if (document.querySelector('input[name="TrainingCPF"]:checked')) { + crit_TrainingCPF = document.querySelector('input[name="TrainingCPF"]:checked').value + if (crit_TrainingCPF.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).cpf === crit_TrainingCPF); + + } + + // recuperation du filtre du certificat + var crit_TrainingCertif = ""; + if (document.querySelector('input[name="TrainingCertif"]:checked')) { + crit_TrainingCertif = document.querySelector('input[name="TrainingCertif"]:checked').value + if (crit_TrainingCertif.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingCertif); + + } + + // recuperation du filtre de la distance + var crit_Trainingdistance = ""; + if (document.querySelector('input[name="TrainingPresentiel"]:checked')) { + crit_Trainingdistance = document.querySelector('input[name="TrainingPresentiel"]:checked').value + if (crit_Trainingdistance.length > 0) { + // filtre presentiel = 1 + if (String(crit_Trainingdistance) === String("1")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.distantiel === "1"); + setv11(filtre1); + + } + else if (String(crit_Trainingdistance) === String("0")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.presentiel === "1"); + setv11(filtre1); + } + } + + } + + // Recup du filtre de prix + var crit_TrainingPrice = range_price.min + ":" + range_price.max; + + if (range_price.min && range_price.max) { + filtre1 = filtre1.filter((maformation) => Number(JSON.parse(maformation).price) >= Number(range_price.min) && + Number(JSON.parse(maformation).price) <= Number(range_price.max) + ); + + setv11(filtre1); + } + + + setnewresult(filtre1); + //alert("crit_TrainingCertif = " + crit_TrainingCertif + " ET crit_TrainingSupport = " + crit_TrainingSupport + " ET crit_TrainingType = " + crit_TrainingType); + //console.log("############################ filtre1 = " + filtre1); + setCurrentPage2(1); + //console.log(" ????????????????????????????filtre2 = "+filtre2); + + if (myelement) { + // 👇 Will scroll smoothly to the top of the next section + myelement.scrollIntoView({ behavior: 'smooth' }); + + } + + + return; + + + + + + } + + + function TrainingLangHandle(event) { + setTrainingLang(event.target.value); + alert("newresult newresultnewresultnewresult = " + newresult); + } + + + function TrainingPriceHandle(event) { + + + var crit_TrainingPrice = range_price.min + ":" + range_price.max; + + setTrainingPrice(event.target.value); + var toto = ""; + var filtre1 = ""; + + + var crit_TrainingPrice = range_price.min + ":" + range_price.max; + + var myprices = crit_TrainingPrice.split(':'); + if (range_price.min && range_price.max) { + filtre1 = result.filter((maformation) => Number(JSON.parse(maformation).price) >= Number(range_price.min) && + Number(JSON.parse(maformation).price) <= Number(range_price.max) + ); + //console.log(" PRICEEEEEEEEEEEEEEEE = "+filtre1); + setv11(filtre1); + } + else { + //alert(" Annulation du filtre prix"); + filtre1 = result; + setv11(filtre1); + } + + + + // Recuperation des autres filtres. + // recuperation du filtre du support + var crit_TrainingSupport = ""; + if (document.getElementById("supoort_list_derou")) { + crit_TrainingSupport = document.getElementById("supoort_list_derou").value; + if (crit_TrainingSupport.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + } + + // recuperation du filtre du CPF + var crit_TrainingCPF = ""; + if (document.querySelector('input[name="TrainingCPF"]:checked')) { + crit_TrainingCPF = document.querySelector('input[name="TrainingCPF"]:checked').value + if (crit_TrainingCPF.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).cpf === crit_TrainingCPF); + + } + + + // recuperation du filtre du certification + var crit_TrainingCertif = ""; + if (document.querySelector('input[name="TrainingCertif"]:checked')) { + crit_TrainingCertif = document.querySelector('input[name="TrainingCertif"]:checked').value; + if (crit_TrainingCertif.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingCertif); + } + + // recuperation du filtre du type (cours, tuto, etc) + var crit_TrainingType = ""; + if (document.querySelector('input[name="TrainingType"]:checked')) { + crit_TrainingType = document.querySelector('input[name="TrainingType"]:checked').value; + if (crit_TrainingType.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).type === crit_TrainingType); + } + + // recuperation du filtre de la distance + var crit_Trainingdistance = ""; + if (document.querySelector('input[name="TrainingPresentiel"]:checked')) { + crit_Trainingdistance = document.querySelector('input[name="TrainingPresentiel"]:checked').value; + if (crit_Trainingdistance.length > 0) { + // filtre presentiel = 1 + if (String(crit_Trainingdistance) === String("1")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.distantiel === "1"); + setv11(filtre1); + + } + else if (String(crit_Trainingdistance) === String("0")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.presentiel === "1"); + setv11(filtre1); + } + } + + } + + + setnewresult(filtre1); + setCurrentPage2(1); + + } + + + // Traitement du filtre presentiel / distantiel + function TrainingDistancielHandle(event) { + + + isonsite(); + setlieuchecked("1"); + var toto = ""; + var filtre1 = ""; + var filtre0 = []; + var filtre01 = []; + var my_ville = ""; + var my_cp = ""; + + if (document.getElementById("ville")) { + my_ville = crit_TrainingSupport = document.getElementById("ville").value; + my_ville = my_ville.trim(); + + } + + if (document.getElementById("zip_code")) { + my_cp = crit_TrainingSupport = document.getElementById("zip_code").value; + my_cp = my_cp.trim(); + + } + + var crit_Trainingdistance = ""; + // Recuperation du filtre principale modifié dans ce event (distance) + if (document.querySelector('input[name="TrainingPresentiel"]:checked')) { + crit_Trainingdistance = document.querySelector('input[name="TrainingPresentiel"]:checked').value; + //alert("crit_Trainingdistance = " + crit_Trainingdistance); + if (crit_Trainingdistance.length > 0) { + // filtre presentiel = 1 + + if (String(crit_Trainingdistance) === String("1")) { + + filtre1 = result.filter((maformation) => JSON.parse(maformation).presentiel.distantiel === "1"); + setv11(filtre1); + + } + else if (String(crit_Trainingdistance) === String("0")) { + filtre1 = result.filter((maformation) => JSON.parse(maformation).presentiel.presentiel === "1"); + + // Traitement du nom de la ville + if (my_ville.length > 3) { + + var filtre2 = filtre1.map(obj => { + + if (JSON.parse(obj).datelieu) { + + var tmp = JSON.parse(obj).datelieu.length + var i = 0; + while (i < tmp) { + //console.log(JSON.parse(obj).datelieu[i]); + //console.log(" ville =" + JSON.parse(obj).datelieu[i].ville) + if (JSON.parse(obj).datelieu[i].ville === my_ville) { + return obj + } + i++; + } + } + + }); + + var filtre3 = filtre2.filter(function (element) { + return element !== undefined; + }); + + + filtre1 = filtre3; + } + + // Traitement du zip code + if (my_cp.length > 2) { + + var filtre2 = filtre1.map(obj => { + + if (JSON.parse(obj).datelieu) { + + var tmp = JSON.parse(obj).datelieu.length + var i = 0; + while (i < tmp) { + //console.log(JSON.parse(obj).datelieu[i]); + //console.log(" ville =" + JSON.parse(obj).datelieu[i].ville) + if (JSON.parse(obj).datelieu[i].code_postal.startsWith(my_cp)) { + return obj + } + i++; + } + } + + }); + + var filtre3 = filtre2.filter(function (element) { + return element !== undefined; + }); + + + filtre1 = filtre3; + } + + setv11(filtre1); + + + } + else if (String(crit_Trainingdistance) === String("NA")) { + + filtre1 = result; + setv11(filtre1); + } + } + else if (crit_Trainingdistance.length <= 0) { + + filtre1 = result; + setv11(filtre1); + } + } + + + /* Recuperation des autres filtres */ + // recuperation du filtre du support + var crit_TrainingSupport = ""; + if (document.getElementById("supoort_list_derou")) { + crit_TrainingSupport = document.getElementById("supoort_list_derou").value; + if (crit_TrainingSupport.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + } + + // recuperation du filtre du certification + var crit_TrainingCertif = ""; + if (document.querySelector('input[name="TrainingCertif"]:checked')) { + crit_TrainingCertif = document.querySelector('input[name="TrainingCertif"]:checked').value; + if (crit_TrainingCertif.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingCertif); + } + + // recuperation du filtre du CPF + var crit_TrainingCPF = ""; + if (document.querySelector('input[name="TrainingCPF"]:checked')) { + crit_TrainingCPF = document.querySelector('input[name="TrainingCPF"]:checked').value + if (crit_TrainingCPF.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).cpf === crit_TrainingCPF); + + } + + + // recuperation du filtre du type (cours, tuto, etc) + var crit_TrainingType = ""; + if (document.querySelector('input[name="TrainingType"]:checked')) { + crit_TrainingType = document.querySelector('input[name="TrainingType"]:checked').value; + if (crit_TrainingType.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).type === crit_TrainingType); + } + + // Recup du filtre de prix + var crit_TrainingPrice = range_price.min + ":" + range_price.max; + + if (range_price.min && range_price.max) { + filtre1 = filtre1.filter((maformation) => Number(JSON.parse(maformation).price) >= Number(range_price.min) && + Number(JSON.parse(maformation).price) <= Number(range_price.max) + ); + + setv11(filtre1); + } + + + setnewresult(filtre1); + setCurrentPage2(1); + } + + + + function displayAllClassesHandle(event) { + setdisplayAllClasses(event.target.checked); + if (event.target.checked == true) + document.getElementById("SearchText").disabled = true; + else + document.getElementById("SearchText").disabled = false; + } + + + const [suggestedwords, setsuggestedwords] = useState([]); + const [texte, settext] = useState(""); + + const [cities, setcities] = useState(""); + + const [suggestedcities, setsuggestedcities] = useState([]); + + + + useEffect(() => { + + var ip = ""; + async function fetchData() { + // const result = await axios('https://geolocation-db.com/json/',); + + + + /* setuserIp("172.71.122.128"); + setcountry_code("FR"); + setcountry_name("France"); + setcity("Paris"); + setpostal("75001"); + setlatitude("48.861000061035156"); + setlongitude("2.3380000591278076"); + setIPv4("172.71.122.128"); + setstate("France");*/ + + let windowWidth = window.innerWidth; + + if (showelement === "init") { + + if (windowWidth < 601) { + setismobilephone(true); + setshowelement("false"); + settextplaceholder("Plus de 10 000 formations (gratuites, payantes...)"); + + } else if (windowWidth >= 601) { + setismobilephone(false); + setshowelement("true"); + //settextplaceholder("Ex : graphiste ...sur plus de 10 000 formations (gratuites, payantes,..)"); + settextplaceholder("Recherche par Titre, Description, Contenu video ... sur plus de 10 000 formations (gratuites, payantes,..)"); + } + } + + + if (categorie && String(categorie).length > 0) { + + getClassByMetier_categorie(categorie); + + } + else { + + DisplayXfirstClas(result.data); + + } + } + + + fetchData(); + async function loadSuggestedWord() { + var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Suggested_Word/"; + //alert(" URL = "+process.env.REACT_APP_API_URL + "myclass/api/Get_Suggested_Word/"); + //console.log(" ### URL ##### = "+process.env.REACT_APP_API_URL + "myclass/api/Get_Suggested_Word/"); + + var form = new FormData(); + + fetch( + process.env.REACT_APP_API_URL + "myclass/api/Get_Suggested_Word/", + { + method: 'POST', + + } + ).then((response) => response.json()) + .then((result) => { + //console.log('Success:', result['message']); + setsuggestedwords(result['message']); + + + }) + .catch((error) => { + console.error('Error:'); + }); + + } + loadSuggestedWord(); + + async function loadSuggestedFrCities() { + + fetch( + process.env.REACT_APP_API_URL + "myclass/api/Get_Suggested_Fr_Cities/", + { + method: 'POST', + + } + ).then((response) => response.json()) + .then((result) => { + //console.log(' loadSuggestedFrCities CITIES = Success:', result['message']); + setsuggestedcities(result['message']); + //console.log(" CITIES = " + result['message']); + + }) + .catch((error) => { + console.error('Error:'); + }); + + } + loadSuggestedFrCities(); + + + async function loadDomainMetier() { + + var form = new FormData(); + + fetch( + process.env.REACT_APP_API_URL + "myclass/api/get_List_domaine_metier/", + { + method: 'POST', + + } + ).then((response) => response.json()) + .then((result) => { + //console.log('### loadDomainMetier Success:', result['message']); + setdomaine_metier(result['message']); + var tab = []; + + result.message.map(obj => { + + if (JSON.parse(obj).label) { + + + var month = {}; + month.label = JSON.parse(obj).label; + month.value = JSON.parse(obj).value; + month.domaine = JSON.parse(obj).domaine; + tab.push({ ...month }); + } + }); + + + setdomaine_v11(tab); + setdomaine_v11_orig(tab); + setdomaine_metier(tab); + setdomaine_metier_orig(tab); + + + }) + .catch((error) => { + console.error('Error:', error); + }); + + } + //loadDomainMetier(); + + + async function loadDomain() { + + var form = new FormData(); + + fetch( + process.env.REACT_APP_API_URL + "myclass/api/get_List_domaine_formation/", + { + method: 'POST', + + } + ).then((response) => response.json()) + .then((result) => { + //console.log('### loadDomainMetier Success:', result['message']); + setdomaine_metier(result['message']); + + }) + .catch((error) => { + console.error('loadDomain :', error); + + }); + + } + + loadDomain(); + + const listener = event => { + if (event.code === "Enter" || event.code === "NumpadEnter") { + event.preventDefault(); + searchFunction(); + } + }; + document.addEventListener("keydown", listener); + + + if (typeof (stored_user) === "undefined" || String(stored_user) === '') { + setuserconnected("0"); + } else { + setuserconnected("1"); + } + + + setinitAllfiter(); + + whosisconnected(); + + if (categorie) { + //console.log(" ### categorie = ", categorie); + setmymetier(categorie); + } else { + setmymetier(); + } + + //document.getElementById("_1234").checked = true; + + + + }, [initAllfiter, categorie]); + + + // Cette fonction reinitialise les filtres + function InitAllfilters() { + //document.getElementById("TrainingCertif").selectedv = 0; + const $select = document.querySelector('#TrainingCertif'); + $select.value = '' + + const $select2 = document.querySelector('#TrainingSupport'); + $select2.value = '' + + const $select3 = document.querySelector('#TrainingType'); + $select3.value = '' + + const $select4 = document.querySelector('#TrainingPresentiel'); + $select4.value = 'NA' + + const $select5 = document.querySelector('#TrainingPrice'); + $select5.value = 'NA' + + + + } + + function DisplayClassByDomainFilter() { + var tab_domaine = list_domaine.split(";") + //console.log("tab_domaine = ", tab_domaine) + + if (tab_domaine.length <= 0) { + setdomaine_v11(domaine_v11_orig); + DisplayXfirstClas(); + return; + } + + + + } + + const handleChangeMetier = (event) => { + + var local_list_metier = "" + + + for (let i = 0; i < event.length; i++) { + const label = event[i].label; + const value = event[i].value; + + local_list_metier += value + ";" + + } + + //console.log(" ### local_list_metier = ",local_list_metier); + setlist_metier(local_list_metier); + //TrainingMetierHandle(); + + // Verification si on a une valeur + if (event.length > 0 && local_list_metier.trim().length > 0) { + getClassByMetier(local_list_metier); + } else { + DisplayClassByDomainFilter(); + } + + } + + + + const [domaine_metier, setdomaine_metier] = useState([]); + const [domaine_metier_orig, setdomaine_metier_orig] = useState([]); + + const [domaine_formation, setdomaine_formation] = useState([]); + + const [domaine_v11, setdomaine_v11] = useState(""); + const [domaine_v11_orig, setdomaine_v11_orig] = useState(""); + + const [list_domaine, setlist_domaine] = useState(""); + const [list_metier, setlist_metier] = useState(""); + + const handleChangeDomaine = (event) => { + + + if (event.length <= 0) { + setdomaine_v11(domaine_v11_orig); + DisplayXfirstClas(); + return; + } + //console.log(domaine_metier); + //console.log(" taille =" + event.length); + //console.log(domaine_v11_orig); + + var tt = domaine_v11_orig; + var dump = []; + var local_list_domaine = "" + + + for (let i = 0; i < event.length; i++) { + const label = event[i].label; + const value = event[i].value; + + local_list_domaine += value + ";" + + tt = domaine_v11_orig.filter((maformation) => maformation.domaine === String(value)); + //console.log(" TT = ", tt); + + for (let i2 = 0; i2 < tt.length; i2++) { + //console.log(" push de ", tt[i2]) + dump.push(tt[i2]); + } + + setlist_domaine(local_list_domaine); + setdomaine_v11(dump); + } + + getClassByDomaine(local_list_domaine); + + + + } + + + + const currentTableData2 = useMemo(() => { + if (newresult) { + const firstPageIndex = (currentPage2 - 1) * PageSize; + const lastPageIndex = firstPageIndex + PageSize; + setfin(1); + return newresult.slice(firstPageIndex, lastPageIndex); + } + + + if (result) { + const firstPageIndex = (currentPage2 - 1) * PageSize; + const lastPageIndex = firstPageIndex + PageSize; + setfin(1); + return result.slice(firstPageIndex, lastPageIndex); + } + else { + return []; + setfin(0); + } + }, [currentPage2]); + + function searchFunction(e) { + // Nettoyage du resultat precedent. + setResult([]); + + var crit_TrainingSupport = ""; + var crit_TrainingType = ""; + var crit_TrainingCertif = ""; + var crit_TrainingLang = ""; + var crit_TrainingPresentiel = ""; + var crit_TrainingPrice = ""; + var crit_TrainingDuration = ""; + var my_ville = ""; + + var my_cp = ""; + + var my_domaine = ""; + + + + if (document.getElementById("searchdomain")) + my_domaine = document.getElementById("searchdomain").value; + + + + //Get Criterias + var crit_SearchText = document.getElementById("SearchText").value; + + if (document.getElementById("TrainingSupport")) + crit_TrainingSupport = document.getElementById("TrainingSupport").value; + + if (document.getElementById("TrainingType")) + crit_TrainingType = document.getElementById("TrainingType").value; + + if (document.getElementById("TrainingCertif")) + crit_TrainingCertif = document.getElementById("TrainingCertif").value; + if (crit_TrainingCertif.length == 0) + crit_TrainingCertif = "NA"; + + + if (document.getElementById("TrainingLang")) + crit_TrainingLang = document.getElementById("TrainingLang").value; + + if (document.getElementById("TrainingPresentiel")) + crit_TrainingPresentiel = document.getElementById("TrainingPresentiel").value; + + if (document.getElementById("TrainingPrice")) + crit_TrainingPrice = document.getElementById("TrainingPrice").value; + + if (document.getElementById("duration")) + crit_TrainingDuration = document.getElementById("duration").value; + + + if (document.getElementById("ville")) { + my_ville = crit_TrainingSupport = document.getElementById("ville").value; + + } + + if (document.getElementById("zip_code")) { + my_cp = crit_TrainingSupport = document.getElementById("zip_code").value; + + } + + + var crit_Trainingdistance = Trainingdistance; + + //console.log(" my_domaine = ", my_domaine); + + /*console.log('SearchText = ' + crit_SearchText + ' - TrainingSupport = ' + crit_TrainingSupport + + ' - TrainingType = ' + crit_TrainingType + ' - TrainingCertif ' + crit_TrainingCertif + + " Langue = " + crit_TrainingLang + " TrainingPrice = " + crit_TrainingPrice + + " - Distance = " + crit_Trainingdistance + " -- Presentiel :" + crit_TrainingPresentiel + + " - Duration = " + crit_TrainingDuration + " - stored_user_cookie = " + stored_user);*/ + + + var form = new FormData(); + form.append("search_text", crit_SearchText); + + + var my_local_user_connect; + var my_local_part_connect; + if (typeof (stored_user) === "undefined" || String(stored_user) === '') { + my_local_user_connect = 0; + } else { + my_local_user_connect = 1; + } + + if (typeof (stored_part) === "undefined" || String(stored_part) === '') { + my_local_part_connect = 0; + } else { + my_local_part_connect = 1; + } + + + + if (String(my_local_user_connect) === "1") { + form.append("token", stored_user); + form.append("connection_type", "user"); + } + else if (String(my_local_part_connect) === "1") { + form.append("token", stored_part); + form.append("connection_type", "partner"); + } + else { + form.append("token", ""); + form.append("connection_type", ""); + } + form.append("certif", crit_TrainingCertif); + form.append("support", crit_TrainingSupport); + form.append("type", crit_TrainingType); + form.append("lang", crit_TrainingLang); + form.append("price", crit_TrainingPrice); + form.append("distance", crit_Trainingdistance); + form.append("duration", crit_TrainingDuration); + + + // Ajout des info IP user + form.append("user_ip", IPv4); + form.append("user_country_code", country_code); + form.append("user_country_name", country_name); + form.append("user_city", city); + form.append("user_postal", postal); + form.append("user_latitude", latitude); + form.append("user_longitude", longitude); + form.append("user_state", state); + + + var myurl = "" + if (displayAllClasses == true) { + myurl = process.env.REACT_APP_API_URL + "myclass/api/get_all_class/"; + } + else { + myurl = process.env.REACT_APP_API_URL + "myclass/api/recherche_text_simple/"; + + } + + //alert("myurl = "+myurl); + 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); + setmyApiResponse("True"); + setResult(res.data.message) + + //Verification si le resutlat est vide + if (res.data.message.length <= 0) { + setbesoinaiderecherche("1"); + } + /*if (scrollDiv.current) { + scrollDiv.current.scrollIntoView({ behavior: "smooth" }); + }*/ + + var myelement; + + if (document.getElementById('rech_middlebox')) { + myelement = document.getElementById('rech_middlebox'); + } + + if (myelement) { + myelement.scrollIntoView({ behavior: 'smooth' }); + } + + } + + else { + //console.log(" In test res.data.status = " + res.data.status); + //console.log(" In test res.data.message = " + res.data.message); + setmyApiResponse("False"); + //setmyApimyApiMessage("") + //textInput.current.focus(); + } + + + }).catch((error) => { + // console.warn('Not good man :( mysearchtext = '); + setmyApiResponse("False"); + //setmyApimyApiMessage("") + }) + + // window.scrollTo(0, 600); + + + + + } + + // Cette fonction affiche les X premieres formations + function DisplayXfirstClas(ip) { + + // Nettoyage du resultat precedent. + setResult([]); + + + + //Get Criterias + var crit_SearchText = ""; + var myurl = ""; + + if (typeof (NewSearchText) === "undefined" || String(NewSearchText) === '') { + crit_SearchText = ""; + myurl = process.env.REACT_APP_API_URL + "myclass/api/get_all_class/"; + + + } else { + crit_SearchText = NewSearchText; + myurl = process.env.REACT_APP_API_URL + "myclass/api/recherche_text_simple/"; + + } + + + + var form = new FormData(); + form.append("search_text", crit_SearchText); + + + var my_local_user_connect; + var my_local_part_connect; + + if (typeof (stored_user) === "undefined" || String(stored_user) === '') { + my_local_user_connect = 0; + } else { + my_local_user_connect = 1; + } + + if (typeof (stored_part) === "undefined" || String(stored_part) === '') { + my_local_part_connect = 0; + } else { + my_local_part_connect = 1; + } + + if (String(my_local_user_connect) === "1") { + form.append("token", stored_user); + form.append("connection_type", "user"); + } + else if (String(my_local_part_connect) === "1") { + form.append("token", stored_part); + form.append("connection_type", "partner"); + } + else { + form.append("token", ""); + form.append("connection_type", ""); + } + + form.append("certif", ""); + form.append("support", ""); + form.append("type", ""); + form.append("lang", ""); + form.append("price", ""); + form.append("distance", ""); + form.append("duration", ""); + form.append("cpf", ""); + + + + // Ajout des info IP user + if (ip) { + //console.log(" ### with IP"); + form.append("user_ip", ip.IPv4); + form.append("user_country_code", ip.country_code); + form.append("user_country_name", ip.country_name); + form.append("user_city", ip.city); + form.append("user_postal", ip.postal); + form.append("user_latitude", ip.latitude); + form.append("user_longitude", ip.longitude); + form.append("user_state", ip.state); + } + else { + //console.log(" ### with OUT IP"); + form.append("user_ip", IPv4); + form.append("user_country_code", country_code); + form.append("user_country_name", country_name); + form.append("user_city", city); + form.append("user_postal", postal); + form.append("user_latitude", latitude); + form.append("user_longitude", longitude); + form.append("user_state", state); + // alert(" rrtt "); + } + + + //alert("myurl = " + myurl); + 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 DisplayXfirstClas res.data.message = " + res.data.message); + + setmyApiResponse("True"); + setResult(res.data.message) + // textInput.current.focus(); + setbesoinaiderecherche(""); + + } + else { + //console.log(" In test res.data.status = " + res.data.status); + //console.log(" In test res.data.message = " + res.data.message); + setmyApiResponse("False"); + //setmyApimyApiMessage("") + //textInput.current.focus(); + } + + + }).catch((error) => { + // console.warn('Not good man :( mysearchtext = '); + setmyApiResponse("False"); + //setmyApimyApiMessage("") + }) + + + } + + function trier(e) { + + setistrier(); + var trierpar = "" + if (document.getElementById("trierpar")) + trierpar = document.getElementById("trierpar").value; + + if (String(trierpar) === String("duration")) { + setCurrentPage2(1); + setCurrentPage(1); + + if (typeof (newresult) === "undefined" || String(newresult) === '') { + + //console.log(" AVANT TRIE : [0].duration = " + JSON.parse(result[0]).duration + " - [1].duration = " + JSON.parse(result[1]).duration) + result.sort(function (a, b) { + return JSON.parse(a).duration - JSON.parse(b).duration; + }); + + //console.log("APRES TRIE : [0].duration = " + JSON.parse(result[0]).duration + " - [1].duration = " + JSON.parse(result[1]).duration) + setistrier("1"); + } + else if (typeof (newresult) !== "undefined" || newresult.length > 0) { + newresult.sort(function (a, b) { + return JSON.parse(a).duration - JSON.parse(b).duration; + }); + } + } + + else if (String(trierpar) === String("price")) { + setCurrentPage2(1); + + if (typeof (newresult) === "undefined" || String(newresult) === '') { + //console.log(" AVANT TRIE : [0].price = " + JSON.parse(result[0]).price + " - [1].price = " + JSON.parse(result[1]).price); + result.sort(function (a, b) { + return JSON.parse(a).price - JSON.parse(b).price; + }); + //console.log("APRES TRIE : [0].price = " + JSON.parse(result[0]).price + " - [1].price = " + JSON.parse(result[1]).price); + setistrier("2"); + } + else if (typeof (newresult) !== "undefined" || newresult.length > 0) { + newresult.sort(function (a, b) { + return JSON.parse(a).price - JSON.parse(b).price; + }); + } + } + + else if (String(trierpar) === String("note")) { + setCurrentPage2(1); + + if (typeof (newresult) === "undefined" || String(newresult) === '') { + //console.log(" AVANT TRIE : [0].price = " + JSON.parse(result[0]).price + " - [1].price = " + JSON.parse(result[1]).price); + result.sort(function (a, b) { + return JSON.parse(b).note - JSON.parse(a).note; + }); + //console.log("APRES TRIE : [0].price = " + JSON.parse(result[0]).price + " - [1].price = " + JSON.parse(result[1]).price); + setistrier("2"); + } + else if (typeof (newresult) !== "undefined" || newresult.length > 0) { + newresult.sort(function (a, b) { + return JSON.parse(b).note - JSON.parse(a).note; + }); + } + } + + } + + + function getClassByMetier_categorie(mycate) { + + var mymetier = mycate; + + + // Nettoyage du resultat precedent. + setResult([]); + var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_class_by_metier/"; + + /*if (mymetier === "tout") { + //alert(" tout et sortir"); + setinitAllfiter("1"); + return; + + }*/ + + var form = new FormData(); + form.append("metier", mymetier); + form.append("token", ""); + + + //alert("myurl = "+myurl); + axios.post(myurl, form).then(res => { + if (String(res.data.status) != String("false")) { + + setmyApiResponse("True"); + setResult(res.data.message) + //textInput.current.focus(); + setbesoinaiderecherche(""); + setnewresult(""); + //console.log(" In getClassByMetier res.data.status = " + res.data.status); + //console.log(" In getClassByMetier res.data.message = " + res.data.message); + //setnewresult(res.data.message); + setCurrentPage2(1); + if (scrollDiv.current) { + scrollDiv.current.scrollIntoView({ behavior: "smooth" }); + } + + // reinitialisation de tous les filtre + + //setmyApimyApiMessage("OK") + //console.log("taille = "+res.data.message.length); + } + else { + //console.log(" In getClassByMetier res.data.status = " + res.data.status); + //console.log(" In getClassByMetier res.data.message = " + res.data.message); + setmyApiResponse("False"); + //setmyApimyApiMessage("") + //textInput.current.focus(); + } + + + }).catch((error) => { + console.warn(' getClassByMetier : Not good man :( mysearchtext = '); + setmyApiResponse("False"); + //setmyApimyApiMessage("") + }) + + } + + + function getClassByDomaine(List_Domaine) { + + // Nettoyage du resultat precedent. + setResult([]); + var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_class_by_domaine/"; + + /*if (mymetier === "tout") { + //alert(" tout et sortir"); + setinitAllfiter("1"); + return; + + }*/ + + var form = new FormData(); + form.append("domaine", List_Domaine); + form.append("token", ""); + + + //alert("myurl = "+myurl); + axios.post(myurl, form).then(res => { + if (String(res.data.status) != String("false")) { + + setmyApiResponse("True"); + setResult(res.data.message) + //textInput.current.focus(); + setbesoinaiderecherche(""); + setnewresult(""); + //console.log(" In getClassByDomaine res.data.status = " + res.data.status); + //console.log(" In getClassByDomaine res.data.message = " + res.data.message); + //setnewresult(res.data.message); + setCurrentPage2(1); + if (scrollDiv.current) { + scrollDiv.current.scrollIntoView({ behavior: "smooth" }); + } + + // reinitialisation de tous les filtre + + //setmyApimyApiMessage("OK") + //console.log("taille = "+res.data.message.length); + } + else { + //console.log(" In getClassByMetier res.data.status = " + res.data.status); + //console.log(" In getClassByMetier res.data.message = " + res.data.message); + setmyApiResponse("False"); + //setmyApimyApiMessage("") + //textInput.current.focus(); + } + + + }).catch((error) => { + console.warn(' getClassByMetier : Not good man :( mysearchtext = '); + setmyApiResponse("False"); + //setmyApimyApiMessage("") + }) + + } + + function ReinitFilters() { + // Reinitialisation des filtre + annulefiltrecertif(); + annulefiltresupportchecked(); + annulefiltretypechecked(); + annulefiltrelieuchecked(); + annulefiltrecpf(); + } + + const [mymetier, setmymetier] = useState(""); + + function getClassByMetier(my_liste_metier) { + + + if (NewSearchText && NewSearchText.length > 2) { + alert(" Réinitialiser les filtres pour utiliser cette fonctionalité"); + return; + } + var myelement; + + if (document.getElementById('rech_middlebox')) { + myelement = document.getElementById('rech_middlebox'); + } + + var check_metier = ""; + if (document.querySelector('input[name="metier_radio"]:checked')) { + + check_metier = document.querySelector('input[name="metier_radio"]:checked').value; + } + + setmymetier(check_metier); + ReinitFilters(); + + + if (check_metier === "tout") { + // Nettoyage du resultat precedent. + setResult([]); + setnewresult(""); + //alert(" tout et sortir"); + + setdomaine_v11(domaine_v11_orig); + DisplayXfirstClas(); + //setResult([]); + + /*const pieces = window.location.href.split("/") + const last = pieces[pieces.length - 1] + const last2 = pieces[pieces.length - 2] + + if (last === "Recherche_new_v2" || last2 === "Recherche_new_v2") { + console.log(" ## RELAOD"); + window.location.reload(true); + } else { + + + history.push("/Recherche_new_v2"); + } + */ + if (myelement) { + // 👇 Will scroll smoothly to the top of the next section + myelement.scrollIntoView({ behavior: 'smooth' }); + } + return; + + } + + + + // Nettoyage du resultat precedent. + setResult([]); + var myurl = process.env.REACT_APP_API_URL + "myclass/api/get_class_by_metier/"; + + + var form = new FormData(); + form.append("metier", check_metier); + form.append("token", ""); + + //console.log(" recherif pour metier ", check_metier); + //alert("myurl = "+myurl); + axios.post(myurl, form).then(res => { + if (String(res.data.status) != String("false")) { + + setmyApiResponse("True"); + setResult(res.data.message) + //textInput.current.focus(); + setbesoinaiderecherche(""); + setnewresult(""); + //console.log(" In getClassByMetier res.data.status = " + res.data.status); + //console.log(" In getClassByMetier res.data.message = " + res.data.message); + //setnewresult(res.data.message); + setCurrentPage2(1); + if (scrollDiv.current) { + scrollDiv.current.scrollIntoView({ behavior: "smooth" }); + } + + // reinitialisation de tous les filtre + + //setmyApimyApiMessage("OK") + //console.log("taille = "+res.data.message.length); + } + else { + //console.log(" In getClassByMetier res.data.status = " + res.data.status); + //console.log(" In getClassByMetier res.data.message = " + res.data.message); + setmyApiResponse("False"); + //setmyApimyApiMessage("") + //textInput.current.focus(); + } + + + }).catch((error) => { + console.warn(' getClassByMetier : Not good man :( mysearchtext = '); + setmyApiResponse("False"); + //setmyApimyApiMessage("") + }) + + //console.log(" ICI MOVE TO "); + if (myelement) { + // 👇 Will scroll smoothly to the top of the next section + myelement.scrollIntoView({ behavior: 'smooth' }); + } + + } + + + const [PartnerMenu, setPartnerMenu] = React.useState(null); + const [AccountMenu, setAccountMenu] = React.useState(null); + const [ProduitMenu, setproduitMenu] = React.useState(null); + const [AvisMenu, setavisMenu] = React.useState(null); + + + + const PartnerMenu_Close = () => { + setPartnerMenu(null); + }; + + const AccountMenu_Close = () => { + setAccountMenu(null); + }; + + + const ProduitMenu_Close = () => { + setproduitMenu(null); + }; + + const handlePartnerMenu = (event) => { + setPartnerMenu(event.currentTarget); + }; + + const handleAccountMenu = (event) => { + setAccountMenu(event.currentTarget); + }; + + + const handleProduitMenu = (event) => { + setproduitMenu(event.currentTarget); + }; + + + + + const handleClose_Account = () => { + //alert(" my account"); + setAccountMenu(null); + }; + + const handleBlogMenu = (event) => { + setproduitMenu(event.currentTarget); + history.push("/Recherche-Article-formation") + }; + + const handleQuisommesNousMenu = (event) => { + setproduitMenu(event.currentTarget); + history.push("/QuiSommesNous") + }; + + const handleAccountConnexion = () => { + setAccountMenu(null); + history.push("/Connexion") + }; + + const handleMyAccount = () => { + setAccountMenu(null); + history.push("/mysy-user-account") + }; + + + const handleMyPartnerAccount = () => { + setAccountMenu(null); + history.push("/Partner") + }; + + + const handleAccountCreation = () => { + setAccountMenu(null); + history.push("/create_account") + }; + + const handlePartnerConnexion = () => { + setAccountMenu(null); + history.push("/PartnerLogin") + }; + + + const handleProduitService = () => { + setproduitMenu(null); + history.push("/Produits-Services/") + }; + + const handleAvis = () => { + setavisMenu(null); + history.push("/Recherche-Article-formation") + }; + + function test() { + alert(" coucou"); + } + + + const [someoneconnected, setsomeoneconnected] = useState("0"); + const [partnerconnected, setpartnerconnected] = useState("0"); + const [cookie, setCookie, removeCookie] = useCookies(['tokenmysych']); + + const stored_part = getCookie('tokenmysypart'); + + + + function whosisconnected() { + var local_user_connect = 0; + var local_part_connect = 0; + + if (typeof (stored_user) === "undefined" || String(stored_user) === '') { + setuserconnected("0"); + local_user_connect = 0; + } else { + setuserconnected("1"); + setsomeoneconnected("1"); + local_user_connect = 1; + //alert(" user connected OK"); + } + + if (typeof (stored_part) === "undefined" || String(stored_part) === '') { + setpartnerconnected("0"); + local_part_connect = 0; + } else { + setpartnerconnected("1"); + setsomeoneconnected("1"); + local_part_connect = 1; + //alert(" partner connected OK"); + } + } + + function handleAccountLogout() { + + if (String(userconnected) === String("1")) { + user_logout(); + } + else if (String(partnerconnected) === String("1")) { + part_logout(); + } + } + + function user_logout_confirmation() { + /* si c'est une connexion partner qui est active */ + if (typeof (stored_user) != "undefined") { + setCookie("tokenmysych", ""); + } + history.push("/recherche-formation"); + } + + function user_logout() { + confirmAlert({ + title: '', + message: 'Confirmez la deconnexion (user)', + buttons: [ + { + label: 'Oui', + onClick: () => user_logout_confirmation() + }, + { + label: 'Non', + onClick: () => { return } + } + ] + }); + } + + + + + function handleAccountConnexion_v2() { + + if (String(userconnected) === String("1")) { + handleMyAccount(); + } + else if (String(partnerconnected) === String("1")) { + handleMyPartnerAccount(); + } + } + + + function part_logout_confirmation() { + /* si c'est une connexion partner qui est active */ + if (typeof (stored_part) != "undefined") { + const stored_cookie = getCookie('tokenmysypart'); + var acces_right_token_name = stored_cookie + "_uar"; + + setpartCookie("tokenmysypart", "", { path: '/' }); + + setpartCookie(acces_right_token_name, "", { path: '/' }); + removeCookie(acces_right_token_name, { path: '/' }); + + } + setsomeoneconnected("0"); + setDialog_1_open(false); + history.push("/recherche-formation"); + } + + function part_logout() { + confirmAlert({ + title: '', + message: 'Confirmez la deconnexion (pro)', + buttons: [ + { + label: 'Oui', + onClick: () => part_logout_confirmation() + }, + { + label: 'Non', + onClick: () => { return } + } + ] + }); + } + + const [range_price, setrange_price] = useState({ min: 0, max: 9999, }); + function rangevalue() { + alert(range_price.max + " - " + range_price.min); + //console.log(" range = " + range_price); + } + + const [trainingonsite, settrainingonsite] = useState() + function isonsite() { + settrainingonsite(document.querySelector('input[name="TrainingPresentiel"]:checked').value) + + } + + const [certifchecked, setcertifchecked] = useState(); + function annulefiltrecertif() { + if (document.querySelector('input[name="TrainingCertif"]:checked')) { + var radio = document.querySelector('input[name="TrainingCertif"]:checked'); + radio.checked = false; + setcertifchecked(""); + + var toto = ""; + var filtre1 = ""; + + + // Reinitialisation + filtre1 = result; + setv11(filtre1); + + + // recuperation du filtre du support + var crit_TrainingSupport = ""; + if (document.getElementById("supoort_list_derou")) { + crit_TrainingSupport = document.getElementById("supoort_list_derou").value; + if (crit_TrainingSupport.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + + } + + // recuperation du filtre du CPF + var crit_TrainingCPF = ""; + if (document.querySelector('input[name="TrainingCPF"]:checked')) { + crit_TrainingCPF = document.querySelector('input[name="TrainingCPF"]:checked').value; + if (crit_TrainingCPF.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).cpf === crit_TrainingCPF); + + } + + // recuperation du filtre du type + var crit_TrainingType = ""; + if (document.querySelector('input[name="TrainingType"]:checked')) { + crit_TrainingType = document.querySelector('input[name="TrainingType"]:checked').value + if (crit_TrainingType.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingType); + + } + + // recuperation du filtre de la distance + var crit_Trainingdistance = ""; + if (document.querySelector('input[name="TrainingPresentiel"]:checked')) { + crit_Trainingdistance = document.querySelector('input[name="TrainingPresentiel"]:checked').value + if (crit_Trainingdistance.length > 0) { + // filtre presentiel = 1 + if (String(crit_Trainingdistance) === String("1")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.distantiel === "1"); + setv11(filtre1); + + } + else if (String(crit_Trainingdistance) === String("0")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.presentiel === "1"); + setv11(filtre1); + } + } + + } + + var crit_TrainingPrice = range_price.min + ":" + range_price.max; + + setnewresult(filtre1); + //alert("crit_TrainingCertif = " + crit_TrainingCertif + " ET crit_TrainingSupport = " + crit_TrainingSupport + " ET crit_TrainingType = " + crit_TrainingType); + //console.log("############################ filtre1 = " + filtre1); + setCurrentPage2(1); + //console.log(" ????????????????????????????filtre2 = "+filtre2); + + } + return; + + + } + + + function annulefiltrecpf() { + if (document.querySelector('input[name="TrainingCPF"]:checked')) { + var radio = document.querySelector('input[name="TrainingCPF"]:checked'); + radio.checked = false; + setcpfchecked(""); + + var toto = ""; + var filtre1 = ""; + + + // Reinitialisation + filtre1 = result; + setv11(filtre1); + + // recuperation du filtre de la certification + var crit_TrainingCertif = ""; + if (document.querySelector('input[name="TrainingCertif"]:checked')) { + crit_TrainingCertif = document.querySelector('input[name="TrainingCertif"]:checked').value; + if (crit_TrainingCertif.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingCertif); + + } + + // recuperation du filtre du support + var crit_TrainingSupport = ""; + if (document.getElementById("supoort_list_derou")) { + crit_TrainingSupport = document.getElementById("supoort_list_derou").value; + if (crit_TrainingSupport.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + + } + + + // recuperation du filtre du type + var crit_TrainingType = ""; + if (document.querySelector('input[name="TrainingType"]:checked')) { + crit_TrainingType = document.querySelector('input[name="TrainingType"]:checked').value + if (crit_TrainingType.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingType); + + } + + // recuperation du filtre de la distance + var crit_Trainingdistance = ""; + if (document.querySelector('input[name="TrainingPresentiel"]:checked')) { + crit_Trainingdistance = document.querySelector('input[name="TrainingPresentiel"]:checked').value + if (crit_Trainingdistance.length > 0) { + // filtre presentiel = 1 + if (String(crit_Trainingdistance) === String("1")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.distantiel === "1"); + setv11(filtre1); + + } + else if (String(crit_Trainingdistance) === String("0")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.presentiel === "1"); + setv11(filtre1); + } + } + + } + + var crit_TrainingPrice = range_price.min + ":" + range_price.max; + + setnewresult(filtre1); + //alert("crit_TrainingCertif = " + crit_TrainingCertif + " ET crit_TrainingSupport = " + crit_TrainingSupport + " ET crit_TrainingType = " + crit_TrainingType); + //console.log("############################ filtre1 = " + filtre1); + setCurrentPage2(1); + //console.log(" ????????????????????????????filtre2 = "+filtre2); + + } + return; + + + } + + const [supportchecked, setsupportchecked] = useState(); + function annulefiltresupportchecked() { + //var radio = document.querySelector('input[name="TrainingSupport"]:checked'); + //radio.checked = false; + setsupportchecked(""); + var crit_TrainingSupport = ""; + var toto = ""; + var filtre1 = ""; + + + + // Reinitialisation + filtre1 = result; + setv11(filtre1); + + // recuperation du filtre de la certification + var crit_TrainingCertif = ""; + if (document.querySelector('input[name="TrainingCertif"]:checked')) { + crit_TrainingCertif = document.querySelector('input[name="TrainingCertif"]:checked').value; + if (crit_TrainingCertif.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingCertif); + + } + + + // recuperation du filtre du CPF + var crit_TrainingCPF = ""; + if (document.querySelector('input[name="TrainingCPF"]:checked')) { + crit_TrainingCPF = document.querySelector('input[name="TrainingCPF"]:checked').value; + if (crit_TrainingCPF.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).cpf === crit_TrainingCPF); + + } + + + // recuperation du filtre du type (cours, tuto, etc) + var crit_TrainingType = ""; + if (document.querySelector('input[name="TrainingType"]:checked')) { + crit_TrainingType = document.querySelector('input[name="TrainingType"]:checked').value; + if (crit_TrainingType.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).type === crit_TrainingType); + + } + + // recuperation du filtre de la distance + var crit_Trainingdistance = ""; + if (document.querySelector('input[name="TrainingPresentiel"]:checked')) { + crit_Trainingdistance = document.querySelector('input[name="TrainingPresentiel"]:checked').value; + if (crit_Trainingdistance.length > 0) { + // filtre presentiel = 1 + if (String(crit_Trainingdistance) === String("1")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.distantiel === "1"); + setv11(filtre1); + + } + else if (String(crit_Trainingdistance) === String("0")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.presentiel === "1"); + setv11(filtre1); + } + } + } + // Recup du filtre de prix + var crit_TrainingPrice = ""; + + setnewresult(filtre1); + + //alert("crit_TrainingCertif = " + crit_TrainingCertif + " ET crit_TrainingSupport = " + crit_TrainingSupport + " ET crit_TrainingType = " + crit_TrainingType); + //console.log("############################ filtre1 = " + filtre1); + setCurrentPage2(1); + //console.log(" ????????????????????????????filtre2 = "+filtre2); + } + + + const [typechecked, settypechecked] = useState(); + function annulefiltretypechecked() { + + if (document.querySelector('input[name="TrainingType"]:checked')) { + var radio = document.querySelector('input[name="TrainingType"]:checked'); + radio.checked = false; + settypechecked(""); + + var toto = ""; + var filtre1 = ""; + var filtre2 = ""; + var filtre3 = ""; + + + + // Reinitialisation + filtre1 = result; + setv11(filtre1); + //alert("rinitialisation") + ; + + // recuperation du filtre du support + var crit_TrainingSupport = ""; + if (document.getElementById("supoort_list_derou")) { + crit_TrainingSupport = document.getElementById("supoort_list_derou").value; + if (crit_TrainingSupport.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + + } + + // recuperation du filtre du certificat + var crit_TrainingCertif = ""; + if (document.querySelector('input[name="TrainingCertif"]:checked')) { + crit_TrainingCertif = document.querySelector('input[name="TrainingCertif"]:checked').value + if (crit_TrainingCertif.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingCertif); + + } + + // recuperation du filtre du CPF + var crit_TrainingCPF = ""; + if (document.querySelector('input[name="TrainingCPF"]:checked')) { + crit_TrainingCPF = document.querySelector('input[name="TrainingCPF"]:checked').value; + if (crit_TrainingCPF.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).cpf === crit_TrainingCPF); + + } + + + // recuperation du filtre de la distance + var crit_Trainingdistance = ""; + if (document.querySelector('input[name="TrainingPresentiel"]:checked')) { + crit_Trainingdistance = document.querySelector('input[name="TrainingPresentiel"]:checked').value + if (crit_Trainingdistance.length > 0) { + // filtre presentiel = 1 + if (String(crit_Trainingdistance) === String("1")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.distantiel === "1"); + setv11(filtre1); + + } + else if (String(crit_Trainingdistance) === String("0")) { + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).presentiel.presentiel === "1"); + setv11(filtre1); + } + } + + } + + + setnewresult(filtre1); + //alert("crit_TrainingCertif = " + crit_TrainingCertif + " ET crit_TrainingSupport = " + crit_TrainingSupport + " ET crit_TrainingType = " + crit_TrainingType); + //console.log("############################ filtre1 = " + filtre1); + setCurrentPage2(1); + //console.log(" ????????????????????????????filtre2 = "+filtre2); + } + return; + + } + + + const [lieuchecked, setlieuchecked] = useState(); + function annulefiltrelieuchecked() { + if (document.querySelector('input[name="TrainingPresentiel"]:checked')) { + var radio = document.querySelector('input[name="TrainingPresentiel"]:checked'); + radio.checked = false; + setlieuchecked(""); + var toto = ""; + var filtre1 = ""; + settrainingonsite(''); + + + + //reinitialisation des filtres + filtre1 = result; + setv11(filtre1); + + // Annulation de la suggestion de villes + setsuggestioncities([]); + + + /* Recuperation des autres filtres */ + // recuperation du filtre du support + var crit_TrainingSupport = ""; + if (document.getElementById("supoort_list_derou")) { + crit_TrainingSupport = document.getElementById("supoort_list_derou").value; + if (crit_TrainingSupport.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).support === crit_TrainingSupport); + } + + // recuperation du filtre du certification + var crit_TrainingCertif = ""; + if (document.querySelector('input[name="TrainingCertif"]:checked')) { + crit_TrainingCertif = document.querySelector('input[name="TrainingCertif"]:checked').value; + if (crit_TrainingCertif.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).certif === crit_TrainingCertif); + } + + // recuperation du filtre du CPF + var crit_TrainingCPF = ""; + if (document.querySelector('input[name="TrainingCPF"]:checked')) { + crit_TrainingCPF = document.querySelector('input[name="TrainingCPF"]:checked').value; + if (crit_TrainingCPF.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).cpf === crit_TrainingCPF); + + } + + // recuperation du filtre du type (cours, tuto, etc) + var crit_TrainingType = ""; + if (document.querySelector('input[name="TrainingType"]:checked')) { + crit_TrainingType = document.querySelector('input[name="TrainingType"]:checked').value; + if (crit_TrainingType.length > 0) + filtre1 = filtre1.filter((maformation) => JSON.parse(maformation).type === crit_TrainingType); + } + setnewresult(filtre1); + setCurrentPage2(1); + } + } + + function OnblurHandle(e) { + setTimeout(() => { + setsuggestion2([]) + }, 100) + } + + + function OnSuggestionHandler(text) { + var val = text; + settext(val); + } + + function OnCitiesSuggestionHandler(text) { + var val = text; + setcities(val); + document.getElementById("ville").value = val; + LeaveCity(); + // Annulation de la suggestion de villes + setsuggestioncities([]); + } + + function publiecatalogue() { + + history.push("/Partner", { mysy_arg: 'partner' }); + } + + function LeaveCity() { + TrainingDistancielHandle(); + } + + function LeaveZipCode() { + TrainingDistancielHandle(); + } + + const Recherche_Domaine_Metier = (event) => { + + //console.log(" ### liste domaine = ", list_domaine); + //console.log(" ### liste metier = ", list_metier); + + } + + const [displayAllmetiers, setdisplayAllmetiers] = useState(); + + function DisplayAllmetier() { + if (displayAllmetiers) + setdisplayAllmetiers(false); + else + setdisplayAllmetiers(true); + } + + + function init_Filter_Change_url() { + history.push("/"); + window.location.reload(); + + /* window.scrollTo({ + top: 0, + behavior: "smooth", + });*/ + + } + + function message_to_init_Filter_Change_url() { + alert(" Réinitialiser les filtres pour réactivier cette fonctionnalité") + + } + + + const [Dialog_1_message, setDialog_1_message] = React.useState(false); + const [Dialog_1_open, setDialog_1_open] = React.useState(false); + function Dialog_1_handle_change_participant_session(message) { + setDialog_1_message(message); + setDialog_1_open(true); + } + + const Dialog_1_handleClose = () => { + //alert(" Utiliser le bouton 'fermer' "); + //setOpen(false); + }; + + const Dialog_1_handleClose_buton = () => { + setDialog_1_open(false); + }; + + + console.log(" €€€ RRR ", url_subdomain); + return ( + + +
+ + + + + MySy Information + + + Confirmez la deconnexion + + + + + +
+
+ +
+
+ +
+
+ +
+
+ + + Formation & Tutoriel Gratuit ou payant Excellente qualité + + + + + + + + Mon Compte + setDialog_1_open(true)} className="mymenu_item" + >Deconnexion + + + + + Mon Compte + Connexion + + S'inscrire + Deconnexion + + + + + + + {/* + + + */} + + + +
+ + {/*
+
+
+
+ +
+
+

Recherche Formations Tutoriels

+ +
+
+ {String(someoneconnected) !== String("1") && } + {String(someoneconnected) === String("1") && } +
+
+ + + {String(someoneconnected) === String("1") &&
+ Mon Compte +
} + + {String(someoneconnected) !== String("1") &&
+ S'inscrire +
} + +
+ Nos Services +
+ +
+ Le blog +
+ +
+ publier mes formations +
+ +
+ + +
+ + +
+
+
+ +
Bienvenue sur MySy
+ Recherche de Formations & Tutoriels + +
+
+
+ + + + + {SearchText.length > 2 && }   + {suggestion2 && suggestion2.slice(0, 5).map((suggestion, id) => +
OnSuggestionHandler(JSON.parse(suggestion).name)}> {JSON.parse(suggestion).name}
+ )} + +
+
+ + +
+ + + + + + + + + +
+ + +
+ + + + + + + + + + + + +
+ + +
+
+
*/} +
+
+ +
+ +
+ MySy Training Technology + +
+
+ +
+ + + + {/* */} + + {/* */} + + + + + + + + + + +
+ +
+
+ +
+ +
+ + +
+ +
+ +
+ + +
+ +
+ + +
+ +
+ +
+ +
+
+
+ + + + + {/*SearchText.length > 2 && */} + {SearchText.length > 2 &&  } + + + + +
+
+
+ +
+
+ + +
+ + + + +
+ +
+
 
+ +
+ + + + + + {suggestion2 && suggestion2.slice(0, 2).map((suggestion, id) => +
OnSuggestionHandler(JSON.parse(suggestion).name)}> {JSON.parse(suggestion).name}
+ )} + +
+
+ + {/*
+ + +
*/} + + +
+ + +
+
+ + + + {/*
+
Nos services
+ + +
+ +
+
+ MySy Training Publication +
+ +
+
+ Moteur de Recherche de Formations +
+ +
+ Une recherche multicritère parfaite pour retrouver la formation la plus adaptée aux besoins de votre client. +
    +
  • Compte utilisateur avec données de recherche de formation
  • +
  • Aide à la recherche de formations pour B2C, B2B
  • +
  • Consultation des appels d’offre de formation et manifestation d’intérêt
  • +
+ +
+
+
+
+
+ MySy Training Marketing digital +
+ +
+
+ Gestion pédagogique & Outil CRM +
+ +
+ Un Outil de gestion administrative :
+
    +
  • Gestion inscriptions
  • +
  • Gestion sessions
  • +
  • Gestion avis participants
  • +
+ +
    +
  • Gestion clients
  • +
  • Devis & Commandes
  • +
  • Facturation
  • +
+
+
+
+ +
+
+ MySy Training gestion administrative +
+ +
+
+ Hébergement de e-Formations (LMS) +
+ +
+ Hébergement des formations sur nos serveurs (ou les vôtres) +
    +
  • Cours en ligne
  • +
  • Echange prof / apprenant
  • +
  • Evaluation (note)
  • +
  • Gestion planning
  • +
+ +
+ +
+
+ + + +
+ + + +
*/} + + + +
+
+ +
Nos Formations & Tutoriels
+ {showelement === "true" &&
+ +
Masquer les Métiers & Filtres
+
+ +
+ } + + {showelement === "false" &&
+
Afficher les Métiers & Filtres
+
+ +
+ } + + {showelement === "true" &&
+
+
Les filtres
+ + +
+
+
Eligible CPF +
+
+
+ +
+ + +
+
+ +
+
+ + +
+
+ + {String(cpfchecked) === String("1") &&
+
+ KO + +
+
} + +
+
+ + +
+
Certification +
+ +
+
+
+ + +
+
+ +
+
+ + +
+
+ {String(certifchecked) === String("1") &&
+
+ KO + +
+
} +
+
+ + +
+
Type +
+ +
+
+
+ + +
+
+ +
+
+ + +
+
+ {String(typechecked) === String("1") &&
+
+ KO + +
+
} +
+
+ + + {/*
+
Support +
+ +
+
+
+ + +
+
+ +
+
+ + +
+
+ {String(supportchecked) === String("1") &&
+
+ KO + +
+
} +
+
*/} + + + +
+
Lieu +
+ +
+
+
+ + +
+
+ +
+
+ + +
+
+ {String(lieuchecked) === String("1") &&
+
+ KO + +
+
} +
+
+ + + {trainingonsite && String(trainingonsite) === String("0") &&
+
Ville +
+ +
+ + {suggestioncities && suggestioncities.slice(0, 3).map((suggestion, id) => +
OnCitiesSuggestionHandler(JSON.parse(suggestion).ville)}> {JSON.parse(suggestion).ville}
+ )} + +
+ + +
 
+
} + + {trainingonsite && String(trainingonsite) === String("0") &&
+
Code postale +
+ +
+ +
+ + +
 
+
} + +
+
Support +
+ +
+ + + + +
+
+ +
+
Prix +
+ +
+ `${value} €`} + value={range_price} + step={500} + name="toto" + + onChange={value => setrange_price(value)} + //onChange={TrainingPriceHandle} + onChangeComplete={value => console.log(value)} + /> +
+ + +
 
+
+ + +
+ + +
+ + + +
Les Métiers
+ {NewSearchText &&
+ +
+
+ Recherhe pour : "{NewSearchText}" +
+ +
+
+ +
+
+ Réinitaliser les filtres +
+
+
+
+
+
+ +
+
+ +
+
+ Management
+
+ +
+ +
+
+
+ +
+
+ +
+
+ Informatique
+
+ +
+ +
+
+
+ +
+
+ +
+
+ Graphisme
+
+ +
+ +
+
+
+ +
+
+
+ + +
+
+ Afficher plus de métiers +
+ +
+
+ + +
+
} + + + {!NewSearchText &&
+
+ +
+
+ + +
+
+ Tous les métiers +
+
+
+
+
+
+ + +
+
+ {mymetier && String(mymetier) === "management" && + } + + {!mymetier || String(mymetier) !== "management" && + } + + {!mymetier && + } + + +
+
+ Management +
+
+ +
+ +
+
+
+ + +
+
+ {mymetier && String(mymetier) === "IT" && + } + + {!mymetier || String(mymetier) !== "IT" && + } + + {!mymetier && + } + +
+
+ Informatique +
+
+ +
+
+
+
+ +
+
+ {mymetier && String(mymetier) === "graphisme" && + } + + {!mymetier || String(mymetier) !== "graphisme" && + } + + {!mymetier && + } + + +
+ +
+ Graphisme +
+
+ +
+
+
+
+
+
+ {mymetier && String(mymetier) === "sante_nat" && + } + + {!mymetier || String(mymetier) !== "sante_nat" && + } + + {!mymetier && + } + + +
+ +
+ Santé naturelle +
+
+ +
+
+
+
+ + + + + {!displayAllmetiers &&
+
+
+ + +
+
+ Afficher plus de métiers +
+ +
+
} + + + + {displayAllmetiers &&
+
+ + +
+
+ Développement Personnel +
+
+ +
+
+ +
+
} + + {displayAllmetiers &&
+
+ {mymetier && String(mymetier) === "projets" && + } + + {!mymetier || String(mymetier) !== "projets" && + } + + {!mymetier && + } + +
+
+ Projets +
+
+ +
+
+ +
+
} + {displayAllmetiers &&
+
+ + +
+
+ Sport +
+
+ +
+
+ +
+
} + + + {displayAllmetiers &&
+
+
+ - +
+
+ Afficher Moins de métiers +
+ +
+
} + + +
+
} + + + {/*
+
+
+ Formation Programmation +
+

Informatique

+
+
+
+ + +
+
+ Formation graphisme +
+

Graphisme

+
+
+
+ + +
+
+ Formation gestion projets +
+

Projets

+
+
+
+ +
 
+ +
+
+ Formation Management +
+

Management

+
+
+ + + +
+ +
+
+ Formation Digitale +
+

Digital

+
+
+
+ +
+
+ Ressources Humaines +
+

RH

+
+
+ + + +
+
 
+
+
+ Marketing +
+

Marketing

+
+
+
+ +
+
+ Autres +
+

Bureautique

+
+
+ +
+ + +
+
+ Commerce +
+

Commerce

+
+
+
+
 
+ +
+
+ Autres +
+

Dev. Personnel

+
+
+ + +
+
 
+
*/} + + {/*
+
+
+
+

Tous les Métiers

+
+
+
+
*/} + + + + +
+ } + +
+ +
Nos Formations & Tutoriels
+ {String(userconnected) === String("1") &&
+ +
+ } + + {myApiResponse == "False" &&
+ + Impossible de contacter l'hote distant +
} + + {myApiResponse == "True" && String(besoinaiderecherche) === String("1") &&
+ + Le resultat est vide, besoin d'aide ? + + +
} + + + {result && myApiResponse === "True" && !newresult && +
+
+
+ setCurrentPage2(page)} + /> +
+
+
+ Trier par + + +
+
+ + +
+ + +
} + + {result && myApiResponse === "True" && newresult && +
+ setCurrentPage2(page)} + /> + + +
} + + + {newresult && (newresult.length <= PageSize) &&
+   +
+   +
} + + + {result && myApiResponse == "True" && fin == 0 && !newresult && + result.slice(0, PageSize).map((formation) => ( +
+ + +
+ + ))} + + {result && myApiResponse == "True" && fin == 0 && newresult && + newresult.slice(0, PageSize).map((formation) => ( +
+ + +
+ + ))} + + + + {result && myApiResponse === "True" && fin === 1 && !newresult + && currentTableData2 + && currentTableData2.map((formation) => ( +
+ + +
+ + ))} + + {result && myApiResponse === "True" && fin === 1 && newresult + && currentTableData2 + && currentTableData2.map((formation) => ( +
+ + +
+ + ))} + + + {result && !newresult &&
+ + {String(userconnected) === String("1") && } + setCurrentPage2(page)} + /> +
+ } + + {result && newresult &&
+ + {String(userconnected) === String("1") && } + setCurrentPage2(page)} + /> +
+ } +
+ + + +
+ + +
+ +
+
Notre actualité + +
+ +
+ +
+ +
+ +
+ +
+ +
+ 19 DECEMBRE 2022 +
+ +
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit +
+ +
+ + +
+ +
+ +
+ +
+ +
+ +
+ 19 DECEMBRE 2022 +
+ +
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit +
+ +
+ + +
+ +
+ +
+ +
+ +
+ +
+ 19 DECEMBRE 2022 +
+ +
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit +
+ +
+ + +
+ + + + +
+ +
+ +
+
+ + +
+ +
+ + Voir tous nos articles + +
+
+ +
+
+
+ +
+ +
+ +
+
+ MySy Training Technology + +
+
+ +
+ Devenir partenaire +
+ + +
+ Devenez notre partenaire et publiez vos formations tout en bénéficiant d'un accompagnement sur mesure pour votre plan de marketing. +
+ +
+ +
+ +
+ +
+ +
+ + Devenir partenaire MySy Training +
+ +
+
+
+ + + +
+
+
+ +
+ +
+ + ); +} + + +export default Subdomain_Recherche_new_v2; \ No newline at end of file diff --git a/src/components/SurveyDocument.js b/src/components/SurveyDocument.js index ac02e49..e381493 100644 --- a/src/components/SurveyDocument.js +++ b/src/components/SurveyDocument.js @@ -222,13 +222,13 @@ function SurveyDocument() { var al = String(tab[0]); if (event.currentTarget.checked) { - console.log('checked'); + // console.log('checked'); if (!tmp_variable[al] || String(tmp_variable[al]) === "") { - console.log(" première action "); + //console.log(" première action "); var t = []; t.push(String(tab[1])); } else { - console.log(" PASSS première action "); + //console.log(" PASSS première action "); var t = tmp_variable[al]; t.push(String(tab[1])); } @@ -236,10 +236,10 @@ function SurveyDocument() { tmp_variable[al] = t; - console.log(" sortirrr tmp_variable = ", tmp_variable); + //console.log(" sortirrr tmp_variable = ", tmp_variable); settab_variable(tmp_variable); - console.log(" ### sortir settab_variable = ", tab_variable); + //console.log(" ### sortir settab_variable = ", tab_variable); } diff --git a/src/pages/subdomain_recherche_new_v2.js b/src/pages/subdomain_recherche_new_v2.js new file mode 100644 index 0000000..1571d9d --- /dev/null +++ b/src/pages/subdomain_recherche_new_v2.js @@ -0,0 +1,20 @@ +import Subdomain_Recherche_new_v2 from "../components/Subdomain_Recherche_new_v2"; +import Navigation from "../components/Navigation"; +import Footer from "./footer"; + +const subdomain_recherche_new_v2 = () => { + + return ( +
+ +
+ +
+ +
+ + ) +} + + +export default subdomain_recherche_new_v2;