fix: correction des redirections vers la login page

This commit is contained in:
Luc SORIGNET
2025-04-17 17:23:17 +02:00
parent f7666c894b
commit 2e0fe86c71
6 changed files with 44 additions and 48 deletions

View File

@ -4,24 +4,26 @@ import DropdownMenu from '@/components/DropdownMenu';
import { getRightStr } from '@/utils/rights';
import { ChevronDown } from 'lucide-react'; // Import de l'icône
const ProfileSelector = ({ onEstablishmentChange, className = '' }) => {
const ProfileSelector = ({ onRoleChange, className = '' }) => {
const {
establishments,
selectedEstablishmentId,
selectedRoleId,
setSelectedRoleId,
setSelectedEstablishmentId,
setProfileRole,
user,
} = useEstablishment();
const [dropdownOpen, setDropdownOpen] = useState(false);
const handleEstablishmentChange = (establishmentId) => {
setSelectedEstablishmentId(establishmentId);
const role = establishments.find(
(est) => est.id === establishmentId
)?.role_type;
const handleRoleChange = (roleId) => {
// Pas bon quand on a plusieur role pour le même établissement
setSelectedRoleId(roleId);
const role = user.roles[roleId].role_type;
setProfileRole(role);
if (onEstablishmentChange) {
onEstablishmentChange(establishmentId);
const establishmentId = user.roles[roleId].establishment__id;
setSelectedEstablishmentId(establishmentId);
if (onRoleChange) {
onRoleChange(roleId);
}
setDropdownOpen(false); // Fermer le menu après sélection
};
@ -36,7 +38,7 @@ const ProfileSelector = ({ onEstablishmentChange, className = '' }) => {
}
const selectedEstablishment = establishments.find(
(est) => est.id === selectedEstablishmentId
(est) => est.role_id === selectedRoleId
);
return (
@ -70,7 +72,7 @@ const ProfileSelector = ({ onEstablishmentChange, className = '' }) => {
<div className="text-sm text-gray-500">{establishment.name}</div>
</div>
),
onClick: () => handleEstablishmentChange(establishment.id),
onClick: () => handleRoleChange(establishment.role_id),
}))}
buttonClassName="w-full"
menuClassName="absolute mt-2 w-full bg-white border border-gray-200 rounded shadow-lg z-10"