24/12/2024 - 22h
parent
6916a25595
commit
232cbd53e9
|
@ -91,6 +91,7 @@
|
||||||
"react": "^18.2.0",
|
"react": "^18.2.0",
|
||||||
"react-apexcharts": "^1.4.0",
|
"react-apexcharts": "^1.4.0",
|
||||||
"react-app-rewired": "^2.2.1",
|
"react-app-rewired": "^2.2.1",
|
||||||
|
"react-audio-player": "^0.17.0",
|
||||||
"react-audio-voice-recorder": "^2.2.0",
|
"react-audio-voice-recorder": "^2.2.0",
|
||||||
"react-big-calendar": "^1.8.4",
|
"react-big-calendar": "^1.8.4",
|
||||||
"react-bootstrap": "^2.1.2",
|
"react-bootstrap": "^2.1.2",
|
||||||
|
@ -134,7 +135,7 @@
|
||||||
"react-paginate": "^8.1.1",
|
"react-paginate": "^8.1.1",
|
||||||
"react-pdf": "^7.7.1",
|
"react-pdf": "^7.7.1",
|
||||||
"react-pick-color": "^2.0.0",
|
"react-pick-color": "^2.0.0",
|
||||||
"react-player": "^2.10.0",
|
"react-player": "^2.16.0",
|
||||||
"react-pro-sidebar": "^1.1.0",
|
"react-pro-sidebar": "^1.1.0",
|
||||||
"react-range": "^1.8.12",
|
"react-range": "^1.8.12",
|
||||||
"react-rating-stars-component": "^2.2.0",
|
"react-rating-stars-component": "^2.2.0",
|
||||||
|
@ -175,6 +176,7 @@
|
||||||
"swr": "^1.2.1",
|
"swr": "^1.2.1",
|
||||||
"tinymce": "^7.1.2",
|
"tinymce": "^7.1.2",
|
||||||
"use-global-state": "^0.1.2",
|
"use-global-state": "^0.1.2",
|
||||||
|
"use-sound": "^4.0.3",
|
||||||
"victory": "^36.6.6",
|
"victory": "^36.6.6",
|
||||||
"video-react": "^0.15.0",
|
"video-react": "^0.15.0",
|
||||||
"web-vitals": "^2.1.4",
|
"web-vitals": "^2.1.4",
|
||||||
|
@ -16268,6 +16270,11 @@
|
||||||
"node": ">= 6.0.0"
|
"node": ">= 6.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/howler": {
|
||||||
|
"version": "2.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/howler/-/howler-2.2.4.tgz",
|
||||||
|
"integrity": "sha512-iARIBPgcQrwtEr+tALF+rapJ8qSc+Set2GJQl7xT1MQzWaVkFebdJhR3alVlSiUf5U7nAANKuj3aWpwerocD5w=="
|
||||||
|
},
|
||||||
"node_modules/hpack.js": {
|
"node_modules/hpack.js": {
|
||||||
"version": "2.1.6",
|
"version": "2.1.6",
|
||||||
"resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz",
|
"resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz",
|
||||||
|
@ -26076,6 +26083,18 @@
|
||||||
"semver": "bin/semver"
|
"semver": "bin/semver"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/react-audio-player": {
|
||||||
|
"version": "0.17.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/react-audio-player/-/react-audio-player-0.17.0.tgz",
|
||||||
|
"integrity": "sha512-aCZgusPxA9HK7rLZcTdhTbBH9l6do9vn3NorgoDZRxRxJlOy9uZWzPaKjd7QdcuP2vXpxGA/61JMnnOEY7NXeA==",
|
||||||
|
"dependencies": {
|
||||||
|
"prop-types": "^15.7.2"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"react": ">=16",
|
||||||
|
"react-dom": ">=16"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/react-audio-visualize": {
|
"node_modules/react-audio-visualize": {
|
||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/react-audio-visualize/-/react-audio-visualize-1.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/react-audio-visualize/-/react-audio-visualize-1.2.0.tgz",
|
||||||
|
@ -27363,9 +27382,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/react-player": {
|
"node_modules/react-player": {
|
||||||
"version": "2.11.0",
|
"version": "2.16.0",
|
||||||
"resolved": "https://registry.npmjs.org/react-player/-/react-player-2.11.0.tgz",
|
"resolved": "https://registry.npmjs.org/react-player/-/react-player-2.16.0.tgz",
|
||||||
"integrity": "sha512-fIrwpuXOBXdEg1FiyV9isKevZOaaIsAAtZy5fcjkQK9Nhmk1I2NXzY/hkPos8V0zb/ZX416LFy8gv7l/1k3a5w==",
|
"integrity": "sha512-mAIPHfioD7yxO0GNYVFD1303QFtI3lyyQZLY229UEAp/a10cSW+hPcakg0Keq8uWJxT2OiT/4Gt+Lc9bD6bJmQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"deepmerge": "^4.0.0",
|
"deepmerge": "^4.0.0",
|
||||||
"load-script": "^1.0.0",
|
"load-script": "^1.0.0",
|
||||||
|
@ -33031,6 +33050,17 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/use-sound": {
|
||||||
|
"version": "4.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/use-sound/-/use-sound-4.0.3.tgz",
|
||||||
|
"integrity": "sha512-L205pEUFIrLsGYsCUKHQVCt0ajs//YQOFbEQeNwaWaqQj3y3st4SuR+rvpMHLmv8hgTcfUFlvMQawZNI3OE18w==",
|
||||||
|
"dependencies": {
|
||||||
|
"howler": "^2.1.3"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"react": ">=16.8"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/use-sync-external-store": {
|
"node_modules/use-sync-external-store": {
|
||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz",
|
||||||
|
@ -47129,6 +47159,11 @@
|
||||||
"resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz",
|
"resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz",
|
||||||
"integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ=="
|
"integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ=="
|
||||||
},
|
},
|
||||||
|
"howler": {
|
||||||
|
"version": "2.2.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/howler/-/howler-2.2.4.tgz",
|
||||||
|
"integrity": "sha512-iARIBPgcQrwtEr+tALF+rapJ8qSc+Set2GJQl7xT1MQzWaVkFebdJhR3alVlSiUf5U7nAANKuj3aWpwerocD5w=="
|
||||||
|
},
|
||||||
"hpack.js": {
|
"hpack.js": {
|
||||||
"version": "2.1.6",
|
"version": "2.1.6",
|
||||||
"resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz",
|
"resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz",
|
||||||
|
@ -54524,6 +54559,14 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"react-audio-player": {
|
||||||
|
"version": "0.17.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/react-audio-player/-/react-audio-player-0.17.0.tgz",
|
||||||
|
"integrity": "sha512-aCZgusPxA9HK7rLZcTdhTbBH9l6do9vn3NorgoDZRxRxJlOy9uZWzPaKjd7QdcuP2vXpxGA/61JMnnOEY7NXeA==",
|
||||||
|
"requires": {
|
||||||
|
"prop-types": "^15.7.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
"react-audio-visualize": {
|
"react-audio-visualize": {
|
||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/react-audio-visualize/-/react-audio-visualize-1.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/react-audio-visualize/-/react-audio-visualize-1.2.0.tgz",
|
||||||
|
@ -55446,9 +55489,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"react-player": {
|
"react-player": {
|
||||||
"version": "2.11.0",
|
"version": "2.16.0",
|
||||||
"resolved": "https://registry.npmjs.org/react-player/-/react-player-2.11.0.tgz",
|
"resolved": "https://registry.npmjs.org/react-player/-/react-player-2.16.0.tgz",
|
||||||
"integrity": "sha512-fIrwpuXOBXdEg1FiyV9isKevZOaaIsAAtZy5fcjkQK9Nhmk1I2NXzY/hkPos8V0zb/ZX416LFy8gv7l/1k3a5w==",
|
"integrity": "sha512-mAIPHfioD7yxO0GNYVFD1303QFtI3lyyQZLY229UEAp/a10cSW+hPcakg0Keq8uWJxT2OiT/4Gt+Lc9bD6bJmQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"deepmerge": "^4.0.0",
|
"deepmerge": "^4.0.0",
|
||||||
"load-script": "^1.0.0",
|
"load-script": "^1.0.0",
|
||||||
|
@ -59833,6 +59876,14 @@
|
||||||
"use-isomorphic-layout-effect": "^1.1.1"
|
"use-isomorphic-layout-effect": "^1.1.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"use-sound": {
|
||||||
|
"version": "4.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/use-sound/-/use-sound-4.0.3.tgz",
|
||||||
|
"integrity": "sha512-L205pEUFIrLsGYsCUKHQVCt0ajs//YQOFbEQeNwaWaqQj3y3st4SuR+rvpMHLmv8hgTcfUFlvMQawZNI3OE18w==",
|
||||||
|
"requires": {
|
||||||
|
"howler": "^2.1.3"
|
||||||
|
}
|
||||||
|
},
|
||||||
"use-sync-external-store": {
|
"use-sync-external-store": {
|
||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz",
|
||||||
|
|
|
@ -86,6 +86,7 @@
|
||||||
"react": "^18.2.0",
|
"react": "^18.2.0",
|
||||||
"react-apexcharts": "^1.4.0",
|
"react-apexcharts": "^1.4.0",
|
||||||
"react-app-rewired": "^2.2.1",
|
"react-app-rewired": "^2.2.1",
|
||||||
|
"react-audio-player": "^0.17.0",
|
||||||
"react-audio-voice-recorder": "^2.2.0",
|
"react-audio-voice-recorder": "^2.2.0",
|
||||||
"react-big-calendar": "^1.8.4",
|
"react-big-calendar": "^1.8.4",
|
||||||
"react-bootstrap": "^2.1.2",
|
"react-bootstrap": "^2.1.2",
|
||||||
|
@ -129,7 +130,7 @@
|
||||||
"react-paginate": "^8.1.1",
|
"react-paginate": "^8.1.1",
|
||||||
"react-pdf": "^7.7.1",
|
"react-pdf": "^7.7.1",
|
||||||
"react-pick-color": "^2.0.0",
|
"react-pick-color": "^2.0.0",
|
||||||
"react-player": "^2.10.0",
|
"react-player": "^2.16.0",
|
||||||
"react-pro-sidebar": "^1.1.0",
|
"react-pro-sidebar": "^1.1.0",
|
||||||
"react-range": "^1.8.12",
|
"react-range": "^1.8.12",
|
||||||
"react-rating-stars-component": "^2.2.0",
|
"react-rating-stars-component": "^2.2.0",
|
||||||
|
@ -170,6 +171,7 @@
|
||||||
"swr": "^1.2.1",
|
"swr": "^1.2.1",
|
||||||
"tinymce": "^7.1.2",
|
"tinymce": "^7.1.2",
|
||||||
"use-global-state": "^0.1.2",
|
"use-global-state": "^0.1.2",
|
||||||
|
"use-sound": "^4.0.3",
|
||||||
"victory": "^36.6.6",
|
"victory": "^36.6.6",
|
||||||
"video-react": "^0.15.0",
|
"video-react": "^0.15.0",
|
||||||
"web-vitals": "^2.1.4",
|
"web-vitals": "^2.1.4",
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -128,4 +128,19 @@
|
||||||
<priority>1.0000</priority>
|
<priority>1.0000</priority>
|
||||||
</url>
|
</url>
|
||||||
|
|
||||||
|
<url>
|
||||||
|
<loc>https://www.mysy-training.com/Display-Detail-Article/comment-rendre-vos-formations-eligibles-au-cpf-grace-a-mysy-training--23f</loc>
|
||||||
|
<lastmod>2024-12-12T11:35:41+00:00</lastmod>
|
||||||
|
<changefreq>daily</changefreq>
|
||||||
|
<priority>1.0000</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
<url>
|
||||||
|
<loc>https://www.mysy-training.com/Display-Detail-Article/optimisation-qualiopi---simplifiez-votre-audit-avec-un-logiciel-adapte-aux-centres-de-formation-910</loc>
|
||||||
|
<lastmod>2024-12-15T11:35:41+00:00</lastmod>
|
||||||
|
<changefreq>daily</changefreq>
|
||||||
|
<priority>1.0000</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
|
||||||
</urlset>
|
</urlset>
|
|
@ -91,8 +91,6 @@ function Abonnement(props) {
|
||||||
var num_facture = cellValues.row.num_facture;
|
var num_facture = cellValues.row.num_facture;
|
||||||
var url = process.env.REACT_APP_API_URL + "myclass/api/GetCustomerInvoice/" + stored_cookie + "/" + num_facture;
|
var url = process.env.REACT_APP_API_URL + "myclass/api/GetCustomerInvoice/" + stored_cookie + "/" + num_facture;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
axios.get(url, { responseType: 'blob', },)
|
axios.get(url, { responseType: 'blob', },)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
fileDownload(res.data, nom_facture)
|
fileDownload(res.data, nom_facture)
|
||||||
|
|
|
@ -20,6 +20,10 @@ import UpgradeToPro from "./UpgradeToPro"
|
||||||
import Profil_Objectif from "./ProfilObjectif";
|
import Profil_Objectif from "./ProfilObjectif";
|
||||||
import { useLocation } from "react-router-dom";
|
import { useLocation } from "react-router-dom";
|
||||||
|
|
||||||
|
import Intranet_Factures_Client from "./Intranet_Factures_Client";
|
||||||
|
import Intranet_Tous_Documents from "./Intranet_Tous_Documents";
|
||||||
|
import Modules_Mes_Documents from "./Modules_Mes_Documents";
|
||||||
|
|
||||||
function Account() {
|
function Account() {
|
||||||
const [menu, setmenu] = useState("affichage");
|
const [menu, setmenu] = useState("affichage");
|
||||||
const [cookie, setCookie, removeCookie] = useCookies(['tokenmysych']);
|
const [cookie, setCookie, removeCookie] = useCookies(['tokenmysych']);
|
||||||
|
@ -46,6 +50,9 @@ function Account() {
|
||||||
//alert("stored_user = "+stored_user);
|
//alert("stored_user = "+stored_user);
|
||||||
const location = useLocation();
|
const location = useLocation();
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
|
||||||
|
var list_menu = ["affichage", "recherche", "upgradecompte", "profil_objectif", "mes_factures", "mes_documents"]
|
||||||
|
|
||||||
getImage();
|
getImage();
|
||||||
|
|
||||||
if (typeof (stored_user) === "undefined" || String(stored_user) === '') {
|
if (typeof (stored_user) === "undefined" || String(stored_user) === '') {
|
||||||
|
@ -155,6 +162,34 @@ function Account() {
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
const displayProfil_Facture = () => {
|
||||||
|
setmenu("mes_factures");
|
||||||
|
};
|
||||||
|
|
||||||
|
const displayProfil_Devis = () => {
|
||||||
|
setmenu("mes_devis");
|
||||||
|
};
|
||||||
|
|
||||||
|
const displayProfil_Convention = () => {
|
||||||
|
setmenu("mes_conventions");
|
||||||
|
};
|
||||||
|
|
||||||
|
const displayProfil_Convocation = () => {
|
||||||
|
setmenu("mes_convocations");
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
const displayProfil_Apprenant = () => {
|
||||||
|
setmenu("mes_apprenants");
|
||||||
|
};
|
||||||
|
|
||||||
|
const displayProfil_Tout_Documents = () => {
|
||||||
|
setmenu("tout_documents");
|
||||||
|
};
|
||||||
|
|
||||||
|
const displayProfil_Modules_Mes_Documents = () => {
|
||||||
|
setmenu("modules_mes_documents");
|
||||||
|
};
|
||||||
|
|
||||||
const upgradetopro = () => {
|
const upgradetopro = () => {
|
||||||
setmenu("upgradecompte");
|
setmenu("upgradecompte");
|
||||||
|
@ -164,6 +199,9 @@ function Account() {
|
||||||
setmenu("affichage");
|
setmenu("affichage");
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
const [connected_user_data, setconnected_user_data] = useState();
|
||||||
|
|
||||||
function GetUserNameFromToken(event) {
|
function GetUserNameFromToken(event) {
|
||||||
|
|
||||||
var form = new FormData();
|
var form = new FormData();
|
||||||
|
@ -181,6 +219,9 @@ function Account() {
|
||||||
String(JSON.parse(res.data.message).migrated) === String("1")) {
|
String(JSON.parse(res.data.message).migrated) === String("1")) {
|
||||||
setmigratedaccount(String(JSON.parse(res.data.message).migrated));
|
setmigratedaccount(String(JSON.parse(res.data.message).migrated));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setconnected_user_data(JSON.parse(res.data.message));
|
||||||
|
|
||||||
//setmyApiResponse("true");
|
//setmyApiResponse("true");
|
||||||
//setResult(res.data.message)
|
//setResult(res.data.message)
|
||||||
//setmyApimyApiMessage("OK")
|
//setmyApimyApiMessage("OK")
|
||||||
|
@ -268,6 +309,7 @@ function Account() {
|
||||||
const [isSelected, setIsSelected] = useState(false);
|
const [isSelected, setIsSelected] = useState(false);
|
||||||
const [isnewimage, setisnewimage] = useState();
|
const [isnewimage, setisnewimage] = useState();
|
||||||
|
|
||||||
|
|
||||||
const changeHandler = (event) => {
|
const changeHandler = (event) => {
|
||||||
let file_size = event.target.files[0].size;
|
let file_size = event.target.files[0].size;
|
||||||
|
|
||||||
|
@ -345,29 +387,54 @@ function Account() {
|
||||||
<div className="nom_prenom"> {username && <b> {username} </b>}
|
<div className="nom_prenom"> {username && <b> {username} </b>}
|
||||||
{!username && <b> xxxx </b>} </div>
|
{!username && <b> xxxx </b>} </div>
|
||||||
<hr className="my_hr" />
|
<hr className="my_hr" />
|
||||||
|
|
||||||
|
{/** Menu pour un utilisateur de type 'user'. Exemple, l'intranet du client d'un client */}
|
||||||
|
|
||||||
|
{connected_user_data && connected_user_data.type &&
|
||||||
|
String(connected_user_data.type) === "user" &&
|
||||||
|
<div>
|
||||||
|
<div className="sousmenu" onClick={displayPersoInfo}> INFORMATIONS PERSONNELLES</div>
|
||||||
|
<hr className="my_hr" />
|
||||||
|
<div className="sousmenu" onClick={"displayProfil_Facture"}> CATALOGUE</div>
|
||||||
|
<hr className="my_hr" />
|
||||||
|
<div className="sousmenu" onClick={displayProfil_Apprenant}> APPRENANTS</div>
|
||||||
|
<hr className="my_hr" />
|
||||||
|
<div className="sousmenu" onClick={displayProfil_Convention}> CONVENTIONS </div>
|
||||||
|
<hr className="my_hr" />
|
||||||
|
<div className="sousmenu" onClick={displayProfil_Convocation}> CONVOCATION </div>
|
||||||
|
<hr className="my_hr" />
|
||||||
|
<div className="sousmenu" onClick={displayProfil_Devis}> DEVIS</div>
|
||||||
|
<hr className="my_hr" />
|
||||||
|
<div className="sousmenu" onClick={displayProfil_Facture}> FACTURES</div>
|
||||||
|
<hr className="my_hr" />
|
||||||
|
<div className="sousmenu" onClick={displayProfil_Tout_Documents}> MES DOCUMENTS</div>
|
||||||
|
<hr className="my_hr" />
|
||||||
|
<div className="sousmenu" onClick={displayProfil_Modules_Mes_Documents}> MODULE TOUS DOCUMENTS</div>
|
||||||
|
<hr className="my_hr" />
|
||||||
|
<div className="sousmenu" onClick={deletemyaccount}> SUPPRIMER MON COMPTE</div>
|
||||||
|
<hr className="my_hr" />
|
||||||
|
</div>}
|
||||||
|
|
||||||
|
{/** Menu pour un utilisateur NON type 'user' exemple un apprenant */}
|
||||||
|
{connected_user_data && connected_user_data.type &&
|
||||||
|
String(connected_user_data.type) !== "user" &&
|
||||||
|
<div>
|
||||||
<div className="sousmenu" onClick={displayPersoInfo}> INFORMATIONS PERSONNELLES</div>
|
<div className="sousmenu" onClick={displayPersoInfo}> INFORMATIONS PERSONNELLES</div>
|
||||||
<hr className="my_hr" />
|
<hr className="my_hr" />
|
||||||
<div className="sousmenu" onClick={displayProfil_Objectif}> PROFILS & OBJECTIFS</div>
|
<div className="sousmenu" onClick={displayProfil_Objectif}> PROFILS & OBJECTIFS</div>
|
||||||
<hr className="my_hr" />
|
<hr className="my_hr" />
|
||||||
{/*<div className="sousmenu" onClick={displayHistory}> HISTORIQUE RECHERCHE</div>
|
<div className="sousmenu" onClick={"displayProfil_Objectif"}> MES DOCUMENTS</div>
|
||||||
<hr className="my_hr" />
|
<hr className="my_hr" />
|
||||||
<div className="sousmenu"> HISTORIQUE CONNEXION</div>
|
<div className="sousmenu" onClick={displayProfil_Modules_Mes_Documents}> MODULE TOUS DOCUMENTS</div>
|
||||||
<hr className="my_hr" />
|
<hr className="my_hr" />
|
||||||
<div className="sousmenu"> MES MESSAGES </div>
|
<div className="sousmenu" onClick={displayProfil_Facture}> MES FACTURES</div>
|
||||||
{String(migratedaccount) !== String("1") && <div>
|
|
||||||
<hr className="my_hr" />
|
<hr className="my_hr" />
|
||||||
<div className="sousmenu" style={{ "color": "#81BC3A" }} onClick={upgradetopro}> PASSER AU COMPTE PRO</div>
|
|
||||||
</div>}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<hr className="my_hr" />*/}
|
|
||||||
<div className="sousmenu" onClick={deletemyaccount}> SUPPRIMER MON COMPTE</div>
|
<div className="sousmenu" onClick={deletemyaccount}> SUPPRIMER MON COMPTE</div>
|
||||||
<hr className="my_hr" />
|
<hr className="my_hr" />
|
||||||
|
</div>}
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div className="div_droite">
|
<div className="div_droite" style={{ border: 'none' }}>
|
||||||
{String(myApiResponse) === String("true") && <div className="okUpdateData">
|
{String(myApiResponse) === String("true") && <div className="okUpdateData">
|
||||||
{result}
|
{result}
|
||||||
|
|
||||||
|
@ -385,6 +452,27 @@ function Account() {
|
||||||
|
|
||||||
{String(menu) === String("profil_objectif") && <Profil_Objectif />}
|
{String(menu) === String("profil_objectif") && <Profil_Objectif />}
|
||||||
|
|
||||||
|
{String(menu) === String("mes_factures") && connected_user_data && connected_user_data.partner_owner_recid &&
|
||||||
|
connected_user_data.partner_client_id &&
|
||||||
|
<Intranet_Factures_Client partner_client_id={connected_user_data.partner_client_id}
|
||||||
|
partner_owner_recid={connected_user_data.partner_owner_recid}
|
||||||
|
/>}
|
||||||
|
|
||||||
|
{String(menu) === String("tout_documents") && connected_user_data && connected_user_data.partner_owner_recid &&
|
||||||
|
connected_user_data.partner_client_id &&
|
||||||
|
<Intranet_Tous_Documents partner_client_id={connected_user_data.partner_client_id}
|
||||||
|
partner_owner_recid={connected_user_data.partner_owner_recid}
|
||||||
|
/>}
|
||||||
|
|
||||||
|
{String(menu) === String("modules_mes_documents") && connected_user_data && connected_user_data.partner_owner_recid &&
|
||||||
|
connected_user_data.partner_client_id &&
|
||||||
|
<Modules_Mes_Documents partner_client_id={connected_user_data.partner_client_id}
|
||||||
|
partner_owner_recid={connected_user_data.partner_owner_recid}
|
||||||
|
/>}
|
||||||
|
|
||||||
|
|
||||||
|
{String(menu) === String("mes_documents") && <Profil_Objectif />}
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -3022,6 +3022,7 @@ const AddClassManual = (props) => {
|
||||||
formData.append("status", "0");
|
formData.append("status", "0");
|
||||||
formData.append("object_owner_collection", "myclass");
|
formData.append("object_owner_collection", "myclass");
|
||||||
formData.append("object_owner_id", selected_class_id);
|
formData.append("object_owner_id", selected_class_id);
|
||||||
|
formData.append("type_document", "");
|
||||||
|
|
||||||
//formData.append("class_internal_url", internal_url);
|
//formData.append("class_internal_url", internal_url);
|
||||||
//console.log("token = " + stored_cookie);
|
//console.log("token = " + stored_cookie);
|
||||||
|
|
|
@ -32,9 +32,67 @@ import { IoCloseCircleOutline } from "react-icons/io5";
|
||||||
import AttachFileIcon from '@mui/icons-material/AttachFile';
|
import AttachFileIcon from '@mui/icons-material/AttachFile';
|
||||||
import Radio from '@mui/material/Radio';
|
import Radio from '@mui/material/Radio';
|
||||||
import { FcOpenedFolder } from "react-icons/fc";
|
import { FcOpenedFolder } from "react-icons/fc";
|
||||||
|
import { MdManageAccounts } from "react-icons/md";
|
||||||
|
import { FcInfo } from "react-icons/fc";
|
||||||
|
|
||||||
|
import Dialog from '@mui/material/Dialog';
|
||||||
|
import DialogActions from '@mui/material/DialogActions';
|
||||||
|
import DialogContent from '@mui/material/DialogContent';
|
||||||
|
import DialogContentText from '@mui/material/DialogContentText';
|
||||||
|
import DialogTitle from '@mui/material/DialogTitle';
|
||||||
|
import { IconButton } from '@material-ui/core';
|
||||||
|
import CancelPresentationIcon from '@mui/icons-material/CancelPresentation';
|
||||||
|
|
||||||
|
import { makeStyles } from "@material-ui/core/styles";
|
||||||
|
import Paper from '@material-ui/core/Paper';
|
||||||
|
import Draggable from 'react-draggable';
|
||||||
|
import Visibility from '@mui/icons-material/Visibility';
|
||||||
|
import VisibilityOff from '@mui/icons-material/VisibilityOff';
|
||||||
|
|
||||||
|
import { LiaDharmachakraSolid } from "react-icons/lia";
|
||||||
import WarningAmberIcon from '@mui/icons-material/WarningAmber';
|
import WarningAmberIcon from '@mui/icons-material/WarningAmber';
|
||||||
|
import BlockIcon from '@mui/icons-material/Block';
|
||||||
|
import CheckCircleOutlineIcon from '@mui/icons-material/CheckCircleOutline';
|
||||||
|
|
||||||
|
|
||||||
|
function PaperComponent(props) {
|
||||||
|
return (
|
||||||
|
<Draggable
|
||||||
|
handle="#draggable-dialog-title"
|
||||||
|
cancel={'[class*="MuiDialogContent-root"]'}
|
||||||
|
>
|
||||||
|
<Paper {...props} />
|
||||||
|
</Draggable>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
const useStyles = makeStyles((theme) => ({
|
||||||
|
|
||||||
|
dialog: {
|
||||||
|
position: 'absolute',
|
||||||
|
// left: 10,
|
||||||
|
top: 400
|
||||||
|
},
|
||||||
|
|
||||||
|
paper: {
|
||||||
|
overflowY: 'unset',
|
||||||
|
},
|
||||||
|
customizedButton: {
|
||||||
|
position: 'absolute',
|
||||||
|
left: '98%',
|
||||||
|
top: '-3%',
|
||||||
|
backgroundColor: 'lightgray',
|
||||||
|
color: 'gray',
|
||||||
|
},
|
||||||
|
}));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const AddParnerClient = (props) => {
|
const AddParnerClient = (props) => {
|
||||||
|
|
||||||
|
const classes = useStyles();
|
||||||
|
|
||||||
const history = useHistory();
|
const history = useHistory();
|
||||||
const [submenu, setsubmenu] = useState("");
|
const [submenu, setsubmenu] = useState("");
|
||||||
|
|
||||||
|
@ -52,6 +110,8 @@ const AddParnerClient = (props) => {
|
||||||
const [p_client_email, setclient_email] = useState("");
|
const [p_client_email, setclient_email] = useState("");
|
||||||
const [p_client_nom, setclient_nom] = useState("");
|
const [p_client_nom, setclient_nom] = useState("");
|
||||||
|
|
||||||
|
const [p_client_intranet_account_id, setp_client_intranet_account_id] = useState("0");
|
||||||
|
|
||||||
const [p_client_type_id, setp_client_type_id] = useState("");
|
const [p_client_type_id, setp_client_type_id] = useState("");
|
||||||
const [p_client_type_label, setp_client_type_label] = useState("");
|
const [p_client_type_label, setp_client_type_label] = useState("");
|
||||||
|
|
||||||
|
@ -617,6 +677,12 @@ const AddParnerClient = (props) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (mylocalclient.intranet_account_id) {
|
||||||
|
setp_client_intranet_account_id(mylocalclient.intranet_account_id);
|
||||||
|
} else {
|
||||||
|
setp_client_intranet_account_id("0");
|
||||||
|
}
|
||||||
|
|
||||||
if (mylocalclient.raison_sociale) {
|
if (mylocalclient.raison_sociale) {
|
||||||
setclient_raison_sociale(mylocalclient.raison_sociale);
|
setclient_raison_sociale(mylocalclient.raison_sociale);
|
||||||
} else {
|
} else {
|
||||||
|
@ -2696,6 +2762,7 @@ const AddParnerClient = (props) => {
|
||||||
formData.append("status", "0");
|
formData.append("status", "0");
|
||||||
formData.append("object_owner_collection", "partner_client");
|
formData.append("object_owner_collection", "partner_client");
|
||||||
formData.append("object_owner_id", props.client_id);
|
formData.append("object_owner_id", props.client_id);
|
||||||
|
formData.append("type_document", "");
|
||||||
|
|
||||||
//formData.append("class_internal_url", internal_url);
|
//formData.append("class_internal_url", internal_url);
|
||||||
//console.log("token = " + stored_cookie);
|
//console.log("token = " + stored_cookie);
|
||||||
|
@ -2996,9 +3063,261 @@ const AddParnerClient = (props) => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const [Dialog_mysy_intranet_account_open, setDialog_mysy_intranet_account_open] = React.useState(false);
|
||||||
|
const Dialog_mysy_intranet_account_handleClose = () => {
|
||||||
|
setDialog_mysy_intranet_account_open(false)
|
||||||
|
};
|
||||||
|
|
||||||
|
const [p_new_login, setp_new_login] = React.useState("");
|
||||||
|
const [p_new_pwd, setp_new_pwd] = React.useState("");
|
||||||
|
const [p_conf_new_login, setp_conf_new_login] = React.useState("");
|
||||||
|
|
||||||
|
const [p_detail_user_login_locked, setp_detail_user_login_locked] = useState("");
|
||||||
|
|
||||||
|
const [p_detail_user_login, setp_detail_user_login] = useState("");
|
||||||
|
|
||||||
|
function Generate_Pwd() {
|
||||||
|
var randomstring = Math.random().toString(36).slice(-8);
|
||||||
|
setp_new_pwd(randomstring);
|
||||||
|
setp_conf_new_login(randomstring);
|
||||||
|
}
|
||||||
|
|
||||||
|
const [currentpawdvisible, setcurrentpawdvisible] = useState(false);
|
||||||
|
|
||||||
|
|
||||||
|
const handleClickShowPassword = () => {
|
||||||
|
if (currentpawdvisible == false) {
|
||||||
|
document.getElementsByName("new_pwd")[0].type = "text";
|
||||||
|
document.getElementsByName("conf_new_login")[0].type = "text";
|
||||||
|
setcurrentpawdvisible(true);
|
||||||
|
}
|
||||||
|
else if (currentpawdvisible == true) {
|
||||||
|
document.getElementsByName("new_pwd")[0].type = "password";
|
||||||
|
document.getElementsByName("conf_new_login")[0].type = "password";
|
||||||
|
setcurrentpawdvisible(false);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
const [Add_Update_Client_Intranet_Login_Pass_Data_api, setAdd_Update_Client_Intranet_Login_Pass_Data_api] = useState();
|
||||||
|
const [Add_Update_Client_Intranet_Login_Pass_Data_message, setAdd_Update_Client_Intranet_Login_Pass_Data_message] = useState();
|
||||||
|
const [Add_Update_Client_Intranet_Login_Pass_Data_result, setAdd_Update_Client_Intranet_Login_Pass_Data_result] = useState();
|
||||||
|
function Add_Update_Client_Intranet_Login_Pass_Data() {
|
||||||
|
var form = new FormData();
|
||||||
|
//form.append("token","K3cw63eKokKSbV4spjQ48SUNnfy80yrXfA");
|
||||||
|
|
||||||
|
// Controle sur les champs
|
||||||
|
|
||||||
|
|
||||||
|
if (p_new_pwd.trim() == "") {
|
||||||
|
alert(" Vous devez saisir un mot de passe");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (p_conf_new_login.trim() == "") {
|
||||||
|
alert(" Vous devez confirmer le mot de passe");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*var validRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;
|
||||||
|
if (!p_new_login.match(validRegex)) {
|
||||||
|
alert("L'adresse email est invalide.");
|
||||||
|
return;
|
||||||
|
}*/
|
||||||
|
|
||||||
|
const stored_cookie = getCookie('tokenmysypart');
|
||||||
|
form.append("token", stored_cookie);
|
||||||
|
form.append("partner_client_id", props.client_id);
|
||||||
|
form.append("default_pwd", p_new_pwd);
|
||||||
|
// form.append("ressource_humaine_id", selected_id);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//console.log(" form == ", form);
|
||||||
|
|
||||||
|
var myurl = process.env.REACT_APP_API_URL + "myclass/api/Create_Partner_Client_Intranet_Account/";
|
||||||
|
|
||||||
|
if (p_client_intranet_account_id && String(p_client_intranet_account_id).length > 3) {
|
||||||
|
// Il s'agit d'une mise à jour de mot de passe
|
||||||
|
myurl = process.env.REACT_APP_API_URL + "myclass/api/Update_Pwd_Partner_Client_Intranet_Account/";
|
||||||
|
console.log(" ### mise à jour INTRANET ");
|
||||||
|
|
||||||
|
} else {
|
||||||
|
console.log(" ### creation INTRANET ");
|
||||||
|
}
|
||||||
|
|
||||||
|
setLoading(true);
|
||||||
|
axios.post(myurl, form).then(res => {
|
||||||
|
setLoading(false);
|
||||||
|
//console.log(" In Add_Update_Client_Intranet_Login_Pass_Data res.data.status = " + res.data.status);
|
||||||
|
//console.log(" In Add_Update_Client_Intranet_Login_Pass_Data res.data.message r_class = " + res.data.message);
|
||||||
|
|
||||||
|
if (String(res.data.status) === String("true")) {
|
||||||
|
setAdd_Update_Client_Intranet_Login_Pass_Data_api("true");
|
||||||
|
setAdd_Update_Client_Intranet_Login_Pass_Data_result(res.data.message);
|
||||||
|
|
||||||
|
//setp_detail_user_login(p_new_login);
|
||||||
|
|
||||||
|
Dialog_mysy_intranet_account_handleClose();
|
||||||
|
alert(res.data.message);
|
||||||
|
setp_new_login('');
|
||||||
|
setp_new_pwd('');
|
||||||
|
setp_conf_new_login('');
|
||||||
|
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
setAdd_Update_Client_Intranet_Login_Pass_Data_api("false");
|
||||||
|
setAdd_Update_Client_Intranet_Login_Pass_Data_message(res.data.message);
|
||||||
|
alert(res.data.message);
|
||||||
|
}
|
||||||
|
|
||||||
|
}).catch((error) => {
|
||||||
|
setLoading(false);
|
||||||
|
console.warn('UpdateStagiaireData : Not good man :( Add_Update_Client_Intranet_Login_Pass_Data = ' + error);
|
||||||
|
setAdd_Update_Client_Intranet_Login_Pass_Data_api("false");
|
||||||
|
alert(" Impossible de créer ou mettre à jour le compte intranet ");
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="add_partner_client">
|
<div className="add_partner_client">
|
||||||
|
|
||||||
|
{/*** GESTION Compte Intranet */}
|
||||||
|
<Dialog
|
||||||
|
open={Dialog_mysy_intranet_account_open}
|
||||||
|
className="displaypartnersession"
|
||||||
|
|
||||||
|
static
|
||||||
|
onClose={() => null}
|
||||||
|
|
||||||
|
PaperProps={{
|
||||||
|
|
||||||
|
|
||||||
|
className: classes.paper, // Apply the paper style
|
||||||
|
style: {
|
||||||
|
overflowY: 'unset',
|
||||||
|
position: 'absolute',
|
||||||
|
top: '10rem',
|
||||||
|
margin: "2px",
|
||||||
|
},
|
||||||
|
}}
|
||||||
|
hideBackdrop={true}
|
||||||
|
disableScrollLock
|
||||||
|
classes={{
|
||||||
|
paper: classes.dialog
|
||||||
|
}}
|
||||||
|
|
||||||
|
PaperComponent={PaperComponent}
|
||||||
|
aria-labelledby="draggable-dialog-title"
|
||||||
|
|
||||||
|
>
|
||||||
|
<DialogTitle style={{ cursor: 'move' }} id="draggable-dialog-title"> Gestion compte intranet </DialogTitle>
|
||||||
|
|
||||||
|
<DialogContent className="DialogContent_width" >
|
||||||
|
|
||||||
|
<div className="session_caract_Dialog" > Login
|
||||||
|
<TextField
|
||||||
|
autoFocus
|
||||||
|
margin="dense"
|
||||||
|
id="new_login"
|
||||||
|
disabled
|
||||||
|
//label="Prix Unitaire"
|
||||||
|
|
||||||
|
fullWidth
|
||||||
|
//variant="standard"
|
||||||
|
value={p_client_email}
|
||||||
|
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div className="session_caract_Dialog" > Mot de passe
|
||||||
|
<TextField
|
||||||
|
autoFocus
|
||||||
|
margin="dense"
|
||||||
|
id="new_pwd"
|
||||||
|
name="new_pwd"
|
||||||
|
type="password"
|
||||||
|
//label="Prix Unitaire"
|
||||||
|
|
||||||
|
fullWidth
|
||||||
|
//variant="standard"
|
||||||
|
value={p_new_pwd}
|
||||||
|
onChange={(e) => {
|
||||||
|
setp_new_pwd(e.target.value);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
<nav className="show_pwd_div" onClick={handleClickShowPassword}>
|
||||||
|
{currentpawdvisible ? <Visibility /> : <VisibilityOff />}
|
||||||
|
</nav>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div className="session_caract_Dialog" > Confirmer Mot de passe
|
||||||
|
<TextField
|
||||||
|
autoFocus
|
||||||
|
margin="dense"
|
||||||
|
id="conf_new_login"
|
||||||
|
name="conf_new_login"
|
||||||
|
type="password"
|
||||||
|
//label="Prix Unitaire"
|
||||||
|
|
||||||
|
fullWidth
|
||||||
|
//variant="standard"
|
||||||
|
value={p_conf_new_login}
|
||||||
|
onChange={(e) => {
|
||||||
|
setp_conf_new_login(e.target.value);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
<Button onClick={Generate_Pwd} className="bton_enreg_dialog" style={{ "width": "100%", "margin": "0px", "background": "orange" }}>Générer automatiquement un mot de passe <LiaDharmachakraSolid style={{ "fontSize": "medium" }} /> </Button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</DialogContent>
|
||||||
|
|
||||||
|
<DialogActions>
|
||||||
|
|
||||||
|
<IconButton
|
||||||
|
autoFocus
|
||||||
|
onClick={Dialog_mysy_intranet_account_handleClose}
|
||||||
|
color="primary"
|
||||||
|
className={classes.customizedButton}
|
||||||
|
>
|
||||||
|
<CancelPresentationIcon />
|
||||||
|
</IconButton>
|
||||||
|
<div className="div_row">
|
||||||
|
<div className="div_row_gauche">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div className="div_row_droite" style={{ "textAlign": 'center' }}>
|
||||||
|
|
||||||
|
|
||||||
|
<Tooltip className="tooltip_css" id="my-tooltip04" style={{ "fontSize": "12px" }} />
|
||||||
|
<a data-tooltip-id="my-tooltip04" data-tooltip-html="L'utilisateur sera notifié par email. Il recevra le login et le nouveau mot de passe.">
|
||||||
|
{p_client_intranet_account_id && String(p_client_intranet_account_id).length > 3 &&
|
||||||
|
<Button onClick={Add_Update_Client_Intranet_Login_Pass_Data} className="bton_enreg_dialog">Mettre à jour <FcInfo /></Button>}
|
||||||
|
|
||||||
|
{!p_client_intranet_account_id || String(p_client_intranet_account_id).length <= 3 &&
|
||||||
|
<Button onClick={Add_Update_Client_Intranet_Login_Pass_Data} className="bton_enreg_dialog">Création Compte Intranet <FcInfo /></Button>}
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</DialogActions>
|
||||||
|
|
||||||
|
|
||||||
|
</Dialog>
|
||||||
|
{/*** FIN GESTION Compte Intranet */}
|
||||||
|
|
||||||
|
|
||||||
{String(props.new_customer) === "1" && <div className="div_row" style={{ "paddingRight": "5px" }}>
|
{String(props.new_customer) === "1" && <div className="div_row" style={{ "paddingRight": "5px" }}>
|
||||||
<div className="div_row">
|
<div className="div_row">
|
||||||
<Button variant="outlined" onClick={submenu_donnee_client} className="detail_submenu client_menu" id='submenu_donnee_client' name='submenu_donnee_client'>Données Principales</Button>
|
<Button variant="outlined" onClick={submenu_donnee_client} className="detail_submenu client_menu" id='submenu_donnee_client' name='submenu_donnee_client'>Données Principales</Button>
|
||||||
|
@ -3506,7 +3825,7 @@ const AddParnerClient = (props) => {
|
||||||
{String(submenu).trim() === "submenu_donnee_client" && <div className="training_data" onChange={DataUpdated}>
|
{String(submenu).trim() === "submenu_donnee_client" && <div className="training_data" onChange={DataUpdated}>
|
||||||
|
|
||||||
<div className="session_caract" >
|
<div className="session_caract" >
|
||||||
<br /><br />
|
<br />
|
||||||
<nav style={{ "paddingLeft": "10px" }}>
|
<nav style={{ "paddingLeft": "10px" }}>
|
||||||
<Radio
|
<Radio
|
||||||
checked={p_client_is_company === '1'}
|
checked={p_client_is_company === '1'}
|
||||||
|
@ -3551,6 +3870,21 @@ const AddParnerClient = (props) => {
|
||||||
|
|
||||||
/> P. Public
|
/> P. Public
|
||||||
</nav>
|
</nav>
|
||||||
|
<Tooltip className="tooltip_css" id="tooltip_intranet_account" style={{ "fontSize": "10px" }} />
|
||||||
|
<a data-tooltip-id="tooltip_intranet_account" data-tooltip-html="Création & Gestion compte intranet">
|
||||||
|
<nav onClick={(e) => {
|
||||||
|
|
||||||
|
setDialog_mysy_intranet_account_open(true);
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
Compte Intranet <FcInfo /> <MdManageAccounts style={{ fontSize: '20px' }} />
|
||||||
|
|
||||||
|
{p_client_intranet_account_id && String(p_client_intranet_account_id).length > 3 && <CheckCircleOutlineIcon style={{ color: 'green' }} />}
|
||||||
|
{!p_client_intranet_account_id || String(p_client_intranet_account_id).length <= 3 && <BlockIcon style={{ color: 'orangered' }} />}
|
||||||
|
|
||||||
|
<br /></nav>
|
||||||
|
</a>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="session_caract"> Raison sociale <br />
|
<div className="session_caract"> Raison sociale <br />
|
||||||
|
|
|
@ -958,7 +958,7 @@ const Apprenant = (props) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (file_1_name && file_1_name.name) {
|
if (file_1_name && file_1_name.name) {
|
||||||
console.log(" ### Traitement de : ", file_1_name.name);
|
// console.log(" ### Traitement de : ", file_1_name.name);
|
||||||
|
|
||||||
const formData = new FormData();
|
const formData = new FormData();
|
||||||
formData.append('File', file_1_name);
|
formData.append('File', file_1_name);
|
||||||
|
@ -971,6 +971,7 @@ const Apprenant = (props) => {
|
||||||
formData.append("status", "0");
|
formData.append("status", "0");
|
||||||
formData.append("object_owner_collection", "apprenant");
|
formData.append("object_owner_collection", "apprenant");
|
||||||
formData.append("object_owner_id", selected_apprenant_id);
|
formData.append("object_owner_id", selected_apprenant_id);
|
||||||
|
formData.append("type_document", "");
|
||||||
|
|
||||||
//formData.append("class_internal_url", internal_url);
|
//formData.append("class_internal_url", internal_url);
|
||||||
//console.log("token = " + stored_cookie);
|
//console.log("token = " + stored_cookie);
|
||||||
|
|
|
@ -1873,6 +1873,7 @@ const Config_Documents_Super_Admin = (props) => {
|
||||||
formData.append("status", "0");
|
formData.append("status", "0");
|
||||||
formData.append("object_owner_collection", "courrier_template");
|
formData.append("object_owner_collection", "courrier_template");
|
||||||
formData.append("object_owner_id", selected_id);
|
formData.append("object_owner_id", selected_id);
|
||||||
|
formData.append("type_document", "");
|
||||||
|
|
||||||
//formData.append("class_internal_url", internal_url);
|
//formData.append("class_internal_url", internal_url);
|
||||||
//console.log("token = " + stored_cookie);
|
//console.log("token = " + stored_cookie);
|
||||||
|
|
|
@ -7387,7 +7387,7 @@ const DisplayPartnerSession = (props) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (file_1_name && file_1_name.name) {
|
if (file_1_name && file_1_name.name) {
|
||||||
console.log(" ### Traitement de : ", file_1_name.name);
|
// console.log(" ### Traitement de : ", file_1_name.name);
|
||||||
|
|
||||||
const formData = new FormData();
|
const formData = new FormData();
|
||||||
formData.append('File', file_1_name);
|
formData.append('File', file_1_name);
|
||||||
|
@ -7400,6 +7400,7 @@ const DisplayPartnerSession = (props) => {
|
||||||
formData.append("status", "0");
|
formData.append("status", "0");
|
||||||
formData.append("object_owner_collection", "inscription");
|
formData.append("object_owner_collection", "inscription");
|
||||||
formData.append("object_owner_id", selected_inscription_id);
|
formData.append("object_owner_id", selected_inscription_id);
|
||||||
|
formData.append("type_document", "");
|
||||||
|
|
||||||
//formData.append("class_internal_url", internal_url);
|
//formData.append("class_internal_url", internal_url);
|
||||||
//console.log("token = " + stored_cookie);
|
//console.log("token = " + stored_cookie);
|
||||||
|
@ -7461,7 +7462,7 @@ const DisplayPartnerSession = (props) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (file_1_name && file_1_name.name) {
|
if (file_1_name && file_1_name.name) {
|
||||||
console.log(" ### Traitement de : ", file_1_name.name);
|
// console.log(" ### Traitement de : ", file_1_name.name);
|
||||||
|
|
||||||
const formData = new FormData();
|
const formData = new FormData();
|
||||||
formData.append('File', file_1_name);
|
formData.append('File', file_1_name);
|
||||||
|
@ -7474,6 +7475,7 @@ const DisplayPartnerSession = (props) => {
|
||||||
formData.append("status", "0");
|
formData.append("status", "0");
|
||||||
formData.append("object_owner_collection", "session_formation");
|
formData.append("object_owner_collection", "session_formation");
|
||||||
formData.append("object_owner_id", selected_session_id);
|
formData.append("object_owner_id", selected_session_id);
|
||||||
|
formData.append("type_document", "");
|
||||||
|
|
||||||
//formData.append("class_internal_url", internal_url);
|
//formData.append("class_internal_url", internal_url);
|
||||||
//console.log("token = " + stored_cookie);
|
//console.log("token = " + stored_cookie);
|
||||||
|
|
|
@ -5124,6 +5124,7 @@ const DisplayPartnerStagiaires = (props) => {
|
||||||
formData.append("status", "0");
|
formData.append("status", "0");
|
||||||
formData.append("object_owner_collection", "inscription");
|
formData.append("object_owner_collection", "inscription");
|
||||||
formData.append("object_owner_id", selected_id);
|
formData.append("object_owner_id", selected_id);
|
||||||
|
formData.append("type_document", "");
|
||||||
|
|
||||||
//formData.append("class_internal_url", internal_url);
|
//formData.append("class_internal_url", internal_url);
|
||||||
//console.log("token = " + stored_cookie);
|
//console.log("token = " + stored_cookie);
|
||||||
|
|
|
@ -4753,6 +4753,7 @@ const Employes = (props) => {
|
||||||
formData.append("status", "0");
|
formData.append("status", "0");
|
||||||
formData.append("object_owner_collection", "ressource_humaine");
|
formData.append("object_owner_collection", "ressource_humaine");
|
||||||
formData.append("object_owner_id", selected_id);
|
formData.append("object_owner_id", selected_id);
|
||||||
|
formData.append("type_document", "");
|
||||||
|
|
||||||
//formData.append("class_internal_url", internal_url);
|
//formData.append("class_internal_url", internal_url);
|
||||||
//console.log("token = " + stored_cookie);
|
//console.log("token = " + stored_cookie);
|
||||||
|
@ -7153,8 +7154,6 @@ const Employes = (props) => {
|
||||||
open={Dialog_1_open_create_update_login_pwd_update}
|
open={Dialog_1_open_create_update_login_pwd_update}
|
||||||
onClose={Dialog_1_handleClose_buton_create_update_login_pwd_update}
|
onClose={Dialog_1_handleClose_buton_create_update_login_pwd_update}
|
||||||
className="employes"
|
className="employes"
|
||||||
|
|
||||||
|
|
||||||
>
|
>
|
||||||
|
|
||||||
<DialogTitle>MySy Information</DialogTitle>
|
<DialogTitle>MySy Information</DialogTitle>
|
||||||
|
@ -7249,8 +7248,6 @@ const Employes = (props) => {
|
||||||
</DialogContent>
|
</DialogContent>
|
||||||
|
|
||||||
<DialogActions>
|
<DialogActions>
|
||||||
|
|
||||||
|
|
||||||
<div className="div_row">
|
<div className="div_row">
|
||||||
<div className="div_row_gauche">
|
<div className="div_row_gauche">
|
||||||
<Tooltip className="tooltip_css" id="my-tooltip04" style={{ "fontSize": "12px" }} />
|
<Tooltip className="tooltip_css" id="my-tooltip04" style={{ "fontSize": "12px" }} />
|
||||||
|
@ -7265,8 +7262,6 @@ const Employes = (props) => {
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</DialogActions>
|
</DialogActions>
|
||||||
</Dialog>
|
</Dialog>
|
||||||
|
|
||||||
|
|
|
@ -5803,6 +5803,7 @@ Update du 22/10/2023 - Gestion des champs spécifiques ajoutés par le partenair
|
||||||
formData.append("status", "0");
|
formData.append("status", "0");
|
||||||
formData.append("object_owner_collection", "inscription");
|
formData.append("object_owner_collection", "inscription");
|
||||||
formData.append("object_owner_id", selected_id);
|
formData.append("object_owner_id", selected_id);
|
||||||
|
formData.append("type_document", "");
|
||||||
|
|
||||||
//formData.append("class_internal_url", internal_url);
|
//formData.append("class_internal_url", internal_url);
|
||||||
//console.log("token = " + stored_cookie);
|
//console.log("token = " + stored_cookie);
|
||||||
|
|
|
@ -1029,6 +1029,7 @@ const Groupe_Apprenant = (props) => {
|
||||||
formData.append("status", "0");
|
formData.append("status", "0");
|
||||||
formData.append("object_owner_collection", "groupe_inscription");
|
formData.append("object_owner_collection", "groupe_inscription");
|
||||||
formData.append("object_owner_id", selected_id);
|
formData.append("object_owner_id", selected_id);
|
||||||
|
formData.append("type_document", "");
|
||||||
|
|
||||||
//formData.append("class_internal_url", internal_url);
|
//formData.append("class_internal_url", internal_url);
|
||||||
//console.log("token = " + stored_cookie);
|
//console.log("token = " + stored_cookie);
|
||||||
|
|
|
@ -134,9 +134,16 @@ const Header = () => {
|
||||||
function user_logout_confirmation() {
|
function user_logout_confirmation() {
|
||||||
/* si c'est une connexion partner qui est active */
|
/* si c'est une connexion partner qui est active */
|
||||||
if (typeof (stored_user) != "undefined") {
|
if (typeof (stored_user) != "undefined") {
|
||||||
setCookie("tokenmysych", "");
|
const stored_cookie = getCookie('tokenmysych');
|
||||||
|
var acces_right_token_name = stored_cookie + "_uar";
|
||||||
|
|
||||||
|
setpartCookie("tokenmysych", "", { path: '/' });
|
||||||
|
setpartCookie(acces_right_token_name, "", { path: '/' });
|
||||||
|
removeCookie(acces_right_token_name, { path: '/' });
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
history.push("/recherche-formation");
|
history.push("/");
|
||||||
}
|
}
|
||||||
|
|
||||||
function user_logout() {
|
function user_logout() {
|
||||||
|
@ -550,7 +557,15 @@ const Header = () => {
|
||||||
<DialogActions>
|
<DialogActions>
|
||||||
<div className="div_row">
|
<div className="div_row">
|
||||||
<div className="div_row_gauche">
|
<div className="div_row_gauche">
|
||||||
<Button onClick={part_logout_confirmation} className="bton_enreg_dialog">Deconnexion</Button>
|
<Button
|
||||||
|
|
||||||
|
onClick={(e) => {
|
||||||
|
part_logout_confirmation();
|
||||||
|
user_logout_confirmation();
|
||||||
|
|
||||||
|
}}
|
||||||
|
|
||||||
|
className="bton_enreg_dialog">Deconnexion</Button>
|
||||||
</div>
|
</div>
|
||||||
<div className="div_row_droite" style={{ "textAlign": 'center' }}>
|
<div className="div_row_droite" style={{ "textAlign": 'center' }}>
|
||||||
<Button onClick={Dialog_1_handleClose_buton} className="bton_annule_dialog" >Annuler</Button>
|
<Button onClick={Dialog_1_handleClose_buton} className="bton_annule_dialog" >Annuler</Button>
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -2321,6 +2321,7 @@ const Notes_Evaluation = (props) => {
|
||||||
formData.append("status", "0");
|
formData.append("status", "0");
|
||||||
formData.append("object_owner_collection", "note_evaluation");
|
formData.append("object_owner_collection", "note_evaluation");
|
||||||
formData.append("object_owner_id", selected_id);
|
formData.append("object_owner_id", selected_id);
|
||||||
|
formData.append("type_document", "");
|
||||||
|
|
||||||
//formData.append("class_internal_url", internal_url);
|
//formData.append("class_internal_url", internal_url);
|
||||||
//console.log("token = " + stored_cookie);
|
//console.log("token = " + stored_cookie);
|
||||||
|
|
|
@ -70,7 +70,7 @@ function PartnerSignIn() {
|
||||||
function Logout_User() {
|
function Logout_User() {
|
||||||
confirmAlert({
|
confirmAlert({
|
||||||
title: 'Deconnexion utilisateur ?',
|
title: 'Deconnexion utilisateur ?',
|
||||||
message: 'Confirmez la deconnexion utilisateur',
|
message: 'Confirmez la deconnexion utilisateur zzz',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
label: 'Oui',
|
label: 'Oui',
|
||||||
|
|
|
@ -657,7 +657,7 @@ const Partner_Client = (props) => {
|
||||||
|
|
||||||
{String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) === "1" && <nav> <FcOrganization /> Société </nav>}
|
{String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) === "1" && <nav> <FcOrganization /> Société </nav>}
|
||||||
{String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) === "0" && <nav> <FcBusinessman /> Particulier </nav>}
|
{String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) === "0" && <nav> <FcBusinessman /> Particulier </nav>}
|
||||||
{String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) === "2" && <nav> <FcDepartment /> P. Public </nav>}
|
{String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) === "2" && <nav> <FcDepartment /> P. Public 4</nav>}
|
||||||
{String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) !== "0" &&
|
{String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) !== "0" &&
|
||||||
String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) !== "1" &&
|
String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) !== "1" &&
|
||||||
String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) !== "2" &&
|
String(JSON.parse(Get_List_Partner_Clients_result[gridline_id]).is_company) !== "2" &&
|
||||||
|
|
|
@ -8,16 +8,11 @@ import { Helmet } from "react-helmet";
|
||||||
import { useCookies } from "react-cookie";
|
import { useCookies } from "react-cookie";
|
||||||
import { confirmAlert } from 'react-confirm-alert'; // Import
|
import { confirmAlert } from 'react-confirm-alert'; // Import
|
||||||
import 'react-confirm-alert/src/react-confirm-alert.css'; // Import css
|
import 'react-confirm-alert/src/react-confirm-alert.css'; // Import css
|
||||||
import bannerimg2 from "../mysy_img/MYSY-LOGO-BLUE.png";
|
|
||||||
import Popup from 'reactjs-popup';
|
import Popup from 'reactjs-popup';
|
||||||
import 'reactjs-popup/dist/index.css';
|
import 'reactjs-popup/dist/index.css';
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import { useParams } from 'react-router-dom'
|
import { useParams } from 'react-router-dom'
|
||||||
import logowhite from "../mysy_img/MYSY-LOGO-WHITE.png";
|
|
||||||
import Footer from "./Fotter";
|
|
||||||
import MenuItem from "@material-ui/core/MenuItem";
|
|
||||||
import Button2 from "@material-ui/core/Button";
|
|
||||||
import Menu from "@material-ui/core/Menu";
|
|
||||||
import Header from "./Header";
|
import Header from "./Header";
|
||||||
import { useLocation } from "react-router-dom";
|
import { useLocation } from "react-router-dom";
|
||||||
import Visibility from '@mui/icons-material/Visibility';
|
import Visibility from '@mui/icons-material/Visibility';
|
||||||
|
@ -112,8 +107,6 @@ function SignIn() {
|
||||||
url_login = process.env.REACT_APP_API_URL + "myclass/api/partner_login/";
|
url_login = process.env.REACT_APP_API_URL + "myclass/api/partner_login/";
|
||||||
setmenucompte("partner");
|
setmenucompte("partner");
|
||||||
partner_connexion = "partner";
|
partner_connexion = "partner";
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (String(menucompte) === "user") {
|
else if (String(menucompte) === "user") {
|
||||||
url_login = process.env.REACT_APP_API_URL + "myclass/api/login/";
|
url_login = process.env.REACT_APP_API_URL + "myclass/api/login/";
|
||||||
|
@ -122,6 +115,8 @@ function SignIn() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// console.log( " ### full url_login = ", url_login)
|
||||||
|
|
||||||
// Gestion des Cookies
|
// Gestion des Cookies
|
||||||
const stored_partner = cookie_part.tokenmysypart;
|
const stored_partner = cookie_part.tokenmysypart;
|
||||||
const stored_user = cookie.tokenmysych;
|
const stored_user = cookie.tokenmysych;
|
||||||
|
@ -503,9 +498,7 @@ function SignIn() {
|
||||||
<Input type="email" placeholder="Email" name="email" />
|
<Input type="email" placeholder="Email" name="email" />
|
||||||
</FormGroup>
|
</FormGroup>
|
||||||
|
|
||||||
<FormGroup>
|
<div style={{height:'10px'}}> </div>
|
||||||
|
|
||||||
</FormGroup>
|
|
||||||
|
|
||||||
|
|
||||||
<FormGroup>
|
<FormGroup>
|
||||||
|
@ -514,7 +507,7 @@ function SignIn() {
|
||||||
<Label>Votre mot de passe </Label>
|
<Label>Votre mot de passe </Label>
|
||||||
</div>
|
</div>
|
||||||
<div className="show_pwd_div" onClick={handleClickShowPassword}>
|
<div className="show_pwd_div" onClick={handleClickShowPassword}>
|
||||||
{currentpawdvisible ? <Visibility /> : <VisibilityOff />}
|
{currentpawdvisible ? <Visibility style={{fontSize:'15px'}}/> : <VisibilityOff style={{fontSize:'15px'}}/>}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -39,7 +39,8 @@ import Menu from '@mui/material/Menu';
|
||||||
import Module_Editique from "./Module_Editique";
|
import Module_Editique from "./Module_Editique";
|
||||||
import Module_Attestation_Formation from "./Module_Attestation_Formation";
|
import Module_Attestation_Formation from "./Module_Attestation_Formation";
|
||||||
import Module_Email_Management from "./Module_Email_Management";
|
import Module_Email_Management from "./Module_Email_Management";
|
||||||
|
import ReactPlayer from "react-player";
|
||||||
|
import ReactAudioPlayer from 'react-audio-player';
|
||||||
import Paper from '@material-ui/core/Paper';
|
import Paper from '@material-ui/core/Paper';
|
||||||
|
|
||||||
import { makeStyles } from '@material-ui/core/styles';
|
import { makeStyles } from '@material-ui/core/styles';
|
||||||
|
@ -70,7 +71,7 @@ import { ContextMenu, ContextMenuTrigger } from "react-contextmenu";
|
||||||
import * as XLSX from 'xlsx';
|
import * as XLSX from 'xlsx';
|
||||||
|
|
||||||
//import SpeechRecognition, { useSpeechRecognition } from 'react-speech-recognition';
|
//import SpeechRecognition, { useSpeechRecognition } from 'react-speech-recognition';
|
||||||
|
import useSound from 'use-sound';
|
||||||
|
|
||||||
const useStyles = makeStyles((theme) => ({
|
const useStyles = makeStyles((theme) => ({
|
||||||
paper: {
|
paper: {
|
||||||
|
@ -454,6 +455,7 @@ const TestUrl_New = (props) => {
|
||||||
Get_Personnalisable_Collection_and_Fields();
|
Get_Personnalisable_Collection_and_Fields();
|
||||||
Get_Partner_Object_Specific_Fields("ressource_humaine");
|
Get_Partner_Object_Specific_Fields("ressource_humaine");
|
||||||
|
|
||||||
|
|
||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
|
|
||||||
|
@ -886,7 +888,6 @@ const TestUrl_New = (props) => {
|
||||||
|
|
||||||
document.body.appendChild(audio);
|
document.body.appendChild(audio);
|
||||||
|
|
||||||
|
|
||||||
setblob_recorded_file(audio.attributes.src.nodeValue);
|
setblob_recorded_file(audio.attributes.src.nodeValue);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -917,12 +918,68 @@ const TestUrl_New = (props) => {
|
||||||
console.error('Error - send_audi_blob:');
|
console.error('Error - send_audi_blob:');
|
||||||
// setisimgSelected(true);
|
// setisimgSelected(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
const [audi_file, setaudi_file] = React.useState("");
|
||||||
|
const audioRef = useRef(null);
|
||||||
|
function Get_and_launch_audio_file() {
|
||||||
|
|
||||||
|
var filedetail = "audio.mp3"
|
||||||
|
|
||||||
|
var url = process.env.REACT_APP_API_URL + "myclass/api/send_mysy_openai_to_voice_file/";
|
||||||
|
|
||||||
|
var fileName = "cherifffff.mp3";
|
||||||
|
axios.get(url, { responseType: 'blob', },)
|
||||||
|
.then((res) => {
|
||||||
|
fileDownload(res.data, filedetail);
|
||||||
|
|
||||||
|
const url = window.URL.createObjectURL(new Blob([res]));
|
||||||
|
const link = document.createElement("a");
|
||||||
|
link.href = url;
|
||||||
|
link.download = fileName || "downloaded-file";
|
||||||
|
document.body.appendChild(link);
|
||||||
|
|
||||||
|
console.log(" ### link = ", link);
|
||||||
|
|
||||||
|
link.click();
|
||||||
|
|
||||||
|
document.body.removeChild(link);
|
||||||
|
window.URL.revokeObjectURL(url);
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
const [blob_recorded_file, setblob_recorded_file] = React.useState("");
|
const [blob_recorded_file, setblob_recorded_file] = React.useState("");
|
||||||
|
const [playbackRate, setPlaybackRate] = React.useState(0.75);
|
||||||
|
|
||||||
|
const [play] = useSound('audio.mp3',
|
||||||
|
{ playbackRate });
|
||||||
|
|
||||||
|
|
||||||
|
const handleClick_play = async () => {
|
||||||
|
console.log(" iiiiiiiiiiii ");
|
||||||
|
|
||||||
|
// var path = "blob:http://localhost:3009/5b14dae1-d402-47cd-b71b-fa3938563265";
|
||||||
|
// var path = "audio.mp3";
|
||||||
|
let path = require("./audio.mp3").default;
|
||||||
|
const audio = new Audio(path);
|
||||||
|
const audioPromise = audio.play();
|
||||||
|
if (audioPromise !== undefined) {
|
||||||
|
audioPromise
|
||||||
|
.then(() => {
|
||||||
|
// autoplay started
|
||||||
|
console.log("works");
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
// catch dom exception
|
||||||
|
console.info(err);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="testurl_new">
|
<div className="testurl_new">
|
||||||
|
@ -1131,32 +1188,31 @@ const TestUrl_New = (props) => {
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
file = {blob_recorded_file} <br />
|
file = {blob_recorded_file} <br />
|
||||||
<button onClick={send_audi_blob}> envoyer fichier</button>
|
<button onClick={send_audi_blob}> envoyer fichier</button><br />
|
||||||
|
<button onClick={Get_and_launch_audio_file}> recuperer un fichier audio yy</button><br />
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2> manip datagrid </h2>
|
|
||||||
<div style={{ height: 300, width: '100%' }}>
|
|
||||||
<DataGrid
|
|
||||||
{...data}
|
|
||||||
localeText={{
|
|
||||||
toolbarExportCSV: "Export CSV(;)",
|
|
||||||
}}
|
|
||||||
loading={loading}
|
|
||||||
components={{
|
|
||||||
Toolbar: CustomToolbar
|
|
||||||
}}
|
|
||||||
componentsProps={{
|
|
||||||
toolbar: { data_colums: data.columns }
|
|
||||||
}}
|
|
||||||
|
|
||||||
columnVisibilityModel={columnVisibilityModel}
|
|
||||||
onColumnVisibilityModelChange={(newModel) => {
|
|
||||||
setColumnVisibilityModel(newModel);
|
|
||||||
}}
|
|
||||||
|
|
||||||
|
<audio ref={audioRef} controls >
|
||||||
|
<source src="blob:audio.mp3" type="audio/mp3" />
|
||||||
|
Your browser does not support the audio element.
|
||||||
|
</audio>
|
||||||
|
aaa
|
||||||
|
<ReactAudioPlayer
|
||||||
|
src="blob:audio.mp3"
|
||||||
|
autoPlay={true}
|
||||||
|
controls
|
||||||
|
/> bb
|
||||||
|
<ReactAudioPlayer
|
||||||
|
src={"blob:audio.mp3"}
|
||||||
|
controls
|
||||||
|
preload="none"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div> <br />
|
||||||
|
<button onClick={handleClick_play}>Boop!</button>;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -108,7 +108,7 @@
|
||||||
.sousmenu {
|
.sousmenu {
|
||||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||||
font-size: small;
|
font-size: small;
|
||||||
text-align: center;
|
text-align: left;
|
||||||
margin-bottom: 0.8rem;
|
margin-bottom: 0.8rem;
|
||||||
color: #0c0101;
|
color: #0c0101;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
@ -387,7 +387,7 @@
|
||||||
.sousmenu {
|
.sousmenu {
|
||||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||||
font-size: 0.75rem;
|
font-size: 0.75rem;
|
||||||
text-align: center;
|
text-align: left;
|
||||||
margin-bottom: 0.8rem;
|
margin-bottom: 0.8rem;
|
||||||
color: #c0c0c0;
|
color: #c0c0c0;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
@ -693,7 +693,7 @@
|
||||||
.sousmenu {
|
.sousmenu {
|
||||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||||
font-size: 0.8rem;
|
font-size: 0.8rem;
|
||||||
text-align: center;
|
text-align: left;
|
||||||
margin-bottom: 0.8rem;
|
margin-bottom: 0.8rem;
|
||||||
color: #c0c0c0;
|
color: #c0c0c0;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
@ -1001,7 +1001,7 @@
|
||||||
.sousmenu {
|
.sousmenu {
|
||||||
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
font-family: "verdana", "Quicksand", "Signika", sans-serif;
|
||||||
font-size: 0.75rem;
|
font-size: 0.75rem;
|
||||||
text-align: center;
|
text-align: left;
|
||||||
margin-bottom: 0.8rem;
|
margin-bottom: 0.8rem;
|
||||||
color: #c0c0c0;
|
color: #c0c0c0;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -1887,7 +1887,7 @@
|
||||||
|
|
||||||
input {
|
input {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 3rem;
|
height: 2.5rem;
|
||||||
border-radius: 5rem;
|
border-radius: 5rem;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
border: auto;
|
border: auto;
|
||||||
|
|
|
@ -134,3 +134,6 @@
|
||||||
@import "./components/fonctionnalite_v1";
|
@import "./components/fonctionnalite_v1";
|
||||||
@import "./components/addarticleavis";
|
@import "./components/addarticleavis";
|
||||||
@import "./components/moduleia";
|
@import "./components/moduleia";
|
||||||
|
@import "./components/intranet_factures_client";
|
||||||
|
@import "./components/intranet_tous_documents";
|
||||||
|
@import "./components/modules_mes_documents";
|
Loading…
Reference in New Issue