From 3b688ca543a36b7db554611756fbdbdb8abea742 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Minelli?= <michael@minelli.me> Date: Mon, 19 Jun 2023 11:53:01 +0200 Subject: [PATCH] Session => bug fix: stop to show false informations about permissions --- NodeApp/src/managers/SessionManager.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/NodeApp/src/managers/SessionManager.ts b/NodeApp/src/managers/SessionManager.ts index 6d81a64..4d533c0 100644 --- a/NodeApp/src/managers/SessionManager.ts +++ b/NodeApp/src/managers/SessionManager.ts @@ -52,6 +52,8 @@ class SessionManager { async login(user: string, password: string) { const spinner: ora.Ora = ora('Logging in').start(); try { + this.profile = new User(); + const response = await axios.post(HttpManager.LOGIN_URL, { user : user, password: password @@ -82,13 +84,13 @@ class SessionManager { } checkPermissions(verbose: boolean = true, ...checkPermissions: Array<string>): Permissions { - function hasPermission(permissionPredicate: () => boolean, verboseText: string): boolean { + const hasPermission = (permissionPredicate: () => boolean, verboseText: string): boolean => { const spinner: ora.Ora = ora({ text : verboseText, - indent: 8 + indent: 4 }); - let isAllowed: boolean = permissionPredicate(); + let isAllowed: boolean = this.profile.id !== -1 && permissionPredicate(); if ( verbose ) { spinner.start(); @@ -96,7 +98,7 @@ class SessionManager { } return isAllowed; - } + }; return { teachingStaff: checkPermissions.length == 0 || checkPermissions.includes('teachingStaff') ? hasPermission(() => this.profile.isTeachingStaff, 'Teaching staff permissions') : false, -- GitLab