refactor: Affichage des notifications dans la partie "Users"

(login/new/reset)
This commit is contained in:
N3WT DE COMPET
2025-05-31 09:22:35 +02:00
parent 3a2455f918
commit e509625811
5 changed files with 49 additions and 88 deletions

View File

@ -14,20 +14,18 @@ import { useCsrfToken } from '@/context/CsrfContext'; // Importez le hook useCsr
import logger from '@/utils/logger';
import { useEstablishment } from '@/context/EstablishmentContext';
import { useNotification } from '@/context/NotificationContext';
export default function Page() {
const [errorMessage, setErrorMessage] = useState('');
const [userFieldError, setUserFieldError] = useState('');
const [passwordFieldError, setPasswordFieldError] = useState('');
const { initializeContextWithSession } = useEstablishment();
const [isLoading, setIsLoading] = useState(false);
const router = useRouter();
const csrfToken = useCsrfToken(); // Utilisez le hook useCsrfToken
const { showNotification } = useNotification();
function handleFormLogin(formData) {
setIsLoading(true);
setErrorMessage('');
login({
email: formData.get('login'),
@ -37,7 +35,11 @@ export default function Page() {
logger.debug('Sign In Result', result);
if (result.error) {
setErrorMessage(result.error);
showNotification(
result.error,
'error',
'Erreur'
);
setIsLoading(false);
} else {
// On initialise le contexte establishement avec la session
@ -48,7 +50,11 @@ export default function Page() {
if (url) {
router.push(url);
} else {
setErrorMessage('Type de rôle non géré');
showNotification(
'Type de rôle non géré',
'error',
'Erreur'
);
}
});
setIsLoading(false);
@ -59,8 +65,10 @@ export default function Page() {
error
);
setIsLoading(false);
setErrorMessage(
'Une erreur est survenue lors de la récupération de la session.'
showNotification(
'Une erreur est survenue lors de la récupération de la session.',
'error',
'Erreur'
);
});
}
@ -68,7 +76,11 @@ export default function Page() {
.catch((error) => {
logger.error('Erreur lors de la connexion:', error);
setIsLoading(false);
setErrorMessage('Une erreur est survenue lors de la connexion.');
showNotification(
'Une erreur est survenue lors de la connexion.',
'error',
'Erreur'
);
});
}
@ -98,7 +110,6 @@ export default function Page() {
IconItem={User}
label="Identifiant"
placeholder="Identifiant"
errorMsg={userFieldError}
className="w-full mb-5"
/>
<InputTextIcon
@ -107,11 +118,9 @@ export default function Page() {
IconItem={KeySquare}
label="Mot de passe"
placeholder="Mot de passe"
errorMsg={passwordFieldError}
className="w-full mb-5"
/>
<div className="input-group mb-4"></div>
<label className="text-red-500">{errorMessage}</label>
<label>
<a
className="float-right mb-4"