if user don't have new app_roles redirect to login
- fix app preview
This commit is contained in:
parent
79ec69a8f2
commit
f0439dba40
3 changed files with 9 additions and 4 deletions
|
@ -10,7 +10,9 @@ import { LoginCallback } from './modules/login/LoginCallback';
|
||||||
|
|
||||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
||||||
function App() {
|
function App() {
|
||||||
const { authToken } = useAuth();
|
const { authToken, currentUser } = useAuth();
|
||||||
|
|
||||||
|
const redirectToLogin = !authToken || !currentUser?.app_roles;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
|
@ -26,7 +28,7 @@ function App() {
|
||||||
</Helmet>
|
</Helmet>
|
||||||
|
|
||||||
<div className="app bg-gray-50 min-h-screen flex flex-col">
|
<div className="app bg-gray-50 min-h-screen flex flex-col">
|
||||||
{!authToken ? (
|
{redirectToLogin ? (
|
||||||
<Routes>
|
<Routes>
|
||||||
<Route path="/login" element={<Login />} />
|
<Route path="/login" element={<Login />} />
|
||||||
<Route path="/login-callback" element={<LoginCallback />} />
|
<Route path="/login-callback" element={<LoginCallback />} />
|
||||||
|
|
|
@ -12,7 +12,7 @@ export const appAccessList = [
|
||||||
label: 'Wordpress',
|
label: 'Wordpress',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'next-cloud',
|
name: 'nextcloud',
|
||||||
image: '/assets/nextcloud.svg',
|
image: '/assets/nextcloud.svg',
|
||||||
label: 'NextCloud',
|
label: 'NextCloud',
|
||||||
},
|
},
|
||||||
|
@ -37,7 +37,7 @@ const initialAppRoles = [
|
||||||
role: UserRole.User,
|
role: UserRole.User,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'next-cloud',
|
name: 'nextcloud',
|
||||||
role: UserRole.User,
|
role: UserRole.User,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,6 +12,9 @@ export const getCurrentUser = (state: State) => state.auth.userInfo;
|
||||||
export const getIsAdmin = (state: State) => {
|
export const getIsAdmin = (state: State) => {
|
||||||
// check since old users wont have this
|
// check since old users wont have this
|
||||||
if (state.auth.userInfo) {
|
if (state.auth.userInfo) {
|
||||||
|
if (!state.auth.userInfo.app_roles) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
const isAdmin = state.auth.userInfo.app_roles.find(
|
const isAdmin = state.auth.userInfo.app_roles.find(
|
||||||
(role) => role.name === 'dashboard' && role.role === UserRole.Admin,
|
(role) => role.name === 'dashboard' && role.role === UserRole.Admin,
|
||||||
);
|
);
|
||||||
|
|
Loading…
Reference in a new issue