From 3ce886b6654eccaa8a5b8c18fcb0d98052c618d3 Mon Sep 17 00:00:00 2001 From: James Date: Thu, 9 Jul 2020 19:56:38 -0400 Subject: [PATCH] implements permissions within Dashboard view --- .../components/views/Dashboard/Default.js | 75 +++++++++++-------- 1 file changed, 43 insertions(+), 32 deletions(-) diff --git a/src/client/components/views/Dashboard/Default.js b/src/client/components/views/Dashboard/Default.js index 5d070b42f9..50bd6b44f0 100644 --- a/src/client/components/views/Dashboard/Default.js +++ b/src/client/components/views/Dashboard/Default.js @@ -1,6 +1,7 @@ -import React, { useEffect } from 'react'; +import React, { useEffect, useState } from 'react'; import { useHistory } from 'react-router-dom'; import config from 'payload/config'; +import { useUser } from '../../data/User'; import { useStepNav } from '../../elements/StepNav'; import Eyebrow from '../../elements/Eyebrow'; import Card from '../../elements/Card'; @@ -19,8 +20,16 @@ const { const baseClass = 'dashboard'; const Dashboard = () => { + const [filteredGlobals, setFilteredGlobals] = useState([]); const { setStepNav } = useStepNav(); const { push } = useHistory(); + const { permissions } = useUser(); + + useEffect(() => { + setFilteredGlobals( + globals.filter((global) => permissions?.[global.slug]?.read?.permission), + ); + }, [permissions]); useEffect(() => { setStepNav([]); @@ -33,42 +42,44 @@ const Dashboard = () => {

Collections

- {(globals && globals.length > 0) && ( - <> + {(filteredGlobals.length > 0) && ( +

Globals

- +
)}