From a683dbb05a418cbb0e52da40a87db74a9ef02110 Mon Sep 17 00:00:00 2001 From: Alex ORLUC <alex.orluc@maarch.org> Date: Tue, 28 Apr 2020 12:51:06 +0200 Subject: [PATCH] FEAT #13670 TIME 0:30 fix bypass logout password route + fix var lang --- src/frontend/lang/lang-en.ts | 2 +- src/frontend/lang/lang-fr.ts | 6 +++--- src/frontend/lang/lang-nl.ts | 2 +- .../service/auth-interceptor.service.ts | 20 ++++++++++--------- 4 files changed, 16 insertions(+), 14 deletions(-) diff --git a/src/frontend/lang/lang-en.ts b/src/frontend/lang/lang-en.ts index a7c7725eb36..7d504bf5f1d 100755 --- a/src/frontend/lang/lang-en.ts +++ b/src/frontend/lang/lang-en.ts @@ -1674,7 +1674,7 @@ export const LANG_EN = { "accountLocked": "Too many connections attemps. Retry in", "modelUsedByResources": "This model is used by resources, you can't delete it.", "mustChangePassword": "Please, you must change your password.", - "linkedResources": "Linked mails", + "linkedResources": "Main document (Linked mails)", "linkedResourcesAttachments": "Attachments (linked mails)", "accessNotFound": "Access not found", "moreOneCustom": "This url is not an available instance of this application, please verify your address.", diff --git a/src/frontend/lang/lang-fr.ts b/src/frontend/lang/lang-fr.ts index a325261f955..08c4bdd7649 100755 --- a/src/frontend/lang/lang-fr.ts +++ b/src/frontend/lang/lang-fr.ts @@ -1674,7 +1674,7 @@ export const LANG_FR = { "accountLocked": "Nombre de tentatives de connexion dépassée. Réessayez dans", "modelUsedByResources": "Le modèle est utilisé par des courriers, vous ne pouvez pas le supprimer.", "mustChangePassword": "Vous êtes invités à changer votre mot de passe.", - "linkedResources": "Courriers liés", + "linkedResources": "Document principal (Courriers liés)", "linkedResourcesAttachments": "Pièces jointes (courriers liés)", "accessNotFound": "Accès introuvable", "moreOneCustom": "Cette url ne correspond à aucune instance configurée, veuillez vérifier l'adresse.", @@ -1691,7 +1691,7 @@ export const LANG_FR = { "rootFolder": "Dépôt racine", "chooseEntityAssociationAccount": "Attribuer le compte au(x) service(s)", "alfrescoAPI": "Adresse de l'API Alfresco", - "accountOk": "Le compte éxiste", - "accountFailed": "Le compte n'éxiste pas", + "accountOk": "Le compte existe", + "accountFailed": "Le compte n'existe pas", "test": "Tester", }; diff --git a/src/frontend/lang/lang-nl.ts b/src/frontend/lang/lang-nl.ts index fdd02a1537b..ac152e7b186 100755 --- a/src/frontend/lang/lang-nl.ts +++ b/src/frontend/lang/lang-nl.ts @@ -1658,7 +1658,7 @@ export const LANG_NL = { "accountLocked": "Too many connections attemps. Retry in", //_TO_TRANSLATE "modelUsedByResources": "This model is used by resources, you can't delete it.", //_TO_TRANSLATE "mustChangePassword": "Please, you must change your password.", //_TO_TRANSLATE - "linkedResources": "Linked mails", //_TO_TRANSLATE + "linkedResources": "Main document (Linked mails)", //_TO_TRANSLATE "linkedResourcesAttachments": "Attachments (linked mails)", //_TO_TRANSLATE "accessNotFound": "Access not found", //_TO_TRANSLATE "moreOneCustom": "This url is not an available instance of this application, please verify your address.", //_TO_TRANSLATE diff --git a/src/frontend/service/auth-interceptor.service.ts b/src/frontend/service/auth-interceptor.service.ts index f611c2cb58b..8c137d3b6bf 100644 --- a/src/frontend/service/auth-interceptor.service.ts +++ b/src/frontend/service/auth-interceptor.service.ts @@ -12,7 +12,7 @@ import { FunctionsService } from './functions.service'; @Injectable() export class AuthInterceptor implements HttpInterceptor { lang: any = LANG; - excludeUrls: any[] = [ + byPassToken: any[] = [ { route: '../rest/authenticate', method : ['POST'] @@ -25,15 +25,17 @@ export class AuthInterceptor implements HttpInterceptor { route: '../rest/authenticationInformation', method : ['GET'] }, - { - route: '../rest/password', - method : ['GET'] - }, { route: '../rest/passwordRules', method : ['GET'] } ]; + byPassHandleErrors: any[] = [ + { + route: '/password', + method : ['PUT'] + } + ]; constructor( public http: HttpClient, private router: Router, @@ -60,8 +62,7 @@ export class AuthInterceptor implements HttpInterceptor { intercept(request: HttpRequest<any>, next: HttpHandler): Observable<any> { - // We don't want to intercept some routes - if ((this.excludeUrls.filter(url => url.route === request.url && url.method.indexOf(request.method) > -1).length > 0)) { + if (this.byPassToken.filter(url => request.url.indexOf(url.route) > -1 && url.method.indexOf(request.method) > -1).length > 0) { return next.handle(request); } else { // Add current token in header request @@ -76,7 +77,9 @@ export class AuthInterceptor implements HttpInterceptor { ),*/ catchError(error => { // Disconnect user if bad token process - if (error.status === 401) { + if (this.byPassHandleErrors.filter(url => request.url.indexOf(url.route) > -1 && url.method.indexOf(request.method) > -1).length > 0) { + return next.handle(request); + } else if (error.status === 401) { this.functionsService.debug('Auth error', request.url); return this.http.get('../rest/authenticate/token', { params: { @@ -103,7 +106,6 @@ export class AuthInterceptor implements HttpInterceptor { } }) ); - } ), catchError(err => { -- GitLab