-
+
>
) : (
-
Access Denied: You don't have permission to perform this action!
+
+ Access Denied: You don't have permission to perform this action !
+
)}
@@ -156,12 +170,16 @@ const ExpensePage = () => {
setManageExpenseModal({ IsOpen: null, expenseId: null })}
+ closeModal={() =>
+ setManageExpenseModal({ IsOpen: null, expenseId: null })
+ }
>
setManageExpenseModal({ IsOpen: null, expenseId: null })}
+ closeModal={() =>
+ setManageExpenseModal({ IsOpen: null, expenseId: null })
+ }
/>
)}
diff --git a/src/pages/Tenant/TenantDetails.jsx b/src/pages/Tenant/TenantDetails.jsx
index c704c46f..a2696d1d 100644
--- a/src/pages/Tenant/TenantDetails.jsx
+++ b/src/pages/Tenant/TenantDetails.jsx
@@ -8,6 +8,8 @@ import GlobalModel from "../../components/common/GlobalModel";
import EditProfile from "../../components/Tenant/EditProfile";
import SubScriptionHistory from "../../components/Tenant/SubScriptionHistory";
import Loader from "../../components/common/Loader";
+import { useHasUserPermission } from "../../hooks/useHasUserPermission";
+import { MANAGE_TENANTS, SUPPER_TENANT } from "../../utils/constants";
const TenantDetailsContext = createContext();
export const useTenantDetailsContext = () => useContext(TenantDetailsContext);
@@ -16,19 +18,21 @@ const TenantDetails = ({
tenantId: tenantIdProp,
wrapInContainer = true,
showBreadcrumb = true,
- iTSelf = true
+ iTSelf = true,
}) => {
const { tenantId: tenantIdFromUrl } = useParams();
const activeTenantId = tenantIdFromUrl || tenantIdProp;
const { data, isLoading, isError, error } = useTenantDetails(activeTenantId);
+ const ManageTenant = useHasUserPermission(SUPPER_TENANT);
+ const ModifyTenant = useHasUserPermission(MANAGE_TENANTS);
const [editTenant, setEditTenant] = useState(false);
const contextValues = useMemo(
() => ({ editTenant, setEditTenant }),
[editTenant]
);
- const tabs = useMemo(
- () => [
+ const tabs = useMemo(() => {
+ const allTabs = [
{
id: "navs-left-home",
label: "Profile",
@@ -58,13 +62,37 @@ const TenantDetails = ({
),
},
- ],
- [data, activeTenantId]
- );
- if (!activeTenantId) return
No tenant selected.
;
- if (isLoading) return
;
- if (isError) return
{error?.message}
;
+ ];
+ return ManageTenant && ModifyTenant
+ ? allTabs
+ : [allTabs[0], allTabs[allTabs.length - 1]];
+ }, [data, activeTenantId, ManageTenant, ModifyTenant]);
+ if (!activeTenantId) return
No tenant selected.
;
+ if (isLoading)
+ return (
+
+
+
+ );
+ if (isError)
+ return (
+
+ {error.status === 403 ? (
+
+
+
+ Access Denied: You don't have permission to perform this action!
+
+
+ ) : (
+
+ )}
+
+ );
const Shell = ({ children }) =>
wrapInContainer ? (