From fad56bea19dda8d8d69e28d9c9c269e820c48670 Mon Sep 17 00:00:00 2001 From: Valentin Mihai Date: Tue, 20 Feb 2024 19:03:56 +0200 Subject: [PATCH] RED-7874 - added back auth-error component --- apps/red-ui/src/app/app-routing.module.ts | 6 ++++++ apps/red-ui/src/app/app.module.ts | 2 ++ .../auth-error/auth-error.component.html | 19 +++++++++++++++++++ .../auth-error/auth-error.component.scss | 3 +++ .../auth-error/auth-error.component.ts | 17 +++++++++++++++++ apps/red-ui/src/assets/i18n/redact/de.json | 7 +++++++ apps/red-ui/src/assets/i18n/redact/en.json | 7 +++++++ apps/red-ui/src/assets/i18n/scm/de.json | 7 +++++++ apps/red-ui/src/assets/i18n/scm/en.json | 7 +++++++ 9 files changed, 75 insertions(+) create mode 100644 apps/red-ui/src/app/components/auth-error/auth-error.component.html create mode 100644 apps/red-ui/src/app/components/auth-error/auth-error.component.scss create mode 100644 apps/red-ui/src/app/components/auth-error/auth-error.component.ts diff --git a/apps/red-ui/src/app/app-routing.module.ts b/apps/red-ui/src/app/app-routing.module.ts index f7006e19f..82e164ea3 100644 --- a/apps/red-ui/src/app/app-routing.module.ts +++ b/apps/red-ui/src/app/app-routing.module.ts @@ -22,6 +22,7 @@ import { Roles } from '@users/roles'; import { mainGuard } from '@utils/main.guard'; import { webViewerLoadedGuard } from './modules/pdf-viewer/services/webviewer-loaded.guard'; import { ACTIVE_DOSSIERS_SERVICE } from './tokens'; +import { AuthErrorComponent } from '@components/auth-error/auth-error.component'; const dossierTemplateIdRoutes: IqserRoutes = [ { @@ -209,6 +210,11 @@ const routes: IqserRoutes = [ component: BaseScreenComponent, children: mainRoutes, }, + { + path: 'auth-error', + component: AuthErrorComponent, + canActivate: [doesNotHaveAnyRole()], + }, { path: '**', redirectTo: 'main', diff --git a/apps/red-ui/src/app/app.module.ts b/apps/red-ui/src/app/app.module.ts index 80b09e331..90d3d1daa 100644 --- a/apps/red-ui/src/app/app.module.ts +++ b/apps/red-ui/src/app/app.module.ts @@ -68,11 +68,13 @@ import { AppRoutingModule } from './app-routing.module'; import { AppComponent } from './app.component'; import { PdfViewerModule } from './modules/pdf-viewer/pdf-viewer.module'; import { ACTIVE_DOSSIERS_SERVICE, ARCHIVED_DOSSIERS_SERVICE } from './tokens'; +import { AuthErrorComponent } from '@components/auth-error/auth-error.component'; export const appModuleFactory = (config: AppConfig) => { @NgModule({ declarations: [ AppComponent, + AuthErrorComponent, NotificationsComponent, SpotlightSearchComponent, BreadcrumbsComponent, diff --git a/apps/red-ui/src/app/components/auth-error/auth-error.component.html b/apps/red-ui/src/app/components/auth-error/auth-error.component.html new file mode 100644 index 000000000..83eb55942 --- /dev/null +++ b/apps/red-ui/src/app/components/auth-error/auth-error.component.html @@ -0,0 +1,19 @@ +
+

+

+

+

+ +
diff --git a/apps/red-ui/src/app/components/auth-error/auth-error.component.scss b/apps/red-ui/src/app/components/auth-error/auth-error.component.scss new file mode 100644 index 000000000..427b131fa --- /dev/null +++ b/apps/red-ui/src/app/components/auth-error/auth-error.component.scss @@ -0,0 +1,3 @@ +section { + padding: 24px; +} diff --git a/apps/red-ui/src/app/components/auth-error/auth-error.component.ts b/apps/red-ui/src/app/components/auth-error/auth-error.component.ts new file mode 100644 index 000000000..5445ec196 --- /dev/null +++ b/apps/red-ui/src/app/components/auth-error/auth-error.component.ts @@ -0,0 +1,17 @@ +import { Component } from '@angular/core'; +import { UserService } from '@users/user.service'; +import { getConfig } from '@iqser/common-ui'; +import { AppConfig } from '@red/domain'; + +@Component({ + selector: 'redaction-auth-error', + templateUrl: './auth-error.component.html', + styleUrls: ['./auth-error.component.scss'], +}) +export class AuthErrorComponent { + readonly #config = getConfig(); + readonly adminName = this.#config.ADMIN_CONTACT_NAME; + readonly adminUrl = this.#config.ADMIN_CONTACT_URL; + + constructor(readonly userService: UserService) {} +} diff --git a/apps/red-ui/src/assets/i18n/redact/de.json b/apps/red-ui/src/assets/i18n/redact/de.json index dd9480b13..deb95a7fa 100644 --- a/apps/red-ui/src/assets/i18n/redact/de.json +++ b/apps/red-ui/src/assets/i18n/redact/de.json @@ -458,6 +458,13 @@ }, "to": "bis" }, + "auth-error": { + "heading": "Ihr Benutzer verfügt nicht über die erforderlichen RED-*-Rollen, um auf diese Applikation zugreifen zu können. Bitte kontaktieren Sie Ihren Admin, um den Zugang anzufordern!", + "heading-with-link": "Ihr Benutzer verfügt nicht über die erforderlichen RED-*-Rollen, um auf diese Applikation zugreifen zu können. Bitte kontaktieren Sie Ihren Admin, um den Zugang anzufordern!", + "heading-with-name": "Ihr Benutzer verfügt nicht über die erforderlichen RED-*-Rollen, um auf diese Applikation zugreifen zu können. Bitte kontaktieren Sie {adminName}, um den Zugang anzufordern!", + "heading-with-name-and-link": "Ihr Benutzer verfügt nicht über die erforderlichen RED-*-Rollen, um auf diese Applikation zugreifen zu können. Bitte kontaktieren Sie {adminName}, um den Zugang anzufordern!", + "logout": "Ausloggen" + }, "change-legal-basis-dialog": { "actions": { "cancel": "Abbrechen", diff --git a/apps/red-ui/src/assets/i18n/redact/en.json b/apps/red-ui/src/assets/i18n/redact/en.json index 347617180..0f54c8ea4 100644 --- a/apps/red-ui/src/assets/i18n/redact/en.json +++ b/apps/red-ui/src/assets/i18n/redact/en.json @@ -458,6 +458,13 @@ }, "to": "to" }, + "auth-error": { + "heading": "Your user is successfully logged in but has no role assigned yet. Please contact your RedactManager administrator to assign appropriate roles.", + "heading-with-link": "Your user is successfully logged in but has no role assigned yet. Please contact your RedactManager administrator to assign appropriate roles!", + "heading-with-name": "Your user is successfully logged in but has no role assigned yet. Please contact {adminName} to assign appropriate roles.", + "heading-with-name-and-link": "Your user is successfully logged in but has no role assigned yet. Please contact {adminName} to assign appropriate roles.", + "logout": "Logout" + }, "change-legal-basis-dialog": { "actions": { "cancel": "Cancel", diff --git a/apps/red-ui/src/assets/i18n/scm/de.json b/apps/red-ui/src/assets/i18n/scm/de.json index 5272784ff..4612f76d0 100644 --- a/apps/red-ui/src/assets/i18n/scm/de.json +++ b/apps/red-ui/src/assets/i18n/scm/de.json @@ -458,6 +458,13 @@ }, "to": "bis" }, + "auth-error": { + "heading": "Ihr Benutzer verfügt nicht über die erforderlichen RED-*-Rollen, um auf diese Applikation zugreifen zu können. Bitte kontaktieren Sie Ihren Admin, um den Zugang anzufordern!", + "heading-with-link": "Ihr Benutzer verfügt nicht über die erforderlichen RED-*-Rollen, um auf diese Applikation zugreifen zu können. Bitte kontaktieren Sie Ihren Admin, um den Zugang anzufordern!", + "heading-with-name": "Ihr Benutzer verfügt nicht über die erforderlichen RED-*-Rollen, um auf diese Applikation zugreifen zu können. Bitte kontaktieren Sie {adminName}, um den Zugang anzufordern!", + "heading-with-name-and-link": "Ihr Benutzer verfügt nicht über die erforderlichen RED-*-Rollen, um auf diese Applikation zugreifen zu können. Bitte kontaktieren Sie {adminName}, um den Zugang anzufordern!", + "logout": "Ausloggen" + }, "change-legal-basis-dialog": { "actions": { "cancel": "Abbrechen", diff --git a/apps/red-ui/src/assets/i18n/scm/en.json b/apps/red-ui/src/assets/i18n/scm/en.json index eaac3bae8..021e9fece 100644 --- a/apps/red-ui/src/assets/i18n/scm/en.json +++ b/apps/red-ui/src/assets/i18n/scm/en.json @@ -458,6 +458,13 @@ }, "to": "to" }, + "auth-error": { + "heading": "Your user is successfully logged in but has no role assigned yet. Please contact your RedactManager administrator to assign appropriate roles.", + "heading-with-link": "Your user is successfully logged in but has no role assigned yet. Please contact your RedactManager administrator to assign appropriate roles!", + "heading-with-name": "Your user is successfully logged in but has no role assigned yet. Please contact {adminName} to assign appropriate roles.", + "heading-with-name-and-link": "Your user is successfully logged in but has no role assigned yet. Please contact {adminName} to assign appropriate roles.", + "logout": "Logout" + }, "change-legal-basis-dialog": { "actions": { "cancel": "Cancel",