diff --git a/backend/src/components/BookingList.tsx b/backend/src/components/BookingList.tsx index 547cae24..beccb115 100644 --- a/backend/src/components/BookingList.tsx +++ b/backend/src/components/BookingList.tsx @@ -192,7 +192,7 @@ const BookingList = ({ if (agencies && statuses && loggedUser) { fetchData(page, user) } - }, [page, loggedUser]) // eslint-disable-line react-hooks/exhaustive-deps + }, [page]) // eslint-disable-line react-hooks/exhaustive-deps useEffect(() => { if (agencies && statuses && loggedUser) { diff --git a/backend/src/pages/Bookings.tsx b/backend/src/pages/Bookings.tsx index 981b756a..29de8e54 100644 --- a/backend/src/pages/Bookings.tsx +++ b/backend/src/pages/Bookings.tsx @@ -54,7 +54,7 @@ const Bookings = () => { setLeftPanel(!_admin) setLoadingAgencies(_admin) - const _allAgencies = _admin ? await AgencyService.getAllAgencies() : [] + const _allAgencies = await AgencyService.getAllAgencies() const _agencies = _admin ? movininHelper.flattenAgencies(_allAgencies) : [_user._id ?? ''] setAllAgencies(_allAgencies) setAgencies(_agencies) diff --git a/backend/src/pages/User.tsx b/backend/src/pages/User.tsx index 2ea6bb8a..b043791d 100644 --- a/backend/src/pages/User.tsx +++ b/backend/src/pages/User.tsx @@ -140,6 +140,19 @@ const User = () => { const edit = loggedUser && user && (loggedUser.type === movininTypes.RecordType.Admin || loggedUser._id === user._id || (loggedUser.type === movininTypes.RecordType.Agency && loggedUser._id === user.agency)) const agency = user && user.type === movininTypes.RecordType.Agency + const _agencies: string[] = [] + if (loggedUser && user) { + if ((agency && loggedUser._id === user._id) + || (loggedUser.type === movininTypes.RecordType.Admin && user.type === movininTypes.RecordType.Agency) + ) { + _agencies.push(user._id as string) + } else if (loggedUser.type === movininTypes.RecordType.Agency && user.type === movininTypes.RecordType.User) { + _agencies.push(loggedUser._id as string) + } else if (loggedUser.type === movininTypes.RecordType.Admin) { + _agencies.push(...agencies) + } + } + return ( {loggedUser && user && visible && ( @@ -196,13 +209,13 @@ const User = () => {
- {(edit || !agency) && ( + {_agencies.length > 0 && ( { if (agencies && statuses && user) {