import React, { useMemo, useRef } from 'react'; import { __ } from '@wordpress/i18n'; // store import { storeSet, useStore } from '../../store'; // components import { Messages } from 'primereact/messages'; import set404FromErrorResponse from '../../helpers/set404FromErrorResponse'; import FormField from '../../components/FormField'; import { Button } from 'primereact/button'; import { useForm } from 'react-hook-form'; // api import UserService from '../../service/user-service'; import getDateFromISOstring from '../../helpers/getDateFromISOstring'; const Profile = () => { const isAsyncRequest = useStore().main.isAsyncRequest(); const userData = useStore().main.userData(); const infoMsgs = useRef(null); const { control, handleSubmit, formState: { errors }, setValue } = useForm({ defaultValues: useMemo(() => { return userData; }, [userData]), mode: 'onChange' }); const onSubmit = (formData) => { infoMsgs.current.clear(); storeSet.main.setAsyncRequest(); UserService.updateUser(userData.id, formData, updateCallback, updateError); }; const updateCallback = (data) => { if (data.status === 'SUCCESS') { //setData(getFormattedBandiData(data.data)); } storeSet.main.unsetAsyncRequest(); } const updateError = (data) => { set404FromErrorResponse(data); storeSet.main.unsetAsyncRequest(); } return (

{__('Profilo utente', 'gepafin')}

{__('Informazioni personali', 'gepafin')}

{__('Consensi', 'gepafin')}

{__('Invio di materiale pubblicitario, vendita diretta, compimento di ricerche di mercato o comunicazione commerciale riguardanti promozione e vendita di prodotti e servizi della Gepafin, mediante modalità di contatto automatizzate (posta elettronica, PEC, messaggi tramite canali informatici, network ed applicazioni web) e tradizionali (come posta cartacea e chiamate telefoniche con operatore)', 'gepafin')}
{__('Elaborazione, in forma elettronica, dei dati relativi ai rapporti e servizi forniti, per l’analisi di comportamenti e preferenze della clientela, da utilizzare a scopo commerciale, per la individuazione ed offerta di prodotti e servizi di suo interesse', 'gepafin')}
{__('Comunicazione dei miei dati ad altre società in ambito bancario, finanziario od assicurativo e enti pubblici che li tratteranno per invio di materiale pubblicitario, vendita diretta, compimento di ricerche di mercato o comunicazione commerciale riguardanti loro prodotti o servizi, mediante le modalità automatizzate e tradizionali di comunicazione sopra indicate', 'gepafin')}

{__('Utenti Associati', 'gepafin')}

{__('Sicurezza', 'gepafin')}

{getDateFromISOstring(userData.lastLogin)}
{__('Azioni rapide', 'gepafin')}
) } export default Profile;