[ARVADOS-WORKBENCH2] updated: 1.2.1-1063-g3391693

Git user git at public.curoverse.com
Mon Dec 3 06:07:49 EST 2018


Summary of changes:
 src/services/auth-service/auth-service.ts        |  2 +-
 src/store/keep-services/keep-services-actions.ts | 24 ++++++++++++++----------
 src/store/keep-services/keep-services-reducer.ts |  1 -
 3 files changed, 15 insertions(+), 12 deletions(-)

       via  33916938dc164fa0cca9e8abb693b3048fc931ab (commit)
      from  17d467bf2fecc68a6d66beea293cf23a38f95a53 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit 33916938dc164fa0cca9e8abb693b3048fc931ab
Author: Janicki Artur <artur.janicki at contractors.roche.com>
Date:   Mon Dec 3 12:06:06 2018 +0100

    fix issue with isAdmin for user and modify keep services actions
    
    Feature #14503_keep_services_panel
    
    Arvados-DCO-1.1-Signed-off-by: Janicki Artur <artur.janicki at contractors.roche.com>

diff --git a/src/services/auth-service/auth-service.ts b/src/services/auth-service/auth-service.ts
index edc6e24..69e3a79 100644
--- a/src/services/auth-service/auth-service.ts
+++ b/src/services/auth-service/auth-service.ts
@@ -52,7 +52,7 @@ export class AuthService {
     }
 
     public getIsAdmin(): boolean {
-        return !!localStorage.getItem(USER_IS_ADMIN);
+        return localStorage.getItem(USER_IS_ADMIN) === 'true';
     }
 
     public getUser(): User | undefined {
diff --git a/src/store/keep-services/keep-services-actions.ts b/src/store/keep-services/keep-services-actions.ts
index bf7c45e..1de6802 100644
--- a/src/store/keep-services/keep-services-actions.ts
+++ b/src/store/keep-services/keep-services-actions.ts
@@ -10,11 +10,11 @@ import { ServiceRepository } from "~/services/services";
 import { KeepServiceResource } from '~/models/keep-services';
 import { dialogActions } from '~/store/dialog/dialog-actions';
 import { snackbarActions } from '~/store/snackbar/snackbar-actions';
+import { navigateToRootProject } from '~/store/navigation/navigation-action';
 
 export const keepServicesActions = unionize({
     SET_KEEP_SERVICES: ofType<KeepServiceResource[]>(),
-    REMOVE_KEEP_SERVICE: ofType<string>(),
-    RESET_KEEP_SERVICES: ofType<{}>()
+    REMOVE_KEEP_SERVICE: ofType<string>()
 });
 
 export type KeepServicesActions = UnionOf<typeof keepServicesActions>;
@@ -22,15 +22,20 @@ export type KeepServicesActions = UnionOf<typeof keepServicesActions>;
 export const KEEP_SERVICE_REMOVE_DIALOG = 'keepServiceRemoveDialog';
 export const KEEP_SERVICE_ATTRIBUTES_DIALOG = 'keepServiceAttributesDialog';
 
-// ToDo: access denied for loading keepService and reset data and redirect
 export const loadKeepServicesPanel = () =>
     async (dispatch: Dispatch<any>, getState: () => RootState, services: ServiceRepository) => {
-        try {
-            dispatch(setBreadcrumbs([{ label: 'Keep Services' }]));
-            const response = await services.keepService.list();
-            dispatch(keepServicesActions.SET_KEEP_SERVICES(response.items));
-        } catch (e) {
-            return;
+        const user = getState().auth.user;
+        if(user && user.isAdmin) {
+            try {
+                dispatch(setBreadcrumbs([{ label: 'Keep Services' }]));
+                const response = await services.keepService.list();
+                dispatch(keepServicesActions.SET_KEEP_SERVICES(response.items));
+            } catch (e) {
+                return;
+            }
+        } else {
+            dispatch(navigateToRootProject);
+            dispatch(snackbarActions.OPEN_SNACKBAR({ message: "You don't have permissions to view this page", hideDuration: 2000 }));
         }
     };
 
@@ -53,7 +58,6 @@ export const openKeepServiceRemoveDialog = (uuid: string) =>
         }));
     };
 
-// ToDo: access denied for removing keepService and reset data and redirect
 export const removeKeepService = (uuid: string) =>
     async (dispatch: Dispatch, getState: () => RootState, services: ServiceRepository) => {
         dispatch(snackbarActions.OPEN_SNACKBAR({ message: 'Removing ...' }));
diff --git a/src/store/keep-services/keep-services-reducer.ts b/src/store/keep-services/keep-services-reducer.ts
index 53ef678..043c010 100644
--- a/src/store/keep-services/keep-services-reducer.ts
+++ b/src/store/keep-services/keep-services-reducer.ts
@@ -13,6 +13,5 @@ export const keepServicesReducer = (state: KeepSericesState = initialState, acti
     keepServicesActions.match(action, {
         SET_KEEP_SERVICES: items => items,
         REMOVE_KEEP_SERVICE: (uuid: string) => state.filter((keepService) => keepService.uuid !== uuid),
-        RESET_KEEP_SERVICES: () => [],
         default: () => state
     });
\ No newline at end of file

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list