22 lines
783 B
JavaScript
22 lines
783 B
JavaScript
import { useEffect } from "react";
|
|
import { fetchUserRights } from "../services/api/fetchUserRights.js";
|
|
|
|
export const useFetchUserRights = (setUserRights, setIsRightsLoaded, setHasRights) => {
|
|
useEffect(() => {
|
|
const fetchAndSetUserRights = async () => {
|
|
try {
|
|
const rights = await fetchUserRights();
|
|
setUserRights(rights);
|
|
setIsRightsLoaded(true);
|
|
|
|
// Sicherstellen, dass `rights` ein Array ist, bevor `.includes()` aufgerufen wird
|
|
setHasRights(localStorage.getItem("editMode") && Array.isArray(rights) && rights.includes(56));
|
|
} catch (error) {
|
|
console.error("Fehler beim Abrufen der Benutzerrechte:", error);
|
|
}
|
|
};
|
|
|
|
fetchAndSetUserRights();
|
|
}, [setUserRights, setIsRightsLoaded, setHasRights]);
|
|
};
|