3444 lines
112 KiB
JavaScript
3444 lines
112 KiB
JavaScript
import React, { useState, useEffect, } from "react";
|
|
import { useForm } from "react-hook-form";
|
|
import { getCookie, setCookie } from 'react-use-cookie';
|
|
import Box from '@mui/material/Box';
|
|
import InputLabel from '@mui/material/InputLabel';
|
|
import InputAdornment from '@mui/material/InputAdornment';
|
|
import FormControl from '@mui/material/FormControl';
|
|
import TextField from '@mui/material/TextField';
|
|
import AccountCircle from '@mui/icons-material/AccountCircle';
|
|
import PhoneIcon from '@mui/icons-material/Phone'
|
|
import EmailIcon from '@mui/icons-material/Email'
|
|
import LanguageIcon from '@mui/icons-material/Language';
|
|
import HomeIcon from '@mui/icons-material/Home'
|
|
import { Button, Form, FormGroup, Label } from "reactstrap";
|
|
|
|
import { useHistory } from "react-router-dom";
|
|
import TwitterIcon from '@mui/icons-material/Twitter';
|
|
import FacebookIcon from '@mui/icons-material/Facebook';
|
|
import LinkedInIcon from '@mui/icons-material/LinkedIn';
|
|
import axios from "axios";
|
|
import { ConsoleView } from "react-device-detect";
|
|
import MenuItem from '@mui/material/MenuItem';
|
|
|
|
import Partner_Securite_Data from "./Partner_Securite_Data";
|
|
import Partner_Invoicing_Data from "./Partner_Invoicing_Data";
|
|
import Autocomplete from '@mui/material/Autocomplete';
|
|
import 'react-tooltip/dist/react-tooltip.css'
|
|
import { Tooltip } from 'react-tooltip'
|
|
|
|
function UpdateParnterInfo(props) {
|
|
const history = useHistory();
|
|
const [myApiResponse, setmyApiResponse] = useState("");
|
|
const [result, setResult] = useState("");
|
|
const [testval, settestval] = useState();
|
|
const [fields1desabled, setfields1desabled] = useState(true);
|
|
const [mailfieldsdesabled, setmailfieldsdesabled] = useState(true);
|
|
const [pwdfieldsdesabled, setpwdfieldsdesabled] = useState(true);
|
|
|
|
const [values, setValues] = React.useState({
|
|
password: '',
|
|
showPassword: false,
|
|
});
|
|
|
|
const [valuesPass1, setValuesPass1] = React.useState({
|
|
password1: '',
|
|
showPassword1: false,
|
|
});
|
|
|
|
const [valuesPass2, setValuesPass2] = React.useState({
|
|
password2: '',
|
|
showPassword2: false,
|
|
});
|
|
|
|
const [valuesPass3, setValuesPass3] = React.useState({
|
|
password3: '',
|
|
showPassword3: false,
|
|
});
|
|
|
|
|
|
|
|
const [isLoading, setLoading] = useState();
|
|
|
|
const [currentpawdvisible, setcurrentpawdvisible] = useState(false);
|
|
const [newpawdvisible, setnewpawdvisible] = useState(false);
|
|
const [confpwdvisible, setconfpwdvisible] = useState(false);
|
|
const [updatemainmail, setupdatemainmail] = useState();
|
|
const [updatepwd, setupdatepwd] = useState();
|
|
|
|
|
|
// recuperation et gestion du token utilisateur
|
|
const stored_user = getCookie('tokenmysypart');
|
|
if (!stored_user || stored_user.length <= 0) {
|
|
history.push("/PartnerLogin");
|
|
}
|
|
|
|
|
|
const myserver = "127.0.0.1";
|
|
//const myserver = "89.156.84.196";
|
|
const {
|
|
register,
|
|
formState: { errors },
|
|
handleSubmit,
|
|
} = useForm();
|
|
|
|
|
|
useEffect(() => {
|
|
getCurrentUserData();
|
|
//desablesecurtymailfields();
|
|
//desablesecurtypwdfields();
|
|
//desablesecurtyInsertKeyfields();
|
|
getPartnerImages();
|
|
Get_List_Catalog_Public_Themes();
|
|
|
|
}, [])
|
|
|
|
|
|
const [userformedited, setuserformedited] = useState();
|
|
|
|
|
|
const [insert_key_api, setinsert_key_api] = useState("");
|
|
const [insert_key_api_message, setinsert_key_api_message] = useState("");
|
|
const [insert_key_updated, setinsert_key_updated] = useState();
|
|
|
|
|
|
function UpdatePartnerInsertKey() {
|
|
|
|
setinsert_key_updated();
|
|
const url = process.env.REACT_APP_API_URL + "myclass/api/update_partner_insert_key/";
|
|
const formData = new FormData();
|
|
formData.append('token', stored_user);
|
|
|
|
// Si le partenaire n'est pas connecté, il est renvoyé vers la page de connexion
|
|
if (!stored_user || stored_user.length <= 0) {
|
|
history.push("/PartnerLogin");
|
|
}
|
|
|
|
var current_key = document.getElementsByName("current_insert_key")[0].value;
|
|
var new_key = document.getElementsByName("new_insert_key")[0].value;
|
|
var conf_new_key = document.getElementsByName("conf_new_insert_key")[0].value;
|
|
|
|
|
|
|
|
document.getElementsByName("identique_insert_key")[0].style.backgroundColor = "white";
|
|
if (new_key !== conf_new_key) {
|
|
document.getElementsByName("identique_insert_key")[0].style.backgroundColor = "red";
|
|
return;
|
|
}
|
|
|
|
document.getElementsByName("caractere_insert_key")[0].style.backgroundColor = "white";
|
|
if (String(new_key).length < 8) {
|
|
document.getElementsByName("caractere_insert_key")[0].style.backgroundColor = "red";
|
|
return
|
|
}
|
|
|
|
var regex = /\d/g;
|
|
document.getElementsByName("nombre_insert_key")[0].style.backgroundColor = "white";
|
|
if (!regex.test(new_key)) {
|
|
document.getElementsByName("nombre_insert_key")[0].style.backgroundColor = "red";
|
|
return
|
|
}
|
|
|
|
const specialChars = /[`!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?~]/;
|
|
document.getElementsByName("special_insert_key")[0].style.backgroundColor = "white";
|
|
if (!specialChars.test(new_key)) {
|
|
document.getElementsByName("special_insert_key")[0].style.backgroundColor = "red";
|
|
return
|
|
}
|
|
|
|
|
|
formData.append('current_insert_key', current_key);
|
|
formData.append('new_insert_key', new_key);
|
|
formData.append('conf_insert_key', conf_new_key);
|
|
formData.append('partner_account_id', partner_account_id);
|
|
|
|
|
|
|
|
fetch(
|
|
url,
|
|
{
|
|
method: 'POST',
|
|
body: formData,
|
|
}
|
|
)
|
|
.then((response) => response.json())
|
|
.then((result) => {
|
|
//console.log('Success:', result['message'], "result['status'] = ", result['status']);
|
|
setinsert_key_api(result['status']);
|
|
setinsert_key_api_message(result['message']);
|
|
if (String(result['status']) === String("true")) {
|
|
desablesecurtyInsertKeyfields();
|
|
document.getElementsByName("current_insert_key")[0].value = new_key;
|
|
setinsert_key_updated(true);
|
|
} else if (String(result['status']) === String("Err_Connexion")) {
|
|
alert('Erreur: ' + result['message']);
|
|
history.push("/Connexion");
|
|
}
|
|
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:', error);
|
|
setinsert_key_api("false");
|
|
setinsert_key_updated(false);
|
|
});
|
|
}
|
|
|
|
|
|
function UpdatePartnerPwd() {
|
|
|
|
//setupdatepwd(false);
|
|
const url = process.env.REACT_APP_API_URL + "myclass/api/update_partner_pwd/";
|
|
const formData = new FormData();
|
|
formData.append('token', stored_user);
|
|
|
|
// Si le partenaire n'est pas connecté, il est renvoyé vers la page de connexion
|
|
if (!stored_user || stored_user.length <= 0) {
|
|
history.push("/PartnerLogin");
|
|
}
|
|
|
|
var pwd = document.getElementsByName("current_pwd")[0].value;
|
|
var new_pwd = document.getElementsByName("new_pwd")[0].value;
|
|
var conf_new_pwd = document.getElementsByName("new_pwd_conf")[0].value;
|
|
|
|
|
|
formData.append('pwd', pwd);
|
|
formData.append('new_pwd', new_pwd);
|
|
formData.append('conf_new_pwd', conf_new_pwd);
|
|
formData.append('partner_account_id', partner_account_id);
|
|
|
|
document.getElementsByName("identique")[0].style.backgroundColor = "white";
|
|
if (new_pwd !== conf_new_pwd) {
|
|
document.getElementsByName("identique")[0].style.backgroundColor = "red";
|
|
return;
|
|
}
|
|
|
|
document.getElementsByName("caractere")[0].style.backgroundColor = "white";
|
|
if (String(new_pwd).length < 8) {
|
|
document.getElementsByName("caractere")[0].style.backgroundColor = "red";
|
|
return
|
|
}
|
|
|
|
var regex = /\d/g;
|
|
document.getElementsByName("nombre")[0].style.backgroundColor = "white";
|
|
if (!regex.test(new_pwd)) {
|
|
document.getElementsByName("nombre")[0].style.backgroundColor = "red";
|
|
return
|
|
}
|
|
|
|
const specialChars = /[`!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?~]/;
|
|
document.getElementsByName("special")[0].style.backgroundColor = "white";
|
|
if (!specialChars.test(new_pwd)) {
|
|
document.getElementsByName("special")[0].style.backgroundColor = "red";
|
|
return
|
|
}
|
|
|
|
fetch(
|
|
url,
|
|
{
|
|
method: 'POST',
|
|
body: formData,
|
|
}
|
|
)
|
|
.then((response) => response.json())
|
|
.then((result) => {
|
|
//console.log('Success:', result['message'], "result['status'] = ", result['status']);
|
|
setmyApiResponse(result['status']);
|
|
setResult(result['message']);
|
|
if (String(result['status']) == String("true")) {
|
|
setupdatepwd(true);
|
|
}
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:', error);
|
|
setmyApiResponse("false");
|
|
setupdatepwd(false);
|
|
});
|
|
}
|
|
|
|
|
|
function UpdatePartnerMail() {
|
|
|
|
setupdatemainmail(false);
|
|
const url = process.env.REACT_APP_API_URL + "myclass/api/update_partner_main_mail/";
|
|
const formData = new FormData();
|
|
formData.append('token', stored_user);
|
|
|
|
// Si le partenaire n'est pas connecté, il est renvoyé vers la page de connexion
|
|
if (!stored_user || stored_user.length <= 0) {
|
|
history.push("/PartnerLogin");
|
|
}
|
|
|
|
var mail = document.getElementsByName("current_email")[0].value;
|
|
var new_mail = document.getElementsByName("new_email")[0].value;
|
|
var conf_new_mail = document.getElementsByName("conf_new_email")[0].value;
|
|
|
|
|
|
formData.append('mail', mail);
|
|
formData.append('new_mail', new_mail);
|
|
formData.append('conf_new_mail', conf_new_mail);
|
|
formData.append('partner_account_id', partner_account_id);
|
|
|
|
|
|
fetch(
|
|
url,
|
|
{
|
|
method: 'POST',
|
|
body: formData,
|
|
}
|
|
)
|
|
.then((response) => response.json())
|
|
.then((result) => {
|
|
//console.log('Success:', result['message'], "result['status'] = ", result['status']);
|
|
setmyApiResponse(result['status']);
|
|
setResult(result['message']);
|
|
if (String(result['status']) == String("true")) {
|
|
setupdatemainmail(true);
|
|
}
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:', error);
|
|
setmyApiResponse("false");
|
|
setupdatemainmail(false);
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
const [partner_account_id, setpartner_account_id] = useState("");
|
|
const [is_partner_admin_account, setis_partner_admin_account] = useState("");
|
|
|
|
function getCurrentUserData() {
|
|
|
|
settestval('d'); // ==> Do not delete
|
|
const formData = new FormData();
|
|
const url = process.env.REACT_APP_API_URL + "myclass/api/get_partner_account/";
|
|
formData.append('token', stored_user);
|
|
|
|
axios.post(url, formData).then(res => {
|
|
if (String(res.data.status) === "true") {
|
|
//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);
|
|
|
|
var mylocaltraining = JSON.parse(res.data.message);
|
|
if (mylocaltraining) {
|
|
|
|
setpartner_account_id(mylocaltraining._id);
|
|
|
|
if (mylocaltraining.is_partner_admin_account) {
|
|
setis_partner_admin_account(mylocaltraining.is_partner_admin_account);
|
|
} else {
|
|
setis_partner_admin_account("0");
|
|
}
|
|
|
|
|
|
if (mylocaltraining.adr_city) {
|
|
setp_adr_street(mylocaltraining.adr_city);
|
|
|
|
}
|
|
|
|
|
|
if (mylocaltraining.adr_city) {
|
|
setp_adr_zip(mylocaltraining.adr_zip);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.email) {
|
|
setp_email(mylocaltraining.email);
|
|
|
|
}
|
|
|
|
|
|
if (mylocaltraining.website) {
|
|
setp_website(mylocaltraining.website);
|
|
|
|
}
|
|
|
|
|
|
|
|
if (mylocaltraining.adr_country) {
|
|
setp_adr_country(mylocaltraining.adr_country);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.link_facebook) {
|
|
setp_link_facebook(mylocaltraining.link_facebook);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.telephone) {
|
|
setp_telephone(mylocaltraining.telephone);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.siret) {
|
|
setp_siret(mylocaltraining.siret);
|
|
}
|
|
|
|
|
|
|
|
if (mylocaltraining.num_nda) {
|
|
setp_num_nda(mylocaltraining.num_nda);
|
|
|
|
}
|
|
|
|
|
|
|
|
if (mylocaltraining.iscertifvoltaire) {
|
|
setmycertifvoltaire(mylocaltraining.iscertifvoltaire);
|
|
}
|
|
else {
|
|
setmycertifvoltaire("0");
|
|
}
|
|
|
|
|
|
|
|
if (mylocaltraining.isdatadock) {
|
|
setmydatadock(mylocaltraining.isdatadock);
|
|
}
|
|
else {
|
|
setmydatadock("0");
|
|
}
|
|
|
|
if (mylocaltraining.isqualiopi) {
|
|
setmyqualiopi(mylocaltraining.isqualiopi);
|
|
}
|
|
else {
|
|
setmyqualiopi("0");
|
|
}
|
|
|
|
|
|
if (mylocaltraining.link_linkedin) {
|
|
setp_link_linkedin(mylocaltraining.link_linkedin);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.link_twitter) {
|
|
setp_link_twitter(mylocaltraining.link_twitter);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.adr_street) {
|
|
setp_adr_street(mylocaltraining.adr_street);
|
|
|
|
}
|
|
|
|
|
|
if (mylocaltraining.nom) {
|
|
setp_nom(mylocaltraining.nom);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.contact_tel) {
|
|
setp_contact_tel(mylocaltraining.contact_tel);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.contact_nom) {
|
|
setp_contact_nom(mylocaltraining.contact_nom);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.contact_prenom) {
|
|
setp_contact_prenom(mylocaltraining.contact_prenom);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.contact_mail) {
|
|
setp_contact_mail(mylocaltraining.contact_mail);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.lms_virtualhost_url) {
|
|
setp_lms_virtualhost_url(mylocaltraining.lms_virtualhost_url);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.lms_username) {
|
|
setp_lms_username(mylocaltraining.lms_username);
|
|
|
|
}
|
|
|
|
if (mylocaltraining.mysy_lms_user_id) {
|
|
setp_mysy_lms_user_id(mylocaltraining.mysy_lms_user_id);
|
|
|
|
}
|
|
|
|
|
|
desablefield1();
|
|
|
|
|
|
|
|
}
|
|
}
|
|
else {
|
|
//console.log(" In test res.data.status = " + res.data.status);
|
|
//console.log(" In test res.data.message = " + res.data.message);
|
|
setmyApiResponse("False");
|
|
//setmyApimyApiMessage("")
|
|
}
|
|
|
|
|
|
}).catch((error) => {
|
|
console.warn('Not good man :( mysearchtext = ', error);
|
|
setmyApiResponse("False");
|
|
//setmyApimyApiMessage("")
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
function annuler_change_user_data() {
|
|
desablefield1();
|
|
getCurrentUserData();
|
|
setuserformedited("");
|
|
}
|
|
|
|
async function desablefield1() {
|
|
setdatamodification();
|
|
|
|
|
|
if (document.getElementsByName("adr_city")[0]) {
|
|
document.getElementsByName("adr_city")[0].disabled = true;
|
|
document.getElementsByName("adr_city")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("adr_zip")[0]) {
|
|
document.getElementsByName("adr_zip")[0].disabled = true;
|
|
document.getElementsByName("adr_zip")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
|
|
|
|
if (document.getElementsByName("adr_country")[0]) {
|
|
document.getElementsByName("adr_country")[0].disabled = true;
|
|
document.getElementsByName("adr_country")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
if (document.getElementsByName("telephone")[0]) {
|
|
document.getElementsByName("telephone")[0].disabled = true;
|
|
document.getElementsByName("telephone")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("siret") && document.getElementsByName("siret")[0]) {
|
|
document.getElementsByName("siret")[0].disabled = true;
|
|
document.getElementsByName("siret")[0].style.backgroundColor = "#ECEFF1";
|
|
} else {
|
|
// 18/04/2024 - un truc bizarre, parfois il faut attendre un peu avant que l'objet ne soit créé, d'ou ce wait si l'objet n'existe pas
|
|
await sleep(20);
|
|
document.getElementsByName("siret")[0].disabled = true;
|
|
document.getElementsByName("siret")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("num_nda") && document.getElementsByName("num_nda")[0]) {
|
|
document.getElementsByName("num_nda")[0].disabled = true;
|
|
document.getElementsByName("num_nda")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("link_facebook")[0]) {
|
|
document.getElementsByName("link_facebook")[0].disabled = true;
|
|
document.getElementsByName("link_facebook")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("link_linkedin")[0]) {
|
|
document.getElementsByName("link_linkedin")[0].disabled = true;
|
|
document.getElementsByName("link_linkedin")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("link_twitter")[0]) {
|
|
document.getElementsByName("link_twitter")[0].disabled = true;
|
|
document.getElementsByName("link_twitter")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("adr_street")[0]) {
|
|
document.getElementsByName("adr_street")[0].disabled = true;
|
|
document.getElementsByName("adr_street")[0].style.backgroundColor = "#ECEFF1";
|
|
|
|
}
|
|
|
|
if (document.getElementsByName("nom")[0]) {
|
|
document.getElementsByName("nom")[0].disabled = true;
|
|
document.getElementsByName("nom")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("contact_tel")[0]) {
|
|
document.getElementsByName("contact_tel")[0].disabled = true;
|
|
document.getElementsByName("contact_tel")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("contact_nom")[0]) {
|
|
document.getElementsByName("contact_nom")[0].disabled = true;
|
|
document.getElementsByName("contact_nom")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("contact_prenom")[0]) {
|
|
document.getElementsByName("contact_prenom")[0].disabled = true;
|
|
document.getElementsByName("contact_prenom")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("contact_mail")[0]) {
|
|
document.getElementsByName("contact_mail")[0].disabled = true;
|
|
document.getElementsByName("contact_mail")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("email")[0]) {
|
|
document.getElementsByName("email")[0].disabled = true;
|
|
document.getElementsByName("email")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("website")[0]) {
|
|
document.getElementsByName("website")[0].disabled = true;
|
|
document.getElementsByName("website")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("isdatadock")[0]) {
|
|
document.getElementsByName("isdatadock")[0].disabled = true;
|
|
document.getElementsByName("isdatadock")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("isqualiopi")[0]) {
|
|
document.getElementsByName("isqualiopi")[0].disabled = true;
|
|
document.getElementsByName("isqualiopi")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("iscertifvoltaire")[0]) {
|
|
document.getElementsByName("iscertifvoltaire")[0].disabled = true;
|
|
document.getElementsByName("iscertifvoltaire")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
setfields1desabled(true);
|
|
}
|
|
|
|
|
|
function enablefieds1() {
|
|
|
|
setuserformedited("1");
|
|
|
|
|
|
if (document.getElementsByName("adr_city")[0]) {
|
|
document.getElementsByName("adr_city")[0].disabled = false;
|
|
document.getElementsByName("adr_city")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
if (document.getElementsByName("adr_zip")[0]) {
|
|
document.getElementsByName("adr_zip")[0].disabled = false;
|
|
document.getElementsByName("adr_zip")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
|
|
if (document.getElementsByName("adr_country")[0]) {
|
|
document.getElementsByName("adr_country")[0].disabled = false;
|
|
document.getElementsByName("adr_country")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("telephone")[0]) {
|
|
document.getElementsByName("telephone")[0].disabled = false;
|
|
document.getElementsByName("telephone")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("siret")[0]) {
|
|
document.getElementsByName("siret")[0].disabled = false;
|
|
document.getElementsByName("siret")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("num_nda")[0]) {
|
|
document.getElementsByName("num_nda")[0].disabled = false;
|
|
document.getElementsByName("num_nda")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("link_facebook")[0]) {
|
|
document.getElementsByName("link_facebook")[0].disabled = false;
|
|
document.getElementsByName("link_facebook")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("link_linkedin")[0]) {
|
|
document.getElementsByName("link_linkedin")[0].disabled = false;
|
|
document.getElementsByName("link_linkedin")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("link_twitter")[0]) {
|
|
document.getElementsByName("link_twitter")[0].disabled = false;
|
|
document.getElementsByName("link_twitter")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("adr_street")[0]) {
|
|
document.getElementsByName("adr_street")[0].disabled = false;
|
|
document.getElementsByName("adr_street")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
if (String(is_partner_admin_account) === "1") {
|
|
if (document.getElementsByName("nom")[0]) {
|
|
document.getElementsByName("nom")[0].disabled = false;
|
|
document.getElementsByName("nom")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("contact_tel")[0]) {
|
|
document.getElementsByName("contact_tel")[0].disabled = false;
|
|
document.getElementsByName("contact_tel")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("contact_nom")[0]) {
|
|
document.getElementsByName("contact_nom")[0].disabled = false;
|
|
document.getElementsByName("contact_nom")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("contact_prenom")[0]) {
|
|
document.getElementsByName("contact_prenom")[0].disabled = false;
|
|
document.getElementsByName("contact_prenom")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("contact_mail")[0]) {
|
|
document.getElementsByName("contact_mail")[0].disabled = false;
|
|
document.getElementsByName("contact_mail")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
|
|
if (document.getElementsByName("website")[0]) {
|
|
document.getElementsByName("website")[0].disabled = false;
|
|
document.getElementsByName("website")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("isdatadock")[0]) {
|
|
document.getElementsByName("isdatadock")[0].disabled = false;
|
|
document.getElementsByName("isdatadock")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("isqualiopi")[0]) {
|
|
document.getElementsByName("isqualiopi")[0].disabled = false;
|
|
document.getElementsByName("isqualiopi")[0].style.backgroundColor = "#FFFFFF";
|
|
|
|
}
|
|
|
|
if (document.getElementsByName("iscertifvoltaire")[0]) {
|
|
document.getElementsByName("iscertifvoltaire")[0].disabled = false;
|
|
document.getElementsByName("iscertifvoltaire")[0].style.backgroundColor = "#FFFFFF";
|
|
}
|
|
|
|
setfields1desabled(false);
|
|
window.scrollTo({
|
|
top: 0,
|
|
behavior: "smooth",
|
|
});
|
|
}
|
|
|
|
|
|
function desablesecurtymailfields() {/*
|
|
document.getElementsByName("current_email")[0].disabled = true;
|
|
document.getElementsByName("current_email")[0].style.backgroundColor = "#ECEFF1";
|
|
document.getElementsByName("current_email")[0].value = "";
|
|
|
|
|
|
document.getElementsByName("new_email")[0].disabled = true;
|
|
document.getElementsByName("new_email")[0].style.backgroundColor = "#ECEFF1";
|
|
document.getElementsByName("new_email")[0].value = "";
|
|
|
|
|
|
document.getElementsByName("conf_new_email")[0].disabled = true;
|
|
document.getElementsByName("conf_new_email")[0].style.backgroundColor = "#ECEFF1";
|
|
document.getElementsByName("conf_new_email")[0].value = "";
|
|
|
|
|
|
setmailfieldsdesabled(true);*/
|
|
}
|
|
|
|
|
|
|
|
function enablesecurtymailfields() {
|
|
|
|
|
|
document.getElementsByName("current_email")[0].disabled = false;
|
|
document.getElementsByName("current_email")[0].style.backgroundColor = "#FFFFFF";
|
|
|
|
|
|
|
|
document.getElementsByName("new_email")[0].disabled = false;
|
|
document.getElementsByName("new_email")[0].style.backgroundColor = "#FFFFFF";
|
|
|
|
document.getElementsByName("conf_new_email")[0].disabled = false;
|
|
document.getElementsByName("conf_new_email")[0].style.backgroundColor = "#FFFFFF";
|
|
|
|
|
|
setmailfieldsdesabled(false);
|
|
}
|
|
|
|
|
|
|
|
function desablesecurtypwdfields() {
|
|
/* document.getElementsByName("current_pwd")[0].disabled = true;
|
|
document.getElementsByName("current_pwd")[0].style.backgroundColor = "#ECEFF1";
|
|
document.getElementsByName("current_pwd")[0].value = "";
|
|
|
|
document.getElementsByName("new_pwd")[0].disabled = true;
|
|
document.getElementsByName("new_pwd")[0].style.backgroundColor = "#ECEFF1";
|
|
document.getElementsByName("new_pwd")[0].value = "";
|
|
|
|
document.getElementsByName("new_pwd_conf")[0].disabled = true;
|
|
document.getElementsByName("new_pwd_conf")[0].style.backgroundColor = "#ECEFF1";
|
|
document.getElementsByName("new_pwd_conf")[0].value = "";
|
|
|
|
|
|
setpwdfieldsdesabled(true);*/
|
|
}
|
|
|
|
|
|
|
|
function enablesecurtypwdfields() {
|
|
|
|
document.getElementsByName("current_pwd")[0].disabled = false;
|
|
document.getElementsByName("current_pwd")[0].style.backgroundColor = "#FFFFFF";
|
|
|
|
document.getElementsByName("new_pwd")[0].disabled = false;
|
|
document.getElementsByName("new_pwd")[0].style.backgroundColor = "#FFFFFF";
|
|
|
|
document.getElementsByName("new_pwd_conf")[0].disabled = false;
|
|
document.getElementsByName("new_pwd_conf")[0].style.backgroundColor = "#FFFFFF";
|
|
|
|
setpwdfieldsdesabled(false);
|
|
}
|
|
|
|
|
|
function RecordData() {
|
|
|
|
|
|
const formData = new FormData();
|
|
const url = process.env.REACT_APP_API_URL + "myclass/api/update_partner_account/";
|
|
|
|
var adr_city = document.getElementsByName("adr_city")[0].value
|
|
adr_city = adr_city.replace("undefined", "");
|
|
|
|
var adr_zip = document.getElementsByName("adr_zip")[0].value;
|
|
adr_zip = adr_zip.replace("undefined", "");
|
|
|
|
|
|
var adr_country = document.getElementsByName("adr_country")[0].value;
|
|
adr_country = adr_country.replace("undefined", "");
|
|
|
|
|
|
var telephone = document.getElementsByName("telephone")[0].value;
|
|
telephone = telephone.replace("undefined", "");
|
|
|
|
var siret = "";
|
|
if (document.getElementsByName("siret")[0]) {
|
|
siret = document.getElementsByName("siret")[0].value;
|
|
siret = siret.replace("undefined", "");
|
|
}
|
|
|
|
var num_nda = "";
|
|
if (document.getElementsByName("num_nda")[0]) {
|
|
num_nda = document.getElementsByName("num_nda")[0].value;
|
|
num_nda = num_nda.replace("undefined", "");
|
|
}
|
|
|
|
|
|
var website = document.getElementsByName("website")[0].value;
|
|
website = website.replace("undefined", "");
|
|
|
|
var link_facebook = document.getElementsByName("link_facebook")[0].value;
|
|
var link_linkedin = document.getElementsByName("link_linkedin")[0].value;
|
|
var link_twitter = document.getElementsByName("link_twitter")[0].value;
|
|
var adr_street = document.getElementsByName("adr_street")[0].value;
|
|
var nom = document.getElementsByName("nom")[0].value;
|
|
var contact_nom = document.getElementsByName("contact_nom")[0].value;
|
|
|
|
|
|
var contact_prenom = document.getElementsByName("contact_prenom")[0].value;
|
|
var contact_tel = document.getElementsByName("contact_tel")[0].value;
|
|
var contact_mail = document.getElementsByName("contact_mail")[0].value;
|
|
|
|
//var mycertitrace = document.getElementsByName("iscertitrace")[0].value;
|
|
//var mybureaucertitrace = document.getElementsByName("isbureaucertitrace")[0].value;
|
|
|
|
var mycertifvoltaire = "0"
|
|
if (document.getElementsByName("iscertifvoltaire")[0]) {
|
|
mycertifvoltaire = document.getElementsByName("iscertifvoltaire")[0].value;
|
|
}
|
|
|
|
var mydatadock = "0";
|
|
if (document.getElementsByName("isdatadock")[0]) {
|
|
mydatadock = document.getElementsByName("isdatadock")[0].value;
|
|
}
|
|
|
|
var myqualiopi = "0";
|
|
if (document.getElementsByName("isqualiopi")[0]) {
|
|
var myqualiopi = document.getElementsByName("isqualiopi")[0].value;
|
|
}
|
|
|
|
|
|
formData.append('partner_account_id', partner_account_id);
|
|
formData.append('token', stored_user);
|
|
formData.append('nom', nom);
|
|
|
|
//formData.append('iscertitrace', mycertitrace);
|
|
formData.append('isdatadock', mydatadock);
|
|
formData.append('isqualiopi', myqualiopi);
|
|
// formData.append('isbureaucertitrace', mybureaucertitrace);
|
|
formData.append('iscertifvoltaire', mycertifvoltaire);
|
|
formData.append('website', website);
|
|
|
|
formData.append('adr_city', adr_city);
|
|
formData.append('adr_zip', adr_zip);
|
|
formData.append('telephone', telephone);
|
|
formData.append('siret', siret);
|
|
formData.append('num_nda', num_nda);
|
|
formData.append('adr_country', adr_country);
|
|
formData.append('link_facebook', link_facebook);
|
|
formData.append('link_twitter', link_twitter);
|
|
formData.append('adr_street', adr_street);
|
|
formData.append('contact_nom', contact_nom);
|
|
formData.append('contact_prenom', contact_prenom);
|
|
formData.append('link_linkedin', link_linkedin);
|
|
formData.append('contact_tel', contact_tel);
|
|
formData.append('contact_mail', contact_mail);
|
|
|
|
|
|
// Recuperation de l'image logo & de l'image du cachet
|
|
if (String(userimgclassprofilchanged) === "1") {
|
|
formData.append('file_logo', isimgclassSelected);
|
|
formData.append('file_logo_recid', isimgclassSelected_recid);
|
|
}
|
|
|
|
if (String(isimgcachetchanged) === "1") {
|
|
formData.append('file_cachet', isimgcachetSelected);
|
|
formData.append('file_cachet_recid', isimgcachetSelected_recid);
|
|
}
|
|
|
|
|
|
|
|
//console.log(" ### formData = ", formData);
|
|
fetch(
|
|
url,
|
|
{
|
|
method: 'POST',
|
|
body: formData,
|
|
}
|
|
)
|
|
.then((response) => response.json())
|
|
.then((result) => {
|
|
//console.log('Success:', result['message'], "result['status'] = ", result['status']);
|
|
setmyApiResponse(result['status']);
|
|
setResult(result['message']);
|
|
if (String(result['status']) === String("true")) {
|
|
settestval(true);
|
|
desablefield1();
|
|
setdatamodification();
|
|
getPartnerImages();
|
|
|
|
|
|
if (document.getElementsByName("isdatadock")[0]) {
|
|
document.getElementsByName("isdatadock")[0].disabled = true;
|
|
document.getElementsByName("isdatadock")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
if (document.getElementsByName("isqualiopi")[0]) {
|
|
document.getElementsByName("isqualiopi")[0].disabled = true;
|
|
document.getElementsByName("isqualiopi")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
|
|
if (document.getElementsByName("iscertifvoltaire")[0]) {
|
|
document.getElementsByName("iscertifvoltaire")[0].disabled = true;
|
|
document.getElementsByName("iscertifvoltaire")[0].style.backgroundColor = "#ECEFF1";
|
|
}
|
|
|
|
alert(" La mise à jour a été faite ");
|
|
|
|
|
|
} else if (String(result['status']) === String("Err_Connexion")) {
|
|
alert('Erreur: ' + result['message']);
|
|
history.push("/Connexion");
|
|
} else {
|
|
alert(" Erreur : " + result['message']);
|
|
}
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:', error);
|
|
setmyApiResponse("false");
|
|
alert(" Erreur : Impossible de mettre à jour les informations ");
|
|
window.scrollTo({
|
|
top: 0,
|
|
behavior: "smooth",
|
|
});
|
|
});
|
|
|
|
window.scrollTo({
|
|
top: 0,
|
|
behavior: "smooth",
|
|
});
|
|
};
|
|
|
|
|
|
const [getPartnerImages_api, setgetPartnerImages_api] = useState();
|
|
const [getPartnerImages_message, setgetPartnerImages_message] = useState();
|
|
const [getPartnerImages_result, setgetPartnerImages_result] = useState();
|
|
function getPartnerImages(e) {
|
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/getRecodedParnterImage_from_front/";
|
|
|
|
var form = new FormData();
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
form.append("token", stored_cookie);
|
|
|
|
|
|
|
|
axios.post(myurl, form).then(res => {
|
|
|
|
//console.log(" getPartnerImages : In test res.data.status = " + res.data.status);
|
|
// console.log(" getPartnerImages: res.data.message.img = " + res.data.message);
|
|
|
|
if (String(res.data.status) === "true") {
|
|
setgetPartnerImages_api("true");
|
|
|
|
if (JSON.parse(res.data.message).logo_img) {
|
|
var partner_logo_img = "data:image/png;base64," + JSON.parse(res.data.message).logo_img;
|
|
setisimgclassSelected(partner_logo_img);
|
|
setuserimgclassprofil(partner_logo_img);
|
|
setisimgclassSelected_recid(JSON.parse(res.data.message).logo_img_recid);
|
|
}
|
|
|
|
if (JSON.parse(res.data.message).cachet_img) {
|
|
var partner_cachet_img = "data:image/png;base64," + JSON.parse(res.data.message).cachet_img;
|
|
setisimgcachet(partner_cachet_img);
|
|
setisimgcachetSelected(partner_cachet_img);
|
|
setisimgcachetSelected_recid(JSON.parse(res.data.message).cachet_img_recid);
|
|
}
|
|
|
|
}
|
|
else if (String(res.data.status) === String("Err_Connexion")) {
|
|
alert('Erreur: ' + res.data.message);
|
|
history.push("/Connexion");
|
|
return;
|
|
}
|
|
else {
|
|
setgetPartnerImages_api("false");
|
|
setgetPartnerImages_message(res.data.message)
|
|
|
|
}
|
|
}).catch((error) => {
|
|
console.warn('getPartnerImages ee: Not good man :( = ', error);
|
|
setgetPartnerImages_api("false");
|
|
setgetPartnerImages_message(" Impossible de recuperer les images/médias du partenaire")
|
|
})
|
|
|
|
}
|
|
|
|
|
|
function handleChange(prop) {
|
|
return (event) => {
|
|
setValues({ ...values, [prop]: event.target.value });
|
|
};
|
|
}
|
|
|
|
|
|
function handleChange1(prop) {
|
|
return (event) => {
|
|
setValuesPass1({ ...valuesPass1, [prop]: event.target.value });
|
|
};
|
|
}
|
|
|
|
function handleChange2(prop) {
|
|
return (event) => {
|
|
setValuesPass2({ ...valuesPass2, [prop]: event.target.value });
|
|
};
|
|
}
|
|
|
|
function handleChange3(prop) {
|
|
return (event) => {
|
|
setValuesPass3({ ...valuesPass3, [prop]: event.target.value });
|
|
};
|
|
}
|
|
|
|
|
|
const handleClickShowPassword_current_pwd = () => {
|
|
var filtre2_value = document.getElementsByName("current_pwd")[0].value;
|
|
|
|
if (currentpawdvisible == false) {
|
|
document.getElementsByName("current_pwd")[0].type = "text";
|
|
setcurrentpawdvisible(true);
|
|
}
|
|
else if (currentpawdvisible == true) {
|
|
document.getElementsByName("current_pwd")[0].type = "password";
|
|
setcurrentpawdvisible(false);
|
|
}
|
|
|
|
};
|
|
|
|
|
|
const handleClickShowPassword_new_pwd = () => {
|
|
if (newpawdvisible == false) {
|
|
document.getElementsByName("new_pwd")[0].type = "text";
|
|
setnewpawdvisible(true);
|
|
}
|
|
else if (newpawdvisible == true) {
|
|
document.getElementsByName("new_pwd")[0].type = "password";
|
|
setnewpawdvisible(false);
|
|
}
|
|
};
|
|
|
|
|
|
const handleClickShowPassword_new_pwd_conf = () => {
|
|
if (confpwdvisible == false) {
|
|
document.getElementsByName("new_pwd_conf")[0].type = "text";
|
|
setconfpwdvisible(true);
|
|
}
|
|
else if (confpwdvisible == true) {
|
|
document.getElementsByName("new_pwd_conf")[0].type = "password";
|
|
setconfpwdvisible(false);
|
|
}
|
|
|
|
};
|
|
|
|
const handleMouseDownPassword = (event) => {
|
|
event.preventDefault();
|
|
};
|
|
|
|
const [insert_keyfieldsdesabled, setinsert_keyfieldsdesabled] = useState(true);
|
|
|
|
// Gestion champs caché : Current_Insertion_Key
|
|
const [values_current_insert_key, setvalues_current_insert_key] = React.useState({
|
|
current_insert_key: '',
|
|
showCurrent_insert_key: false,
|
|
});
|
|
|
|
|
|
const [valuescurrent_insert_key, setvaluescurrent_insert_key] = React.useState({
|
|
password_insert_current_key: '',
|
|
showpassword_insert_current_key: false,
|
|
});
|
|
|
|
const [current_insert_key_visible, setcurrent_insert_key_visible] = useState(false);
|
|
|
|
function handleChange_current_insert_key(prop) {
|
|
return (event) => {
|
|
setvaluescurrent_insert_key({ ...current_insert_key_visible, [prop]: event.target.value });
|
|
};
|
|
}
|
|
|
|
const handleClickcurrent_insert_key = () => {
|
|
if (current_insert_key_visible == false) {
|
|
document.getElementsByName("current_insert_key")[0].type = "text";
|
|
setcurrent_insert_key_visible(true);
|
|
}
|
|
else if (current_insert_key_visible == true) {
|
|
document.getElementsByName("current_insert_key")[0].type = "password";
|
|
setcurrent_insert_key_visible(false);
|
|
}
|
|
};
|
|
// FIN Gestion champs caché : Current_Insertion_Key
|
|
|
|
// Gestion champs caché : new_Insertion_Key
|
|
const [values_new_insert_key, setvalues_new_insert_key] = React.useState({
|
|
new_insert_key: '',
|
|
shownew_insert_key: false,
|
|
});
|
|
|
|
|
|
const [valuesnew_insert_key, setvaluesnew_insert_key] = React.useState({
|
|
password_insert_new_key: '',
|
|
showpassword_insert_new_key: false,
|
|
});
|
|
|
|
const [new_insert_key_visible, setnew_insert_key_visible] = useState(false);
|
|
|
|
function handleChange_new_insert_key(prop) {
|
|
return (event) => {
|
|
setvaluesnew_insert_key({ ...new_insert_key_visible, [prop]: event.target.value });
|
|
};
|
|
}
|
|
|
|
const handleClicknew_insert_key = () => {
|
|
if (new_insert_key_visible == false) {
|
|
document.getElementsByName("new_insert_key")[0].type = "text";
|
|
setnew_insert_key_visible(true);
|
|
}
|
|
else if (new_insert_key_visible == true) {
|
|
document.getElementsByName("new_insert_key")[0].type = "password";
|
|
setnew_insert_key_visible(false);
|
|
}
|
|
};
|
|
// FIN Gestion new champs caché : new_insertion_Key
|
|
|
|
// Gestion champs caché : conf_new_Insertion_Key
|
|
const [values_conf_new_insert_key, setvalues_conf_new_insert_key] = React.useState({
|
|
conf_new_insert_key: '',
|
|
showconf_new_insert_key: false,
|
|
});
|
|
|
|
|
|
const [valuesconf_new_insert_key, setvaluesconf_new_insert_key] = React.useState({
|
|
password_insertconf_new_key: '',
|
|
showpassword_insertconf_new_key: false,
|
|
});
|
|
|
|
const [conf_new_insert_key_visible, setconf_new_insert_key_visible] = useState(false);
|
|
|
|
function handleChangeconf_new_insert_key(prop) {
|
|
return (event) => {
|
|
setvaluesconf_new_insert_key({ ...conf_new_insert_key_visible, [prop]: event.target.value });
|
|
};
|
|
}
|
|
|
|
const handleClickconf_new_insert_key = () => {
|
|
if (conf_new_insert_key_visible == false) {
|
|
document.getElementsByName("conf_new_insert_key")[0].type = "text";
|
|
setconf_new_insert_key_visible(true);
|
|
}
|
|
else if (conf_new_insert_key_visible == true) {
|
|
document.getElementsByName("conf_new_insert_key")[0].type = "password";
|
|
setconf_new_insert_key_visible(false);
|
|
}
|
|
};
|
|
// FIN Gestion new champs caché : conf_new_insertion_Key
|
|
|
|
function desablesecurtyInsertKeyfields() {
|
|
|
|
setinsert_key_updated();
|
|
document.getElementsByName("current_insert_key")[0].disabled = true;
|
|
document.getElementsByName("current_insert_key")[0].style.backgroundColor = "#ECEFF1";
|
|
document.getElementsByName("current_insert_key")[0].value = "";
|
|
|
|
document.getElementsByName("new_insert_key")[0].disabled = true;
|
|
document.getElementsByName("new_insert_key")[0].style.backgroundColor = "#ECEFF1";
|
|
document.getElementsByName("new_insert_key")[0].value = "";
|
|
|
|
document.getElementsByName("conf_new_insert_key")[0].disabled = true;
|
|
document.getElementsByName("conf_new_insert_key")[0].style.backgroundColor = "#ECEFF1";
|
|
document.getElementsByName("conf_new_insert_key")[0].value = "";
|
|
|
|
|
|
setinsert_keyfieldsdesabled(true);
|
|
}
|
|
|
|
|
|
|
|
|
|
function enablesecurtyInsertKeyfields() {
|
|
|
|
setinsert_key_updated();
|
|
document.getElementsByName("current_insert_key")[0].disabled = false;
|
|
document.getElementsByName("current_insert_key")[0].style.backgroundColor = "#FFFFFF";
|
|
|
|
|
|
document.getElementsByName("new_insert_key")[0].disabled = false;
|
|
document.getElementsByName("new_insert_key")[0].style.backgroundColor = "#FFFFFF";
|
|
|
|
document.getElementsByName("conf_new_insert_key")[0].disabled = false;
|
|
document.getElementsByName("conf_new_insert_key")[0].style.backgroundColor = "#FFFFFF";
|
|
|
|
setinsert_keyfieldsdesabled(false);
|
|
}
|
|
|
|
const qualiopi = [
|
|
{
|
|
value: '1',
|
|
label: 'Oui',
|
|
},
|
|
{
|
|
value: '0',
|
|
label: 'Non',
|
|
},
|
|
|
|
];
|
|
|
|
const certitrace = [
|
|
{
|
|
value: '1',
|
|
label: 'Oui',
|
|
},
|
|
{
|
|
value: '0',
|
|
label: 'Non',
|
|
},
|
|
|
|
];
|
|
|
|
const datadock = [
|
|
{
|
|
value: '1',
|
|
label: 'Oui',
|
|
},
|
|
{
|
|
value: '0',
|
|
label: 'Non',
|
|
},
|
|
|
|
];
|
|
|
|
const bureaucertitrace = [
|
|
{
|
|
value: '1',
|
|
label: 'Oui',
|
|
},
|
|
{
|
|
value: '0',
|
|
label: 'Non',
|
|
},
|
|
|
|
];
|
|
|
|
const certifvoltaire = [
|
|
{
|
|
value: '1',
|
|
label: 'Oui',
|
|
},
|
|
{
|
|
value: '0',
|
|
label: 'Non',
|
|
},
|
|
|
|
];
|
|
|
|
|
|
|
|
const [myqualiopi, setmyqualiopi] = useState("");
|
|
const handleChangequaliopi = (event) => {
|
|
if (fields1desabled) {
|
|
alert(" Vous devez cliquer sur 'Editer' pour activer les modifications");
|
|
return;
|
|
}
|
|
|
|
const name = event.target.name;
|
|
const value = event.target.value;
|
|
setdatamodification("1");
|
|
setmyqualiopi(value);
|
|
}
|
|
|
|
const [mydatadock, setmydatadock] = useState("");
|
|
const handleChangedatadock = (event) => {
|
|
if (fields1desabled) {
|
|
alert(" Vous devez cliquer sur 'Editer' pour activer les modifications");
|
|
return;
|
|
}
|
|
|
|
const name = event.target.name;
|
|
const value = event.target.value;
|
|
setdatamodification("1");
|
|
setmydatadock(value);
|
|
}
|
|
|
|
|
|
const [mycertitrace, setmycertitrace] = useState("");
|
|
const handleChangecertitrace = (event) => {
|
|
|
|
if (fields1desabled) {
|
|
alert(" Vous devez cliquer sur 'Editer' pour activer les modifications");
|
|
return;
|
|
}
|
|
|
|
const name = event.target.name;
|
|
const value = event.target.value;
|
|
setdatamodification("1");
|
|
setmycertitrace(value);
|
|
}
|
|
|
|
const [mybureaucertitrace, setmybureaucertitrace] = useState("");
|
|
const handleChangebureaucertitrace = (event) => {
|
|
if (fields1desabled) {
|
|
alert(" Vous devez cliquer sur 'Editer' pour activer les modifications");
|
|
return;
|
|
}
|
|
|
|
const name = event.target.name;
|
|
const value = event.target.value;
|
|
setdatamodification("1");
|
|
setmybureaucertitrace(value);
|
|
}
|
|
|
|
|
|
const [mycertifvoltaire, setmycertifvoltaire] = useState("");
|
|
const handleChangecertifvoltaire = (event) => {
|
|
if (fields1desabled) {
|
|
alert(" Vous devez cliquer sur 'Editer' pour activer les modifications");
|
|
return;
|
|
}
|
|
|
|
const name = event.target.name;
|
|
const value = event.target.value;
|
|
setdatamodification("1");
|
|
setmycertifvoltaire(value);
|
|
}
|
|
|
|
|
|
|
|
const [datamodification, setdatamodification] = useState("0");
|
|
function DataUpdated() {
|
|
setdatamodification("1");
|
|
}
|
|
|
|
const [isimgclassdeleted, setisimgclassdeleted] = useState("");
|
|
const [isimgclassdeleted_message, setisimgclassdeleted_message] = useState("");
|
|
|
|
function removeRecodedClassImage() {
|
|
var class_external_code = "";
|
|
if (document.getElementsByName("external_code")[0].value && document.getElementsByName("external_code")[0].value.length > 3) {
|
|
class_external_code = document.getElementsByName("external_code")[0].value;
|
|
} else {
|
|
alert(" Vous devez saisir le code externe de la formation avant d'enregistrer une image. Le code externe prend au moins 3 caractères");
|
|
return;
|
|
}
|
|
|
|
var form = new FormData();
|
|
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
form.append("token", stored_cookie);
|
|
form.append("class_external_code", class_external_code);
|
|
form.append("type", "partner");
|
|
|
|
fetch(
|
|
process.env.REACT_APP_API_URL + "myclass/api/DeleteRecodedClassImage/",
|
|
{
|
|
method: 'POST',
|
|
body: form,
|
|
}
|
|
).then((response) => response.json())
|
|
.then((result) => {
|
|
|
|
//console.log(' removeRecodedClassImage : status:', result['status']);
|
|
//console.log('removeRecodedClassImage : Success:', result['message']);
|
|
|
|
setisimgclassSelected(false);
|
|
|
|
if (String(result['status']) === String("true")) {
|
|
setisimgclassdeleted("1");
|
|
setuserimgclassprofil("");
|
|
}
|
|
else if (String(result['status']) === String("Err_Connexion")) {
|
|
alert('Erreur: ' + result['message']);
|
|
history.push("/Connexion");
|
|
return;
|
|
}
|
|
|
|
else {
|
|
setisimgclassdeleted("0");
|
|
setisimgclassdeleted_message(result['message']);
|
|
setisimgclassSelected(true);
|
|
}
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:');
|
|
setisimgclassSelected(true);
|
|
setisimgclassdeleted("0");
|
|
setisimgclassdeleted_message(result['message']);
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
function removeRecodedLogoImage() {
|
|
if (!isimgclassSelected_recid || String(isimgclassSelected_recid).length < 3) {
|
|
alert(" Image incorrecte. Impossible de la supprimer ");
|
|
return;
|
|
}
|
|
|
|
var form = new FormData();
|
|
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
form.append("token", stored_cookie);
|
|
form.append("image_recid", isimgclassSelected_recid);
|
|
|
|
fetch(
|
|
process.env.REACT_APP_API_URL + "myclass/api/DeleteClassImage_v2/",
|
|
{
|
|
method: 'POST',
|
|
body: form,
|
|
}
|
|
).then((response) => response.json())
|
|
.then((result) => {
|
|
|
|
console.log(' removeRecodedClassImage : status:', result['status']);
|
|
console.log('removeRecodedClassImage : Success:', result['message']);
|
|
|
|
|
|
if (String(result['status']) === String("true")) {
|
|
setisimgclassSelected("");
|
|
setisimgclassSelected_recid("");
|
|
setisimgclassSelectedfile("");
|
|
setuserimgclassprofil("");
|
|
getPartnerImages();
|
|
|
|
}
|
|
else if (String(result['status']) === String("Err_Connexion")) {
|
|
alert('Erreur: ' + result['message']);
|
|
history.push("/Connexion");
|
|
return;
|
|
}
|
|
|
|
else {
|
|
alert(result['message']);
|
|
}
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:', error);
|
|
alert(" Impossible de supprimer l'image ");
|
|
});
|
|
|
|
}
|
|
|
|
function removeRecodedCachetImage() {
|
|
if (!isimgcachetSelected_recid || String(isimgcachetSelected_recid).length < 3) {
|
|
alert(" Image incorrecte. Impossible de la supprimer ");
|
|
return;
|
|
}
|
|
|
|
var form = new FormData();
|
|
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
form.append("token", stored_cookie);
|
|
form.append("image_recid", isimgcachetSelected_recid);
|
|
|
|
fetch(
|
|
process.env.REACT_APP_API_URL + "myclass/api/DeleteClassImage_v2/",
|
|
{
|
|
method: 'POST',
|
|
body: form,
|
|
}
|
|
).then((response) => response.json())
|
|
.then((result) => {
|
|
|
|
|
|
if (String(result['status']) === String("true")) {
|
|
console.log(' removeRecodedClassImage : status:', result['status']);
|
|
console.log('removeRecodedClassImage : Success:', result['message']);
|
|
setisimgcachetSelected("");
|
|
setisimgcachetSelected_recid("");
|
|
setisimgcachetSelectedfile("");
|
|
setisimgcachet("");
|
|
getPartnerImages();
|
|
|
|
}
|
|
else if (String(result['status']) === String("Err_Connexion")) {
|
|
alert('Erreur: ' + result['message']);
|
|
history.push("/Connexion");
|
|
return;
|
|
}
|
|
|
|
else {
|
|
alert(result['message']);
|
|
}
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:', error);
|
|
alert(" Impossible de supprimer l'image ");
|
|
});
|
|
|
|
|
|
}
|
|
|
|
const [isimgclassSaved, setisimgclassSaved] = useState("");
|
|
const [isimgclassSaved_message, setisimgclassSaved_message] = useState("");
|
|
function sendClassImage(e) {
|
|
|
|
var class_external_code = "";
|
|
if (document.getElementsByName("external_code")[0].value && document.getElementsByName("external_code")[0].value.length > 3) {
|
|
class_external_code = document.getElementsByName("external_code")[0].value;
|
|
} else {
|
|
alert(" Vous devez saisir le code externe de la formation avant d'enregistrer une image. Le code externe prend au moins 3 caractères");
|
|
return;
|
|
}
|
|
|
|
var formData = new FormData();
|
|
formData.append('File', isimgclassSelected);
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
formData.append("token", stored_cookie);
|
|
formData.append("class_external_code", class_external_code);
|
|
|
|
formData.append("type", "partner");
|
|
fetch(
|
|
process.env.REACT_APP_API_URL + "myclass/api/recordClassImage/",
|
|
{
|
|
method: 'POST',
|
|
body: formData,
|
|
}
|
|
).then((response) => response.json())
|
|
.then((result) => {
|
|
//console.log('status:', result['status']);
|
|
//console.log('Success:', result['message']);
|
|
setisimgclassSelected(false);
|
|
|
|
if (String(result['status']) == String("true")) {
|
|
setisimgclassSaved("1");
|
|
}
|
|
else {
|
|
setisimgclassSaved("0");
|
|
setisimgclassSaved_message(result['message']);
|
|
setisimgclassSelected(true);
|
|
}
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:');
|
|
setisimgclassSelected(true);
|
|
setisimgclassSaved("0");
|
|
setisimgclassSaved_message(result['message']);
|
|
});
|
|
};
|
|
|
|
const [isimgclassSelected, setisimgclassSelected] = useState(false);
|
|
const [isimgclassSelected_recid, setisimgclassSelected_recid] = useState("");
|
|
const [isimgclassSelectedfile, setisimgclassSelectedfile] = useState(false);
|
|
|
|
|
|
const [userimgclassprofil, setuserimgclassprofil] = useState();
|
|
const [userimgclassprofilchanged, setuserimgclassprofilchanged] = useState("");
|
|
const imglogoclasschangeHandler = (event) => {
|
|
|
|
|
|
let file_size = event.target.files[0].size;
|
|
|
|
//or if you like to have name and type
|
|
//console.log(event.target.files);
|
|
|
|
let file_name = event.target.files[0].name;
|
|
let file_type = event.target.files[0].type;
|
|
|
|
|
|
|
|
//alert("file_size = "+file_size+" file_type = "+file_type+" a = "+a);
|
|
if (file_size > 1000000) {
|
|
alert("L'image ne doit pas dépasser un 1 Méga octets");
|
|
return;
|
|
}
|
|
setisimgclassSelected(event.target.files[0]);
|
|
setisimgclassSelectedfile(true);
|
|
|
|
setuserimgclassprofil(URL.createObjectURL(event.target.files[0]));
|
|
setuserimgclassprofilchanged("1");
|
|
};
|
|
|
|
const [isimgcachetSelected, setisimgcachetSelected] = useState(false);
|
|
const [isimgcachetSelected_recid, setisimgcachetSelected_recid] = useState("");
|
|
const [isimgcachetSelectedfile, setisimgcachetSelectedfile] = useState(false);
|
|
|
|
|
|
const [isimgcachet, setisimgcachet] = useState();
|
|
const [isimgcachetchanged, setisimgcachetchanged] = useState("");
|
|
const imgcachetchangeHandler = (event) => {
|
|
|
|
|
|
|
|
let file_size = event.target.files[0].size;
|
|
|
|
//or if you like to have name and type
|
|
//console.log(event.target.files);
|
|
|
|
let file_name = event.target.files[0].name;
|
|
let file_type = event.target.files[0].type;
|
|
|
|
|
|
|
|
//alert("file_size = "+file_size+" file_type = "+file_type+" a = "+a);
|
|
if (file_size > 1000000) {
|
|
alert("L'image ne doit pas dépasser un 1 Méga octets");
|
|
return;
|
|
}
|
|
setisimgcachetSelected(event.target.files[0]);
|
|
setisimgcachetSelectedfile(true);
|
|
|
|
setisimgcachet(URL.createObjectURL(event.target.files[0]));
|
|
setisimgcachetchanged("1");
|
|
};
|
|
|
|
|
|
const [isimgcachetdeleted, setisimgcachetdeleted] = useState("");
|
|
const [isimgcachetdeleted_message, setisimgcachetdeleted_message] = useState("");
|
|
|
|
const [isimgcachetSaved, setisimgcachetSaved] = useState("");
|
|
const [isimgcachetSaved_message, setisimgcachetSaved_message] = useState("");
|
|
|
|
const [submenu, setsubmenu] = useState("submenu_donnee_entreprise");
|
|
|
|
function sleep(ms) {
|
|
return new Promise(resolve => setTimeout(resolve, ms));
|
|
}
|
|
|
|
async function submenu_donnee_entreprise() {
|
|
setsubmenu("submenu_donnee_entreprise");
|
|
await sleep(5);
|
|
if (fields1desabled == true) {
|
|
desablefield1();
|
|
}
|
|
else {
|
|
enablefieds1();
|
|
}
|
|
}
|
|
|
|
async function submenu_donnee_facturation() {
|
|
setsubmenu("submenu_donnee_facturation");
|
|
}
|
|
|
|
async function submenu_donnee_securite() {
|
|
|
|
//var security_retval = props.check_user_acces_right("account_securite", "read");
|
|
|
|
setsubmenu("submenu_donnee_securite");
|
|
|
|
}
|
|
|
|
async function submenu_contact() {
|
|
setsubmenu("submenu_contact");
|
|
}
|
|
|
|
async function submenu_donnee_catalog_pub() {
|
|
Get_Partner_Catalog_Pub_Config();
|
|
setsubmenu("submenu_donnee_catalog_pub");
|
|
}
|
|
|
|
|
|
|
|
const [p_nom, setp_nom] = useState("");
|
|
const [p_siret, setp_siret] = useState("");
|
|
const [p_telephone, setp_telephone] = useState("");
|
|
const [p_email, setp_email] = useState("");
|
|
const [p_website, setp_website] = useState("");
|
|
const [p_link_linkedin, setp_link_linkedin] = useState("");
|
|
const [p_link_facebook, setp_link_facebook] = useState("");
|
|
const [p_link_twitter, setp_link_twitter] = useState("");
|
|
const [p_adr_street, setp_adr_street] = useState("");
|
|
const [p_adr_zip, setp_adr_zip] = useState("");
|
|
const [p_adr_city, setp_adr_city] = useState("");
|
|
const [p_adr_country, setp_adr_country] = useState("");
|
|
const [p_num_nda, setp_num_nda] = useState("");
|
|
const [p_isqualiopi, setp_isqualiopi] = useState("");
|
|
const [p_isdatadock, setp_isdatadock] = useState("");
|
|
const [p_iscertifvoltaire, setp_iscertifvoltaire] = useState("");
|
|
const [p_contact_nom, setp_contact_nom] = useState("");
|
|
const [p_contact_prenom, setp_contact_prenom] = useState("");
|
|
const [p_contact_tel, setp_contact_tel] = useState("");
|
|
const [p_contact_mail, setp_contact_mail] = useState("");
|
|
|
|
const [p_lms_virtualhost_url, setp_lms_virtualhost_url] = useState("");
|
|
const [p_lms_username, setp_lms_username] = useState("");
|
|
const [p_mysy_lms_user_id, setp_mysy_lms_user_id] = useState("");
|
|
|
|
|
|
const [submenu_catalog_pub, setsubmenu_catalog_pub] = useState("design");
|
|
function submenu_catalog_pub_design() {
|
|
setsubmenu_catalog_pub("design");
|
|
}
|
|
|
|
function submenu_catalog_pub_logo() {
|
|
clear_message_catalog_pub();
|
|
setsubmenu_catalog_pub("logo");
|
|
}
|
|
|
|
function submenu_catalog_pub_img_bg() {
|
|
setsubmenu_catalog_pub("banniere");
|
|
}
|
|
|
|
const [handleSubmission_logo_api, sethandleSubmission_logo_api] = useState();
|
|
const [handleSubmission_logo_result, sethandleSubmission_logo_result] = useState();
|
|
const [handleSubmission_logo_message, sethandleSubmission_logo_message] = useState();
|
|
|
|
function clear_message_catalog_pub() {
|
|
/*sethandleSubmission_logo_message();
|
|
sethandleSubmission_logo_api();
|
|
setSendBackground_Img_api();
|
|
setSendBackground_Img_message();*/
|
|
}
|
|
|
|
const [NEW_Get_List_Catalog_Public_Themes_result, setNEW_Get_List_Catalog_Public_Themes_result] = useState([]);
|
|
|
|
const [Get_List_Catalog_Public_Themes_api, setGet_List_Catalog_Public_Themes_api] = useState();
|
|
const [Get_List_Catalog_Public_Themes_message, setGet_List_Catalog_Public_Themes_message] = useState();
|
|
const [Get_List_Catalog_Public_Themes_result, setGet_List_Catalog_Public_Themes_result] = useState([]);
|
|
function Get_List_Catalog_Public_Themes() {
|
|
|
|
var form = new FormData();
|
|
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
form.append("token", stored_cookie);
|
|
|
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_List_Theme_Catalog_Pub/";
|
|
|
|
axios.post(myurl, form).then(res => {
|
|
|
|
if (String(res.data.status) === "true") {
|
|
//console.log(" In Get_List_Catalog_Public_Themes res.data.status = " + res.data.status);
|
|
//console.log(" In Get_List_Catalog_Public_Themes res.data.message r_class = " + res.data.message);
|
|
setGet_List_Catalog_Public_Themes_api("true");
|
|
setGet_List_Catalog_Public_Themes_result(res.data.message);
|
|
|
|
var new_data2 = [];
|
|
const new_data = res.data.message.map((x) => {
|
|
|
|
//---
|
|
var id = JSON.parse(x).id;
|
|
var _id = JSON.parse(x)._id;
|
|
var code = JSON.parse(x).code;
|
|
var description = JSON.parse(x).description;
|
|
var theme_preview = JSON.parse(x).theme_preview;
|
|
|
|
|
|
//---
|
|
var node = {
|
|
"_id": _id,
|
|
"id": id,
|
|
"label": code + " - " + description,
|
|
"code": code,
|
|
"description": description,
|
|
"theme_preview": theme_preview,
|
|
|
|
};
|
|
new_data2.push(node);
|
|
});
|
|
|
|
|
|
if (new_data2.length > 0)
|
|
setNEW_Get_List_Catalog_Public_Themes_result(new_data2);
|
|
|
|
|
|
}
|
|
else {
|
|
setGet_List_Catalog_Public_Themes_api("false");
|
|
setGet_List_Catalog_Public_Themes_message(res.data.message);
|
|
}
|
|
|
|
}).catch((error) => {
|
|
console.warn('Not good man :( Get_List_Catalog_Public_Themes = ', error);
|
|
setGet_List_Catalog_Public_Themes_api("false");
|
|
|
|
})
|
|
}
|
|
|
|
|
|
|
|
|
|
const [selected_catalog_pub_theme_id, setselected_catalog_pub_theme_id] = useState();
|
|
const [selected_catalog_pub_theme_preview, setselected_catalog_pub_theme_preview] = useState();
|
|
|
|
|
|
|
|
const [Add_Update_Partner_Catalog_Pub_Config_api, setAdd_Update_Partner_Catalog_Pub_Config_api] = useState();
|
|
const [Add_Update_Partner_Catalog_Pub_Config_result, setAdd_Update_Partner_Catalog_Pub_Config_result] = useState();
|
|
const [Add_Update_Partner_Catalog_Pub_Config_message, setAdd_Update_Partner_Catalog_Pub_Config_message] = useState();
|
|
|
|
function Add_Update_Partner_Catalog_Pub_Config() {
|
|
var form = new FormData();
|
|
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
form.append("token", stored_cookie);
|
|
|
|
|
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Add_Update_Partner_Catalog_Pub_Config/";
|
|
setLoading(true);
|
|
axios.post(myurl, form).then(res => {
|
|
|
|
if (String(res.data.status) === "true") {
|
|
//console.log(" In GetLms_Themes res.data.status = " + res.data.status);
|
|
//console.log(" In GetLms_Themes res.data.message r_class = " + res.data.message);
|
|
setAdd_Update_Partner_Catalog_Pub_Config_api("true");
|
|
setAdd_Update_Partner_Catalog_Pub_Config_result(res.data.message);
|
|
setLoading(false);
|
|
alert(" La mise à jour du theme a été correctement effectuée. ");
|
|
}
|
|
else {
|
|
setAdd_Update_Partner_Catalog_Pub_Config_api("false");
|
|
setAdd_Update_Partner_Catalog_Pub_Config_message(res.data.message);
|
|
setLoading(false);
|
|
}
|
|
|
|
}).catch((error) => {
|
|
console.warn('Not good man :( GetLms_Themes = ', error);
|
|
setAdd_Update_Partner_Catalog_Pub_Config_api("false");
|
|
setLoading(false);
|
|
|
|
})
|
|
}
|
|
|
|
|
|
const [Partner_Catalog_Pub_logo, setPartner_Catalog_Pub_logo] = useState("");
|
|
const [Partner_Catalog_Pub_banniere, setPartner_Catalog_Pub_banniere] = useState("");
|
|
const [Partner_Catalog_Pub_message_1_txt, setPartner_Catalog_Pub_message_1_txt] = useState("");
|
|
const [Partner_Catalog_Pub_theme_id, setPartner_Catalog_Pub_theme_id] = useState("");
|
|
|
|
|
|
const [Get_Partner_Catalog_Pub_Config_api, setGet_Partner_Catalog_Pub_Config_api] = useState();
|
|
const [Get_Partner_Catalog_Pub_Config_message, setGet_Partner_Catalog_Pub_Config_message] = useState();
|
|
const [Get_Partner_Catalog_Pub_Config_result, setGet_Partner_Catalog_Pub_Config_result] = useState();
|
|
function Get_Partner_Catalog_Pub_Config(event) {
|
|
|
|
var form = new FormData();
|
|
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
form.append("token", stored_cookie);
|
|
|
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Get_Partner_Catalog_Pub_Config/";
|
|
|
|
setLoading(true);
|
|
axios.post(myurl, form).then(res => {
|
|
setLoading(false);
|
|
if (String(res.data.status) === "true") {
|
|
//console.log(" In Get_Partner_Catalog_Pub_Config res.data.status = " + res.data.status);
|
|
//console.log(" In Get_Partner_Catalog_Pub_Config res.data.message r_class = " + res.data.message);
|
|
setGet_Partner_Catalog_Pub_Config_api("true");
|
|
setGet_Partner_Catalog_Pub_Config_result(res.data.message);
|
|
|
|
var logo_img = "data:image/png;base64," + JSON.parse(res.data.message).logo;
|
|
setPartner_Catalog_Pub_logo(logo_img);
|
|
|
|
|
|
var banniere_img = "data:image/png;base64," + JSON.parse(res.data.message).banniere_img;
|
|
setPartner_Catalog_Pub_banniere(banniere_img);
|
|
|
|
setPartner_Catalog_Pub_message_1_txt(JSON.parse(res.data.message).message_1_txt);
|
|
|
|
setPartner_Catalog_Pub_theme_id(JSON.parse(res.data.message).theme_id);
|
|
|
|
}
|
|
else {
|
|
setGet_Partner_Catalog_Pub_Config_api("false");
|
|
setGet_Partner_Catalog_Pub_Config_message(res.data.message);
|
|
}
|
|
|
|
}).catch((error) => {
|
|
setLoading(false);
|
|
console.warn('Not good man :( Get_Partner_Catalog_Pub_Config = ', error);
|
|
alert(" Impossible de récuperer la configuration du catalogue public ")
|
|
|
|
})
|
|
}
|
|
|
|
|
|
|
|
function SendBackground_Img() {
|
|
setLoading(true);
|
|
|
|
const formData = new FormData();
|
|
formData.append('File', img_bg_file2);
|
|
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
formData.append("token", stored_cookie);
|
|
|
|
|
|
fetch(
|
|
process.env.REACT_APP_API_URL + "myclass/api/Lms_Add_BG_File/",
|
|
{
|
|
method: 'POST',
|
|
body: formData,
|
|
}
|
|
)
|
|
.then((response) => response.json())
|
|
.then((result) => {
|
|
//console.log('Success:', result['message']);
|
|
|
|
if (String(result['status']) === String("true")) {
|
|
setSendBackground_Img_api("true");
|
|
alert(" L'image bannière a été correctement mise à jour")
|
|
|
|
} else if (String(result['status']) === String("Err_Connexion")) {
|
|
alert('Erreur: ' + result['message']);
|
|
history.push("/Connexion");
|
|
}
|
|
|
|
else {
|
|
setSendBackground_Img_api("false");
|
|
setSendBackground_Img_message(result['message']);
|
|
}
|
|
setLoading(false);
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:', result);
|
|
setSendBackground_Img_api("false");
|
|
setSendBackground_Img_message(result['message']);
|
|
setLoading(false);
|
|
});
|
|
|
|
|
|
};
|
|
|
|
const changeHandler2_bg = (event) => {
|
|
hiddenFileInput_bg.current.click();
|
|
};
|
|
|
|
const [logo_file_name, setlogo_file_name] = useState();
|
|
const hiddenFileInput_logo = React.useRef(null);
|
|
|
|
const [bg_file_name, setbg_file_name] = useState();
|
|
const hiddenFileInput_bg = React.useRef(null);
|
|
const [handleSubmission_bg_api, sethandleSubmission_bg_api] = useState();
|
|
const [handleSubmission_bg_result, sethandleSubmission_bg_result] = useState();
|
|
const [handleSubmission_bg_message, sethandleSubmission_bg_message] = useState();
|
|
|
|
const handleSubmission_bg = event => {
|
|
const fileUploaded = event.target.files[0];
|
|
let file_size = event.target.files[0].size;
|
|
let file_type = event.target.files[0].type;
|
|
|
|
console.log("file_size = ", file_size, " file_type = ", file_type, " naturalWidth = ", fileUploaded.naturalWidth);
|
|
if (file_size > 1000000) {
|
|
alert("Le fichier ne doit pas dépasser un 1 Méga octets");
|
|
return;
|
|
}
|
|
|
|
//image/png
|
|
if (String(file_type) !== "image/png") {
|
|
alert("Le fichier n'est pas au format PNG");
|
|
return;
|
|
}
|
|
|
|
setLoading(true);
|
|
|
|
var _URL = window.URL || window.webkitURL;
|
|
var file, img;
|
|
var img_height, img_width;
|
|
|
|
if ((file = event.target.files[0])) {
|
|
img = new Image();
|
|
var objectUrl = _URL.createObjectURL(file);
|
|
img.onload = function () {
|
|
img_height = this.height;
|
|
img_width = this.width;
|
|
//console.log(" img_width = ", img_width);
|
|
_URL.revokeObjectURL(objectUrl);
|
|
if (parseFloat(img_width) > 1500 && parseFloat(img_width) < 1930 &&
|
|
parseFloat(img_height) > 150 && parseFloat(img_height) < 195) {
|
|
//console.log(" img_height est = ", img_height, " < à 1500 ");
|
|
|
|
// Verification que le nom du fichier est alpha numerique
|
|
/*var regExp = /^[A-Za-z0-9]+$/;
|
|
if (!regExp.test(event.target.files[0].name)) {
|
|
sethandleSubmission_bg_message(" Le nom de l'image comporte des caractères non alphanumériques");
|
|
sethandleSubmission_bg_api("false");
|
|
setLoading(false);
|
|
return
|
|
}*/
|
|
|
|
|
|
if (String(event.target.files[0].name).length > 50) {
|
|
sethandleSubmission_bg_message(" Le nom du fichier est trop long. il doit faire moins de 50 caractère");
|
|
sethandleSubmission_bg_api("false");
|
|
setLoading(false);
|
|
|
|
return
|
|
}
|
|
|
|
setbg_file_name(event.target.files[0].name);
|
|
|
|
setimg_bg_file(URL.createObjectURL(event.target.files[0]));
|
|
setimg_bg_file2(event.target.files[0]);
|
|
|
|
|
|
} else {
|
|
sethandleSubmission_bg_message(" La taille de l'image est incorrecte. Larg = " + String(img_width) + " px Long = " + String(img_height) + " px");
|
|
sethandleSubmission_bg_api("false");
|
|
setLoading(false);
|
|
return;
|
|
|
|
}
|
|
};
|
|
img.src = objectUrl;
|
|
|
|
}
|
|
setLoading(false);
|
|
|
|
};
|
|
|
|
|
|
const [SendBackground_Img_api, setSendBackground_Img_api] = useState();
|
|
const [SendBackground_Img_result, setSendBackground_Img_result] = useState();
|
|
const [SendBackground_Img_message, setSendBackground_Img_message] = useState();
|
|
|
|
function SendBackground_Img() {
|
|
setLoading(true);
|
|
|
|
const formData = new FormData();
|
|
formData.append('File', img_bg_file2);
|
|
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
formData.append("token", stored_cookie);
|
|
|
|
|
|
fetch(
|
|
process.env.REACT_APP_API_URL + "myclass/api/Lms_Add_BG_File/",
|
|
{
|
|
method: 'POST',
|
|
body: formData,
|
|
}
|
|
)
|
|
.then((response) => response.json())
|
|
.then((result) => {
|
|
//console.log('Success:', result['message']);
|
|
|
|
if (String(result['status']) === String("true")) {
|
|
setSendBackground_Img_api("true");
|
|
alert(" L'image bannière a été correctement mise à jour")
|
|
|
|
} else if (String(result['status']) === String("Err_Connexion")) {
|
|
alert('Erreur: ' + result['message']);
|
|
history.push("/Connexion");
|
|
}
|
|
|
|
else {
|
|
setSendBackground_Img_api("false");
|
|
setSendBackground_Img_message(result['message']);
|
|
}
|
|
setLoading(false);
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:', result);
|
|
setSendBackground_Img_api("false");
|
|
setSendBackground_Img_message(result['message']);
|
|
setLoading(false);
|
|
});
|
|
|
|
|
|
};
|
|
|
|
const [img_bg_file, setimg_bg_file] = useState();
|
|
const [img_logo_file2, setimg_logo_file2] = useState();
|
|
const [img_bg_file2, setimg_bg_file2] = useState();
|
|
|
|
|
|
const changeHandler2_logo = (event) => {
|
|
hiddenFileInput_logo.current.click();
|
|
};
|
|
|
|
const [Delete_logo_Img_api, setDelete_logo_Img_api] = useState();
|
|
const [Delete_logo_Img_result, setDelete_logo_Img_result] = useState();
|
|
const [Delete_logo_Img_message, setDelete_logo_Img_message] = useState();
|
|
function Delete_logo_Img() {
|
|
setLoading(true);
|
|
const formData = new FormData();
|
|
|
|
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
formData.append("token", stored_cookie);
|
|
|
|
|
|
fetch(
|
|
process.env.REACT_APP_API_URL + "myclass/api/Lms_Delete_Logo_File/",
|
|
{
|
|
method: 'POST',
|
|
body: formData,
|
|
}
|
|
)
|
|
.then((response) => response.json())
|
|
.then((result) => {
|
|
//console.log('Success:', result['message']);
|
|
|
|
if (String(result['status']) === String("true")) {
|
|
setDelete_logo_Img_api("true");
|
|
setPartner_Catalog_Pub_logo('');
|
|
alert(" Le logo a été correctement supprimé ");
|
|
|
|
} else if (String(result['status']) === String("Err_Connexion")) {
|
|
alert('Erreur: ' + result['message']);
|
|
history.push("/Connexion");
|
|
}
|
|
|
|
else {
|
|
setDelete_logo_Img_api("false");
|
|
setDelete_logo_Img_message(result['message']);
|
|
}
|
|
setLoading(false);
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:', result);
|
|
setDelete_logo_Img_api("false");
|
|
setDelete_logo_Img_message(" Impossible de supprimer le fichier logo");
|
|
setLoading(false);
|
|
});
|
|
}
|
|
|
|
const [img_logo_file, setimg_logo_file] = useState();
|
|
const [Send_logo_Img_api, setSend_logo_Img_api] = useState();
|
|
const [Send_logo_Img_result, setSend_logo_Img_result] = useState();
|
|
const [Send_logo_Img_message, setSend_logo_Img_message] = useState();
|
|
function Send_logo_Img() {
|
|
setLoading(true);
|
|
|
|
|
|
const formData = new FormData();
|
|
formData.append('File', img_logo_file2);
|
|
//formData.append('token', 'K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA');
|
|
const stored_cookie = getCookie('tokenmysypart');
|
|
formData.append("token", stored_cookie);
|
|
|
|
|
|
fetch(
|
|
process.env.REACT_APP_API_URL + "myclass/api/Lms_Add_Logo_File/",
|
|
{
|
|
method: 'POST',
|
|
body: formData,
|
|
}
|
|
)
|
|
.then((response) => response.json())
|
|
.then((result) => {
|
|
//console.log('Success:', result['message']);
|
|
|
|
if (String(result['status']) === String("true")) {
|
|
setSend_logo_Img_api("true");
|
|
alert(" La mise à jour du logo a été correctement effectuée. ");
|
|
|
|
} else if (String(result['status']) === String("Err_Connexion")) {
|
|
alert('Erreur: ' + result['message']);
|
|
history.push("/Connexion");
|
|
}
|
|
|
|
else {
|
|
setSend_logo_Img_api("false");
|
|
setSend_logo_Img_message(result['message']);
|
|
}
|
|
setLoading(false);
|
|
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error:', result);
|
|
setSend_logo_Img_api("false");
|
|
setSend_logo_Img_message(result['message']);
|
|
setLoading(false);
|
|
});
|
|
|
|
}
|
|
|
|
|
|
const handleSubmission_logo = event => {
|
|
const fileUploaded = event.target.files[0];
|
|
let file_size = event.target.files[0].size;
|
|
let file_type = event.target.files[0].type;
|
|
|
|
//console.log("file_size = ", file_size, " file_type = ", file_type);
|
|
//console.log(" fileUploaded = ", fileUploaded);
|
|
if (file_size > 1000000) {
|
|
alert("Le fichier ne doit pas dépasser un 1 Méga octets");
|
|
return;
|
|
}
|
|
|
|
//image/png
|
|
if (String(file_type) !== "image/png") {
|
|
alert("Le fichier n'est pas au format PNG");
|
|
return;
|
|
}
|
|
|
|
setLoading(true);
|
|
|
|
var _URL = window.URL || window.webkitURL;
|
|
var file, img;
|
|
var img_height, img_width;
|
|
|
|
if ((file = event.target.files[0])) {
|
|
img = new Image();
|
|
var objectUrl = _URL.createObjectURL(file);
|
|
img.onload = function () {
|
|
img_height = this.height;
|
|
img_width = this.width;
|
|
_URL.revokeObjectURL(objectUrl);
|
|
// console.log(" img_width = ", img_width, " img_height = ", img_height)
|
|
|
|
if (parseFloat(img_width) > 130 && parseFloat(img_width) < 260 &&
|
|
parseFloat(img_height) > 60 && parseFloat(img_height) < 150) {
|
|
//console.log(" img_height est = ", img_height, " < à 1500 ");
|
|
|
|
// Verification que le nom du fichier est alpha numerique
|
|
/*var regExp = /^[A-Za-z0-9]+$/;
|
|
if (!regExp.test(event.target.files[0].name)) {
|
|
sethandleSubmission_logo_message(" Le nom de l'image comporte des caractères non alphanumériques");
|
|
sethandleSubmission_logo_api("false");
|
|
setLoading(false);
|
|
|
|
return
|
|
}*/
|
|
|
|
|
|
if (String(event.target.files[0].name).length > 50) {
|
|
sethandleSubmission_logo_message(" Le nom du fichier est trop long. il doit faire moins de 50 caractère");
|
|
sethandleSubmission_logo_api("false");
|
|
setLoading(false);
|
|
|
|
return
|
|
}
|
|
|
|
setlogo_file_name(event.target.files[0].name);
|
|
setimg_logo_file(URL.createObjectURL(event.target.files[0]));
|
|
setimg_logo_file2(event.target.files[0]);
|
|
|
|
} else {
|
|
sethandleSubmission_logo_message(" La taille de l'image est incorrecte. Larg = " + String(img_width) + " px Long = " + String(img_height) + " px");
|
|
sethandleSubmission_logo_api("false");
|
|
setLoading(false);
|
|
return;
|
|
}
|
|
|
|
//console.log(" after img_width = ", img_width, " after img_height = ", img_height)
|
|
};
|
|
img.src = objectUrl;
|
|
|
|
}
|
|
setLoading(false);
|
|
};
|
|
|
|
|
|
return (
|
|
<div className='updateparnterinfo'>
|
|
|
|
<div className="div_row">
|
|
{String(is_partner_admin_account) !== "1" && <Button variant="outlined" onClick={submenu_donnee_entreprise} className="detail_submenu" id='submenu_donnee_entreprise' name='submenu_donnee_entreprise'>DONNEES PERSONNELLES</Button>}
|
|
|
|
{String(is_partner_admin_account) === "1" && <Button variant="outlined" onClick={submenu_donnee_entreprise} className="detail_submenu" id='submenu_donnee_entreprise' name='submenu_donnee_entreprise'>DONNEES ENTREPRISE</Button>}
|
|
{String(is_partner_admin_account) === "1" && <Button variant="outlined" onClick={submenu_donnee_facturation} className="detail_submenu" id='submenu_donnee_facturation' name='submenu_donnee_facturation'>DONNEES FACTURATION</Button>}
|
|
<Button variant="outlined" onClick={submenu_donnee_securite} className="detail_submenu" id='submenu_donnee_securite' name='submenu_donnee_securite'>SECURITE</Button>
|
|
{/*<Button variant="outlined" onClick={submenu_contact} className="detail_submenu" id='submenu_contact' name='submenu_contact'>Contact & Adresses</Button>*/}
|
|
{String(is_partner_admin_account) === "1" && <Button variant="outlined" onClick={submenu_donnee_catalog_pub} className="detail_submenu" id='submenu_donnee_catalog_pub' name='submenu_donnee_catalog_pub'>CATALOG. PUB</Button>}
|
|
|
|
</div>
|
|
|
|
{String(submenu).trim() === "submenu_donnee_securite" && <div className="training_data">
|
|
|
|
<Partner_Securite_Data partner_account_id={partner_account_id} />
|
|
</div>}
|
|
|
|
{String(submenu).trim() === "submenu_donnee_facturation" && <div className="training_data">
|
|
<Partner_Invoicing_Data partner_account_id={partner_account_id} />
|
|
</div>}
|
|
|
|
{String(submenu).trim() === "submenu_contact" && <div className="training_data">
|
|
|
|
</div>}
|
|
|
|
{String(submenu).trim() === "submenu_donnee_catalog_pub" && <div className="training_data">
|
|
<h3> Config. Catalog public </h3>
|
|
|
|
<div className="hebergementlms">
|
|
<div style={{ "textAlign": "left", "float": "left", "width": "100%", "marginBottom": "1rem" }} id="participant_menu_tab">
|
|
<Button variant="outlined" onClick={submenu_catalog_pub_design} className="detail_class_submenu" id='menu_preinscrit' name='menu_preinscrit'>Thème & Design</Button>
|
|
<Button variant="outlined" onClick={submenu_catalog_pub_img_bg} className="detail_class_submenu" id='menu_inscrit' name='menu_inscrit'>Bannière</Button>
|
|
<Button variant="outlined" onClick={submenu_catalog_pub_logo} className="detail_class_submenu" id='menu_preinscrit' name='menu_preinscrit'>Logo</Button>
|
|
|
|
</div>
|
|
|
|
{String(submenu_catalog_pub) === String("design") && <div className="detail_class_submenu_data" style={{ "border": "None" }}>
|
|
<div className="div_row">
|
|
|
|
<div className="session_caract">Choisir un exemple de thème : <br />
|
|
|
|
<Autocomplete
|
|
disablePortal
|
|
name="client_type_id"
|
|
id="client_type_id"
|
|
className="disabled_style"
|
|
options={NEW_Get_List_Catalog_Public_Themes_result}
|
|
onChange={(event, value) => {
|
|
if (value && value._id) {
|
|
setselected_catalog_pub_theme_id(value._id);
|
|
|
|
var partner_logo_img = "data:image/png;base64," + value.theme_preview;
|
|
setselected_catalog_pub_theme_preview(partner_logo_img);
|
|
|
|
|
|
} else {
|
|
setselected_catalog_pub_theme_id('');
|
|
setselected_catalog_pub_theme_preview('')
|
|
}
|
|
}}
|
|
//value={p_one_detail_client_rattachement_nom}
|
|
|
|
renderInput={(params) => <TextField {...params} label="" placeholder="Choisir une option"
|
|
inputProps={{ ...params.inputProps, style: { fontSize: 12, height: "1.4rem" } }}
|
|
|
|
/>
|
|
}
|
|
/>
|
|
|
|
</div>
|
|
<br />
|
|
<div className="div_row">
|
|
{selected_catalog_pub_theme_preview && <div className="session_caract">
|
|
<img className="preview_certif" src={selected_catalog_pub_theme_preview} />
|
|
</div>}
|
|
</div>
|
|
|
|
<div className="div_row">
|
|
<div className="div_row" style={{ "border": "None" }}>
|
|
|
|
</div>
|
|
{<div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
|
|
|
<div className="div_row_gauche " style={{ "textAlign": 'left', 'marginLeft': '15px' }}>
|
|
<Button variant="contained" className="btn_modif" onClick={"One_annuleSessionUpdate"}>Annuler
|
|
</Button>
|
|
</div>
|
|
|
|
<div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
|
|
<Button variant="contained" className="btn_enreg" onClick={RecordData}>Enregistrer
|
|
</Button>
|
|
|
|
|
|
</div>
|
|
|
|
</div>}
|
|
<div className="div_row" style={{ "border": "None" }}>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>}
|
|
|
|
{String(submenu_catalog_pub) === String("banniere") && <div className="detail_class_submenu_data" style={{ "border": "None" }}>
|
|
|
|
{Partner_Catalog_Pub_banniere && String(Partner_Catalog_Pub_banniere).length > 20 && <div className="div_row" style={{ "border": "None" }}>
|
|
Bannière actuelle : <br />
|
|
<img src={Partner_Catalog_Pub_banniere} alt={""} className="img_bg_file_css" />
|
|
<br />
|
|
<Button variant="contained" className="btn_enreg" onClick={"Delete_Banniere_Img"}>Supprimer Bannière
|
|
</Button>
|
|
</div>}
|
|
<div className="div_row"> Import Bannière <br />
|
|
|
|
<div className="div_row" style={{ "border": "None" }}>
|
|
|
|
</div>
|
|
|
|
<Button variant="outlined" onClick={changeHandler2_bg} className="detail_class_submenu" style={{
|
|
"background": "#c8cfd5",
|
|
"minWidth": "15rem", "color": "black", "width": "auto"
|
|
}}
|
|
id='menu_import_formation' name='menu_import_formation'>Choisir une image bannière <br />
|
|
|
|
</Button><br />
|
|
<nav className="koUpdateData" style={{ "color": "orange" }}>
|
|
<Tooltip className="tooltip_css" id="tooltip_1" />
|
|
|
|
<a data-tooltip-id="tooltip_1" data-tooltip-html="Respecter ces critères vous aide à avoir un meilleur affichage">
|
|
<i> Important : Taille de la bannière : longueur entre 1500px et 1930px et largeur entre 150px et 195px, au format PNG <br />
|
|
Le nom du fichier ne contient que des caractères alphanumériques </i>
|
|
</a>
|
|
</nav>
|
|
|
|
{bg_file_name && <nav className="okUpdateData"><i>{bg_file_name}</i></nav>}
|
|
<input type="file"
|
|
accept=".png"
|
|
ref={hiddenFileInput_bg}
|
|
style={{ display: 'none' }}
|
|
name="liste_formation_file"
|
|
onChange={handleSubmission_bg}
|
|
/>
|
|
|
|
{img_bg_file && <nav> Fichier à importer : {img_bg_file.name} <br />
|
|
<img src={img_bg_file} alt={""} className="img_bg_file_css" />
|
|
|
|
<br />
|
|
</nav>}
|
|
|
|
|
|
{String(SendBackground_Img_api) === "true" && <div className="okUpdateData"> La mise à jour a été correctement faite</div>}
|
|
{String(SendBackground_Img_api) === "false" && <div className="koUpdateData"> {SendBackground_Img_message}</div>}
|
|
|
|
{String(handleSubmission_bg_api) === "false" && <div className="koUpdateData"> {handleSubmission_bg_message}</div>}
|
|
|
|
<br />
|
|
|
|
<div className="div_row">
|
|
<div className="div_row" style={{ "border": "None" }}>
|
|
|
|
</div>
|
|
{<div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
|
|
|
<div className="div_row_gauche " style={{ "textAlign": 'left', 'marginLeft': '15px' }}>
|
|
<Button variant="contained" className="btn_modif" onClick={"Annule_bg_img"}>Annuler
|
|
</Button>
|
|
</div>
|
|
|
|
<div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
|
|
<Button variant="contained" className="btn_enreg" onClick={SendBackground_Img}>Enregistrer
|
|
</Button>
|
|
|
|
|
|
</div>
|
|
|
|
</div>}
|
|
<div className="div_row" style={{ "border": "None" }}>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
</div>}
|
|
|
|
{String(submenu_catalog_pub) === String("logo") && <div className="detail_class_submenu_data" style={{ "border": "None" }}>
|
|
|
|
{Partner_Catalog_Pub_logo && String(Partner_Catalog_Pub_logo) !== "" && <div className="div_row" style={{ "border": "None" }}>
|
|
Logo actuel :<br />
|
|
<img src={Partner_Catalog_Pub_logo} alt={""} />
|
|
<br />
|
|
<Button variant="contained" className="btn_enreg" onClick={Delete_logo_Img}>Supprimer Logo
|
|
</Button>
|
|
|
|
</div>}
|
|
<div className="div_row"> Import du logo <br />
|
|
<div className="div_row" style={{ "border": "None" }}>
|
|
|
|
</div>
|
|
|
|
<Button variant="outlined" onClick={changeHandler2_logo} className="detail_class_submenu" style={{
|
|
"background": "#c8cfd5",
|
|
"minWidth": "15rem", "color": "black", "width": "auto"
|
|
}}
|
|
id='menu_import_formation' name='menu_import_formation'>Choisir une image <br />
|
|
|
|
</Button><br />
|
|
<nav className="koUpdateData" style={{ "color": "orange" }}>
|
|
<Tooltip className="tooltip_css" id="tooltip_2" />
|
|
|
|
<a data-tooltip-id="tooltip_2" data-tooltip-html="Respecter ces critères vous aide à avoir un meilleur affichage">
|
|
<i> Important : Taille du logo : longueur entre 140px et 250px et largeur entre 60px et 150px, au format PNG <br />
|
|
Le nom du fichier ne contient que des caractères alphanumériques </i>
|
|
</a>
|
|
</nav>
|
|
{logo_file_name && <nav className="okUpdateData"><i>{logo_file_name}</i></nav>}
|
|
<input type="file"
|
|
accept=".png"
|
|
ref={hiddenFileInput_logo}
|
|
style={{ display: 'none' }}
|
|
name="liste_formation_file"
|
|
onChange={handleSubmission_logo}
|
|
/>
|
|
|
|
{img_logo_file && <nav> Fichier à importer : {img_logo_file.name} <br />
|
|
<img src={img_logo_file} alt={""} />
|
|
|
|
|
|
<br />
|
|
</nav>}
|
|
|
|
{String(Send_logo_Img_api) === "true" && <div className="okUpdateData"> La mise à jour a été correctement faite</div>}
|
|
{String(Send_logo_Img_api) === "false" && <div className="koUpdateData"> {Send_logo_Img_message}</div>}
|
|
|
|
{String(handleSubmission_logo_api) === "false" && <div className="koUpdateData"> {handleSubmission_logo_message}</div>}
|
|
|
|
|
|
|
|
<br />
|
|
|
|
<div className="div_row">
|
|
<div className="div_row" style={{ "border": "None" }}>
|
|
|
|
</div>
|
|
{<div className="div_row" style={{ "border": "None", "color": "orange", "textAlign": "center" }}>
|
|
|
|
<div className="div_row_gauche " style={{ "textAlign": 'left', 'marginLeft': '15px' }}>
|
|
<Button variant="contained" className="btn_modif" onClick={"Annule_logo_img"}>Annuler
|
|
</Button>
|
|
</div>
|
|
|
|
<div className="div_row_droite" style={{ "textAlign": 'right', 'marginRight': '15px' }}>
|
|
<Button variant="contained" className="btn_enreg" onClick={Send_logo_Img}>Enregistrer
|
|
</Button>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
</div>}
|
|
<div className="div_row" style={{ "border": "None" }}>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
</div>}
|
|
|
|
</div>
|
|
|
|
</div>}
|
|
|
|
|
|
{String(submenu).trim() === "submenu_donnee_entreprise" && <div className="training_data">
|
|
|
|
<div className="titre1"> Mes Informations </div>
|
|
|
|
|
|
{testval == true && <div className="okUpdateData">
|
|
Les données ont été mises à jour.
|
|
</div>
|
|
}
|
|
|
|
{testval == false && <div className="koUpdateData">
|
|
Erreur mise à jour.
|
|
</div>
|
|
}
|
|
|
|
|
|
|
|
<Box alignItems="left" sx={{ '& > :not(style)': { m: 1 }, width: '100%', }} onChange={DataUpdated}>
|
|
|
|
{String(is_partner_admin_account) === "1" && <TextField
|
|
required
|
|
label="Raison sociale"
|
|
name="nom"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<AccountCircle />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_nom}
|
|
onChange={(e) => setp_nom(e.target.value)}
|
|
/>}
|
|
|
|
{String(is_partner_admin_account) !== "1" && <TextField
|
|
required
|
|
label="Structure de rattachement"
|
|
name="nom"
|
|
id="nom"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<AccountCircle />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_nom}
|
|
|
|
/>}
|
|
|
|
{String(is_partner_admin_account) === "1" && <TextField
|
|
name="siret"
|
|
id="siret"
|
|
label="SIRET"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<AccountCircle />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_siret}
|
|
onChange={(e) => setp_siret(e.target.value)}
|
|
/>
|
|
}
|
|
|
|
|
|
|
|
<TextField
|
|
name="telephone"
|
|
label="Telephone"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<PhoneIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_telephone}
|
|
onChange={(e) => setp_telephone(e.target.value)}
|
|
/>
|
|
|
|
|
|
<TextField
|
|
name="email"
|
|
label="Adresse mail"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<EmailIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_email}
|
|
onChange={(e) => setp_email(e.target.value)}
|
|
/>
|
|
|
|
<TextField
|
|
name="website"
|
|
label="Site Web"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<LanguageIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_website}
|
|
onChange={(e) => setp_website(e.target.value)}
|
|
/>
|
|
|
|
<TextField
|
|
name="link_linkedin"
|
|
label="LinkedIn"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<LinkedInIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_link_linkedin}
|
|
onChange={(e) => setp_link_linkedin(e.target.value)}
|
|
/>
|
|
|
|
|
|
<TextField
|
|
name="link_facebook"
|
|
label="Facebook"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<FacebookIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_link_facebook}
|
|
onChange={(e) => setp_link_facebook(e.target.value)}
|
|
/>
|
|
|
|
|
|
<TextField
|
|
name="link_twitter"
|
|
label="Twitter"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<TwitterIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_link_twitter}
|
|
onChange={(e) => setp_link_twitter(e.target.value)}
|
|
/>
|
|
|
|
<TextField
|
|
name="adr_street"
|
|
label="Adresse"
|
|
className="texte_area_adress"
|
|
sx={{ m: 1, width: '90%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<HomeIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_adr_street}
|
|
onChange={(e) => setp_adr_street(e.target.value)}
|
|
/>
|
|
|
|
<TextField
|
|
name="adr_zip"
|
|
label="Code Postal"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<HomeIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_adr_zip}
|
|
onChange={(e) => setp_adr_zip(e.target.value)}
|
|
/>
|
|
|
|
<TextField
|
|
name="adr_city"
|
|
label="Ville"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<HomeIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_adr_city}
|
|
onChange={(e) => setp_adr_city(e.target.value)}
|
|
/>
|
|
|
|
<TextField
|
|
name="adr_country"
|
|
label="Pays"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<HomeIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_adr_country}
|
|
onChange={(e) => setp_adr_country(e.target.value)}
|
|
/>
|
|
{String(is_partner_admin_account) === "1" && <div>
|
|
<div style={{ "width": "10%" }}> </div>
|
|
<div className="div_row_gauche">
|
|
<div className="titre1"> Votre logo </div>
|
|
<div className="div_row_bis" style={{ "marginBottom": "10px", "marginTop": "1rem" }} >
|
|
<div className="div_row_gauche_image">
|
|
<img class="img_class_logo" src={userimgclassprofil} /><br />
|
|
|
|
</div>
|
|
<div className="div_row_droite_image">
|
|
<input type="file" id="files_img_class" accept="image/*" onChange={imglogoclasschangeHandler} style={{ opacity: "0", zIndex: "-1", maxWidth: "5px", maxHeight: "0px" }} /><br />
|
|
{String(userformedited) === "1" && <nav> <label for="files_img_class" className="bton_image_class">Charger un logo</label><br />
|
|
|
|
{String(isimgclassSelected_recid) && String(isimgclassSelected_recid).length > 3 &&
|
|
<nav className="bton_supprime_image_class" onClick={removeRecodedLogoImage}>Supprimer le logo<br /> </nav>
|
|
}
|
|
|
|
</nav>}
|
|
|
|
{/*isimgclassSelected && <Button variant="outlined" onClick={sendClassImage} className="bton_image_class">Enregistrer image</Button>*/}
|
|
{isimgclassdeleted && String(isimgclassdeleted) === "1" && <nav className="koUpdateData"> {isimgclassdeleted_message}</nav>}
|
|
{isimgclassdeleted && String(isimgclassdeleted) === "0" && <nav className="okUpdateData"> {isimgclassdeleted_message}</nav>}
|
|
{isimgclassSelected && String(isimgclassSaved) === "0" && <nav className="koUpdateData"> {isimgclassSaved_message}</nav>}
|
|
</div>
|
|
|
|
</div>
|
|
<div className="div_row_bis tips_img_class">
|
|
<li>
|
|
L'image doit etre carrée.
|
|
</li>
|
|
<li>
|
|
Les formats autorisés sont : <i>['jpg', 'jpeg', 'png', 'jpe', 'webp']</i>
|
|
</li>
|
|
<li>
|
|
Les dimensions recommandées: 128pixels X 128pixels -- 144pixels X 144pixels -- 168pixels X 168pixels<br />
|
|
Les dimensions maximales sont de 256pixels X 256pixels
|
|
</li>
|
|
<li>
|
|
La taille de l'image ne doit pas dépasser 1 mega octet
|
|
</li>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div className="div_row_droite">
|
|
<div className="titre1"> Votre cachet </div>
|
|
<div className="div_row_bis" style={{ "marginBottom": "10px", "marginTop": "1rem" }} >
|
|
<div className="div_row_gauche_image">
|
|
<img class="img_class_logo" src={isimgcachet} /><br />
|
|
|
|
</div>
|
|
<div className="div_row_droite_image">
|
|
<input type="file" id="files_img_cachet_class" accept="image/*" onChange={imgcachetchangeHandler} style={{ opacity: "0", zIndex: "-1", maxWidth: "5px", maxHeight: "0px" }} /><br />
|
|
{String(userformedited) === "1" && <nav> <label for="files_img_cachet_class" className="bton_image_class">Charger un cachet</label><br />
|
|
|
|
|
|
{String(isimgcachetSelected_recid) && String(isimgcachetSelected_recid).length > 3 &&
|
|
<nav className="bton_supprime_image_class" onClick={removeRecodedCachetImage}>Supprimer le cachet </nav>}
|
|
|
|
<br /> </nav>}
|
|
{/*isimgclassSelected && <Button variant="outlined" onClick={sendClassImage} className="bton_image_class">Enregistrer image</Button>*/}
|
|
{isimgcachetdeleted && String(isimgcachetdeleted) === "1" && <nav className="koUpdateData"> {isimgcachetdeleted_message}</nav>}
|
|
{isimgcachetdeleted && String(isimgcachetdeleted) === "0" && <nav className="okUpdateData"> {isimgcachetdeleted_message}</nav>}
|
|
{isimgcachetSelected && String(isimgcachetSaved) === "0" && <nav className="koUpdateData"> {isimgcachetSaved_message}</nav>}
|
|
</div>
|
|
|
|
</div>
|
|
<div className="div_row_bis tips_img_class">
|
|
<li>
|
|
L'image doit etre carrée.
|
|
</li>
|
|
<li>
|
|
Les formats autorisés sont : <i>['jpg', 'jpeg', 'png', 'jpe', 'webp']</i>
|
|
</li>
|
|
<li>
|
|
Les dimensions recommandées: 128pixels X 128pixels -- 144pixels X 144pixels -- 168pixels X 168pixels<br />
|
|
Les dimensions maximales sont de 256pixels X 256pixels
|
|
</li>
|
|
<li>
|
|
La taille de l'image ne doit pas dépasser 1 mega octet
|
|
</li>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div style={{ "width": "10%" }}> </div>
|
|
<div className="titre1"> Certification </div>
|
|
<div className="div_row">
|
|
|
|
|
|
<TextField
|
|
required
|
|
name="num_nda"
|
|
label="Numéro NDA"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<AccountCircle />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_num_nda}
|
|
onChange={(e) => setp_num_nda(e.target.value)}
|
|
/>
|
|
|
|
{fields1desabled == true && String(myqualiopi) !== "1" &&
|
|
|
|
<TextField
|
|
name="isqualiopi"
|
|
label="Qualiopi"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
value="Non"
|
|
|
|
/>
|
|
|
|
}
|
|
|
|
{fields1desabled == true && String(myqualiopi) === "1" &&
|
|
|
|
<TextField
|
|
name="isqualiopi"
|
|
label="Qualiopi"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
value="Oui"
|
|
|
|
|
|
/>
|
|
|
|
}
|
|
|
|
{fields1desabled !== true &&
|
|
<TextField
|
|
name="isqualiopi"
|
|
label="Qualiopi"
|
|
select
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
|
|
value={myqualiopi}
|
|
|
|
onChange={handleChangequaliopi}
|
|
|
|
>{qualiopi.map((option) => (
|
|
<MenuItem key={option.value} value={option.value}>
|
|
{option.label} <br />
|
|
</MenuItem>
|
|
))}
|
|
</TextField>
|
|
}
|
|
</div>
|
|
<div className="div_row">
|
|
|
|
|
|
|
|
|
|
{fields1desabled == true && String(mydatadock) !== "1" &&
|
|
|
|
<TextField
|
|
name="isdatadock"
|
|
label="Datadock"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
value="Non"
|
|
|
|
|
|
/>
|
|
|
|
}
|
|
|
|
{fields1desabled == true && String(mydatadock) === "1" &&
|
|
|
|
<TextField
|
|
name="isdatadock"
|
|
label="Datadock"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
value="Oui"
|
|
|
|
|
|
/>
|
|
|
|
}
|
|
|
|
{fields1desabled !== true &&
|
|
<TextField
|
|
name="isdatadock"
|
|
label="Datadock"
|
|
select
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
|
|
value={mydatadock}
|
|
|
|
onChange={handleChangedatadock}
|
|
|
|
>{datadock.map((option) => (
|
|
<MenuItem key={option.value} value={option.value}>
|
|
{option.label} <br />
|
|
</MenuItem>
|
|
))}
|
|
</TextField>
|
|
}
|
|
|
|
{fields1desabled == true && String(mycertifvoltaire) !== "1" &&
|
|
|
|
<TextField
|
|
name="iscertifvoltaire"
|
|
label="Certificat Voltaire"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
value="Non"
|
|
|
|
|
|
/>
|
|
|
|
}
|
|
|
|
{fields1desabled == true && String(mycertifvoltaire) === "1" &&
|
|
|
|
<TextField
|
|
name="iscertifvoltaire"
|
|
label="Certificat Voltaire"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
value="Oui"
|
|
|
|
|
|
/>
|
|
|
|
}
|
|
|
|
|
|
{fields1desabled !== true &&
|
|
<TextField
|
|
name="iscertifvoltaire"
|
|
label="Certificat Voltaire"
|
|
select
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
|
|
value={mycertifvoltaire}
|
|
|
|
onChange={handleChangecertifvoltaire}
|
|
|
|
|
|
>{certifvoltaire.map((option) => (
|
|
<MenuItem key={option.value} value={option.value} >
|
|
{option.label} <br />
|
|
</MenuItem>
|
|
))}
|
|
</TextField>
|
|
}
|
|
</div>
|
|
</div>}
|
|
|
|
|
|
<div style={{ "width": "10%" }}> </div>
|
|
<div className="titre1"> Info Contact </div>
|
|
|
|
<TextField
|
|
name="contact_nom"
|
|
label="Nom Contact"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<AccountCircle />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_contact_nom}
|
|
onChange={(e) => setp_contact_nom(e.target.value)}
|
|
/>
|
|
|
|
<TextField
|
|
name="contact_prenom"
|
|
label="Prénom Contact"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<AccountCircle />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_contact_prenom}
|
|
onChange={(e) => setp_contact_prenom(e.target.value)}
|
|
/>
|
|
|
|
<TextField
|
|
name="contact_tel"
|
|
label="Tel Contact"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<PhoneIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_contact_tel}
|
|
onChange={(e) => setp_contact_tel(e.target.value)}
|
|
/>
|
|
<TextField
|
|
name="contact_mail"
|
|
label="Mail Contact"
|
|
className="texte_area"
|
|
sx={{ m: 1, width: '48%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<EmailIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_contact_mail}
|
|
onChange={(e) => setp_contact_mail(e.target.value)}
|
|
/>
|
|
|
|
|
|
|
|
{fields1desabled == false && String(datamodification) === String("1") && <div className="div_row">
|
|
<div className="koUpdateData" style={{ "color": "orange", "textAlign": "center" }}> /!\ Pensez à enregistrer les modifications</div>
|
|
</div>}
|
|
|
|
<div className="div_row22">
|
|
{fields1desabled == false && <div className="div_row">
|
|
<div className="div_row_gauche">
|
|
<Button variant="contained" color="success" className="div_row22 btn_enreg " onClick={RecordData}>Enregistrer</Button>
|
|
</div>
|
|
<div className="div_row_droite">
|
|
<Button variant="contained" color="success" className="div_row22 btn_modif" onClick={annuler_change_user_data}>Annuler</Button>
|
|
</div>
|
|
</div>
|
|
|
|
}
|
|
{fields1desabled == true &&
|
|
<Button variant="contained" color="success" className="div_row22 btn_modif" onClick={enablefieds1}>Editer</Button>
|
|
}
|
|
|
|
</div>
|
|
|
|
<div style={{ "width": "10%" }}> </div>
|
|
<div className="titre1"> Accès E-Learning </div>
|
|
<TextField
|
|
name="contact_login_elearning"
|
|
label="E-Learning Login"
|
|
className="texte_area"
|
|
|
|
|
|
sx={{ m: 1, width: '48%', background: "#ECEFF1", color: "black" }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<AccountCircle />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_lms_username}
|
|
|
|
/>
|
|
|
|
<TextField
|
|
name="contact_login_elearning"
|
|
label="Url plateforme"
|
|
className="texte_area"
|
|
|
|
sx={{ m: 1, width: '48%', background: "#ECEFF1", color: "black" }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<AccountCircle />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
value={p_lms_virtualhost_url}
|
|
|
|
/>
|
|
|
|
|
|
</Box>
|
|
|
|
{/*<div style={{ "width": "10%" }}> </div>
|
|
|
|
<div className="div_row_gauche">
|
|
<div className="titre1"> Mot de passe </div>
|
|
{updatepwd == false && <div className="koUpdateData">
|
|
Erreur mise à jour.
|
|
</div>
|
|
}
|
|
|
|
{updatepwd == true && <div className="okUpdateData">
|
|
La mise à jour été faite
|
|
</div>
|
|
}
|
|
|
|
<Box alignItems="left" sx={{ '& > :not(style)': { m: 1 } }}>
|
|
|
|
<FormControl sx={{ m: 1, width: '90%' }} variant="standard" size="small" className="texte_area_passwd">
|
|
<Label>Mot de passe actuel</Label>
|
|
<InputLabel htmlFor="outlined-adornment-password"></InputLabel>
|
|
<OutlinedInput
|
|
id="current_pwd"
|
|
name="current_pwd"
|
|
type={values.showPassword1 ? 'text' : 'password'}
|
|
value={values.password1}
|
|
onChange={handleChange1('password1')}
|
|
endAdornment={
|
|
<InputAdornment position="end">
|
|
<IconButton
|
|
aria-label="toggle password visibility"
|
|
onClick={handleClickShowPassword_current_pwd}
|
|
edge="end"
|
|
>
|
|
{currentpawdvisible ? <Visibility /> : <VisibilityOff />}
|
|
</IconButton>
|
|
</InputAdornment>
|
|
}
|
|
|
|
/>
|
|
</FormControl>
|
|
|
|
|
|
<FormControl sx={{ m: 1, width: '90%' }} variant="standard" size="small" className="texte_area_passwd">
|
|
<Label>Nouveau mot de passe</Label>
|
|
<InputLabel htmlFor="outlined-adornment-password2"></InputLabel>
|
|
<OutlinedInput
|
|
id="new_pwd"
|
|
name="new_pwd"
|
|
type={values.showPassword ? 'text' : 'password'}
|
|
value={values.password2}
|
|
onChange={handleChange2('password2')}
|
|
endAdornment={
|
|
<InputAdornment position="end">
|
|
<IconButton
|
|
aria-label="toggle password visibility"
|
|
onClick={handleClickShowPassword_new_pwd}
|
|
edge="end"
|
|
>
|
|
{newpawdvisible ? <Visibility /> : <VisibilityOff />}
|
|
</IconButton>
|
|
</InputAdornment>
|
|
}
|
|
|
|
/>
|
|
</FormControl>
|
|
|
|
<FormControl sx={{ m: 1, width: '90%' }} variant="standard" size="small" className="texte_area_passwd">
|
|
<Label>Confirmation du nouveau mot de passe</Label>
|
|
<InputLabel htmlFor="outlined-adornment-password"></InputLabel>
|
|
<OutlinedInput
|
|
id="new_pwd_conf"
|
|
name="new_pwd_conf"
|
|
type={values.showPassword ? 'text' : 'password'}
|
|
value={values.password3}
|
|
onChange={handleChange3('password3')}
|
|
endAdornment={
|
|
<InputAdornment position="end">
|
|
<IconButton
|
|
aria-label="toggle password visibility"
|
|
onClick={handleClickShowPassword_new_pwd_conf}
|
|
onMouseDown={handleMouseDownPassword}
|
|
edge="end"
|
|
>
|
|
{confpwdvisible ? <Visibility /> : <VisibilityOff />}
|
|
</IconButton>
|
|
</InputAdornment>
|
|
}
|
|
|
|
/>
|
|
</FormControl>
|
|
<div className="text_pwd_crit">
|
|
Créez un mot de passe contenant au moins :
|
|
<ul>
|
|
<li name="caractere">
|
|
8 caractères
|
|
</li>
|
|
<li name="nombre">
|
|
1 nombre
|
|
</li>
|
|
<li name="special">
|
|
1 caractère spécial p. ex., $, !, @, %, &
|
|
</li>
|
|
|
|
<li name="identique">
|
|
Identiques
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div className="div_row22" style={{ "textAlign": "left" }}>
|
|
|
|
{pwdfieldsdesabled == false && <div className="div_row" style={{ "textAlign": "left" }} >
|
|
<div className="div_row_gauche">
|
|
<Button variant="contained" color="success" className="div_row22 btn_enreg " onClick={UpdatePartnerPwd}>Enregistrer</Button>
|
|
</div>
|
|
<div className="div_row_droite">
|
|
<Button variant="contained" color="success" className="div_row22 btn_modif " onClick={desablesecurtypwdfields}>Annuler</Button>
|
|
</div>
|
|
</div>
|
|
}
|
|
{pwdfieldsdesabled == true &&
|
|
<Button variant="contained" color="success" className="div_row22 btn_modif" onClick={enablesecurtypwdfields}>Editer</Button>
|
|
}
|
|
</div>
|
|
|
|
|
|
</Box>
|
|
</div>
|
|
|
|
<div className="div_row_droite">
|
|
<div className="titre1"> Emails contact </div>
|
|
{updatemainmail === false && <div className="koUpdateData">
|
|
Erreur mise à jour.
|
|
</div>
|
|
}
|
|
|
|
{updatemainmail === true && <div className="okUpdateData">
|
|
La mise à jour été faite
|
|
</div>
|
|
}
|
|
|
|
<TextField
|
|
name="current_email"
|
|
label="Adresse mail"
|
|
sx={{ m: 1, width: '90%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<EmailIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
variant="standard"
|
|
/>
|
|
<br />
|
|
<TextField
|
|
name="new_email"
|
|
label="Nouvelle Adresse mail"
|
|
sx={{ m: 1, width: '90%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<EmailIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
variant="standard"
|
|
/>
|
|
<br />
|
|
<TextField
|
|
name="conf_new_email"
|
|
label="Confirmation mail"
|
|
sx={{ m: 1, width: '90%' }}
|
|
InputProps={{
|
|
startAdornment: (
|
|
<InputAdornment position="start">
|
|
<EmailIcon />
|
|
</InputAdornment>
|
|
),
|
|
}}
|
|
variant="standard"
|
|
/>
|
|
<div className="text_pwd_crit">
|
|
|
|
<ul style={{ "listStyleType": "none" }}>
|
|
<li>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
</li>
|
|
|
|
<li>
|
|
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{mailfieldsdesabled == false && <div className="div_row" >
|
|
<div className="div_row_gauche" >
|
|
<Button variant="contained" color="success" className="div_row22 btn_enreg " style={{ "marginTop": "0px" }} onClick={UpdatePartnerMail}>Enregistrer</Button>
|
|
</div>
|
|
<div className="div_row_droite">
|
|
<Button variant="contained" color="success" className="div_row22 btn_modif" style={{ "marginTop": "0px" }} onClick={desablesecurtymailfields}>Annuler</Button>
|
|
</div>
|
|
</div>
|
|
}
|
|
{mailfieldsdesabled == true && <div className="div_row22" style={{ "textAlign": "right" }}>
|
|
<Button variant="contained" color="success" className="div_row22 btn_modif" style={{ "marginTop": "0px", }} onClick={enablesecurtymailfields}>Editer</Button>
|
|
</div>
|
|
}
|
|
|
|
|
|
|
|
|
|
</div>
|
|
<div style={{ "width": "10%" }}> </div>*/}
|
|
|
|
|
|
|
|
|
|
|
|
</div>}
|
|
|
|
<div className="div_row">
|
|
<div className="div_row22">
|
|
<div className="titre1"> Supppression de compte </div>
|
|
<div style={{ "marginTop": "1rem", "textAlign": "left" }}>
|
|
Pour supprimer votre compte, veuillez vous rapprocher de votre contact commercial ou nous écrire à contact@mysy-training.com.
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
);
|
|
}
|
|
export default UpdateParnterInfo; |