Merge branch 'RED-9987' into 'master'
RED-9987: added sendSetPasswordMail flag in add user dialog. See merge request redactmanager/red-ui!560
This commit is contained in:
commit
1b3dbfc98d
@ -1,6 +1,6 @@
|
||||
<div
|
||||
[translateParams]="{
|
||||
type: user ? 'edit' : 'create'
|
||||
type: !!user() ? 'edit' : 'create',
|
||||
}"
|
||||
[translate]="'add-edit-user.title'"
|
||||
class="dialog-header heading-l"
|
||||
@ -37,9 +37,17 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@if (!user()) {
|
||||
<div class="iqser-input-group">
|
||||
<label [translate]="'add-edit-user.form.account-setup'"></label>
|
||||
<mat-checkbox formControlName="sendSetPasswordMail">{{ 'add-edit-user.form.send-email' | translate }}</mat-checkbox>
|
||||
<span [translate]="'add-edit-user.form.send-email-explanation'" class="hint"></span>
|
||||
</div>
|
||||
}
|
||||
|
||||
<div
|
||||
(click)="toggleResetPassword.emit()"
|
||||
*ngIf="!!user"
|
||||
*ngIf="!!user()"
|
||||
[translate]="'add-edit-user.form.reset-password'"
|
||||
class="mt-24 fit-content link-action"
|
||||
></div>
|
||||
@ -48,14 +56,14 @@
|
||||
<div class="dialog-actions">
|
||||
<iqser-icon-button
|
||||
[disabled]="form.invalid || !changed"
|
||||
[label]="(user ? 'add-edit-user.actions.save-changes' : 'add-edit-user.actions.save') | translate"
|
||||
[label]="(user() ? 'add-edit-user.actions.save-changes' : 'add-edit-user.actions.save') | translate"
|
||||
[submit]="true"
|
||||
[type]="iconButtonTypes.primary"
|
||||
></iqser-icon-button>
|
||||
|
||||
<iqser-icon-button
|
||||
(action)="delete()"
|
||||
*ngIf="user && !disabledDelete(user)"
|
||||
*ngIf="user() && !disabledDelete(user())"
|
||||
[label]="'add-edit-user.actions.delete' | translate"
|
||||
[type]="iconButtonTypes.dark"
|
||||
icon="iqser:trash"
|
||||
|
||||
@ -5,3 +5,7 @@
|
||||
margin-top: 8px;
|
||||
width: 300px;
|
||||
}
|
||||
|
||||
.hint {
|
||||
margin-left: 23px;
|
||||
}
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { Component, EventEmitter, Input, OnChanges, Output } from '@angular/core';
|
||||
import { Component, input, OnInit, output } from '@angular/core';
|
||||
import { ReactiveFormsModule, UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
|
||||
import { AdminDialogService } from '../../../services/admin-dialog.service';
|
||||
import { BaseFormComponent, IconButtonComponent, LoadingService, Toaster } from '@iqser/common-ui';
|
||||
@ -20,15 +20,15 @@ import { NgForOf, NgIf } from '@angular/common';
|
||||
standalone: true,
|
||||
imports: [TranslateModule, ReactiveFormsModule, MatCheckbox, NgForOf, IconButtonComponent, NgIf],
|
||||
})
|
||||
export class UserDetailsComponent extends BaseFormComponent implements OnChanges {
|
||||
/** e.g. a RED_ADMIN is automatically a RED_USER_ADMIN => can't disable RED_USER_ADMIN as long as RED_ADMIN is checked */
|
||||
private readonly _ROLE_REQUIREMENTS = { RED_MANAGER: 'RED_USER', RED_ADMIN: 'RED_USER_ADMIN' };
|
||||
@Input() user: User;
|
||||
@Output() readonly toggleResetPassword = new EventEmitter();
|
||||
@Output() readonly closeDialog = new EventEmitter();
|
||||
@Output() readonly cancel = new EventEmitter();
|
||||
export class UserDetailsComponent extends BaseFormComponent implements OnInit {
|
||||
user = input<User>();
|
||||
readonly toggleResetPassword = output();
|
||||
readonly closeDialog = output<boolean>();
|
||||
readonly cancel = output();
|
||||
readonly ROLES = ['RED_USER', 'RED_MANAGER', 'RED_USER_ADMIN', 'RED_ADMIN'];
|
||||
readonly translations = rolesTranslations;
|
||||
/** e.g. a RED_ADMIN is automatically a RED_USER_ADMIN => can't disable RED_USER_ADMIN as long as RED_ADMIN is checked */
|
||||
readonly #ROLE_REQUIREMENTS = { RED_MANAGER: 'RED_USER', RED_ADMIN: 'RED_USER_ADMIN' };
|
||||
|
||||
constructor(
|
||||
private readonly _formBuilder: UntypedFormBuilder,
|
||||
@ -49,13 +49,17 @@ export class UserDetailsComponent extends BaseFormComponent implements OnChanges
|
||||
}, []);
|
||||
}
|
||||
|
||||
private get _rolesControls(): any {
|
||||
get sendSetPasswordMail() {
|
||||
return !this.form.controls.sendSetPasswordMail.value;
|
||||
}
|
||||
|
||||
get #rolesControls() {
|
||||
return this.ROLES.reduce(
|
||||
(prev, role) => ({
|
||||
...prev,
|
||||
[role]: [
|
||||
{
|
||||
value: this.user && this.user.has(role),
|
||||
value: this.user() && this.user().has(role),
|
||||
disabled: this.shouldBeDisabled(role),
|
||||
},
|
||||
],
|
||||
@ -64,20 +68,20 @@ export class UserDetailsComponent extends BaseFormComponent implements OnChanges
|
||||
);
|
||||
}
|
||||
|
||||
ngOnChanges() {
|
||||
this.form = this._getForm();
|
||||
ngOnInit() {
|
||||
this.form = this.#getForm();
|
||||
this.initialFormValue = this.form.getRawValue();
|
||||
}
|
||||
|
||||
shouldBeDisabled(role: string): boolean {
|
||||
const isCurrentAdminUser = this.user && this.user.isAdmin && this.user.id === this._userService.currentUser.id;
|
||||
const isCurrentAdminUser = this.user() && this.user().isAdmin && this.user().id === this._userService.currentUser.id;
|
||||
return (
|
||||
// RED_ADMIN can't remove own RED_ADMIN role
|
||||
(role === 'RED_ADMIN' && isCurrentAdminUser) ||
|
||||
// only RED_ADMINs can edit RED_ADMIN roles
|
||||
(role === 'RED_ADMIN' && !this._userService.currentUser.isAdmin) ||
|
||||
Object.keys(this._ROLE_REQUIREMENTS).reduce(
|
||||
(value, key) => value || (role === this._ROLE_REQUIREMENTS[key] && this.user?.roles.includes(key)),
|
||||
Object.keys(this.#ROLE_REQUIREMENTS).reduce(
|
||||
(value, key) => value || (role === this.#ROLE_REQUIREMENTS[key] && this.user()?.roles.includes(key)),
|
||||
false,
|
||||
)
|
||||
);
|
||||
@ -85,9 +89,13 @@ export class UserDetailsComponent extends BaseFormComponent implements OnChanges
|
||||
|
||||
async save() {
|
||||
this._loadingService.start();
|
||||
const userData: IProfileUpdateRequest = { ...this.form.getRawValue(), roles: this.activeRoles };
|
||||
const userData: IProfileUpdateRequest = {
|
||||
...this.form.getRawValue(),
|
||||
roles: this.activeRoles,
|
||||
sendSetPasswordMail: this.sendSetPasswordMail,
|
||||
};
|
||||
|
||||
if (!this.user) {
|
||||
if (!this.user()) {
|
||||
await firstValueFrom(this._userService.create(userData))
|
||||
.then(() => {
|
||||
this.closeDialog.emit(true);
|
||||
@ -101,22 +109,22 @@ export class UserDetailsComponent extends BaseFormComponent implements OnChanges
|
||||
this._loadingService.stop();
|
||||
});
|
||||
} else {
|
||||
await firstValueFrom(this._userService.updateProfile(userData, this.user.id));
|
||||
await firstValueFrom(this._userService.updateProfile(userData, this.user().id));
|
||||
this.closeDialog.emit(true);
|
||||
}
|
||||
}
|
||||
|
||||
delete() {
|
||||
this._dialogService.deleteUsers([this.user.id], () => this.closeDialog.emit(true));
|
||||
this._dialogService.deleteUsers([this.user().id], () => this.closeDialog.emit(true));
|
||||
}
|
||||
|
||||
setRolesRequirements(checked: boolean, role: string): void {
|
||||
if (Object.keys(this._ROLE_REQUIREMENTS).includes(role)) {
|
||||
if (Object.keys(this.#ROLE_REQUIREMENTS).includes(role)) {
|
||||
if (checked) {
|
||||
this.form.patchValue({ [this._ROLE_REQUIREMENTS[role]]: true });
|
||||
this.form.controls[this._ROLE_REQUIREMENTS[role]].disable();
|
||||
this.form.patchValue({ [this.#ROLE_REQUIREMENTS[role]]: true });
|
||||
this.form.controls[this.#ROLE_REQUIREMENTS[role]].disable();
|
||||
} else {
|
||||
this.form.controls[this._ROLE_REQUIREMENTS[role]].enable();
|
||||
this.form.controls[this.#ROLE_REQUIREMENTS[role]].enable();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -127,18 +135,19 @@ export class UserDetailsComponent extends BaseFormComponent implements OnChanges
|
||||
return user.id === this._userService.currentUser.id || (userAdmin && !currentUserAdmin);
|
||||
}
|
||||
|
||||
private _getForm(): UntypedFormGroup {
|
||||
#getForm(): UntypedFormGroup {
|
||||
return this._formBuilder.group({
|
||||
firstName: [this.user?.firstName, Validators.required],
|
||||
lastName: [this.user?.lastName, Validators.required],
|
||||
firstName: [this.user()?.firstName, Validators.required],
|
||||
lastName: [this.user()?.lastName, Validators.required],
|
||||
email: [
|
||||
{
|
||||
value: this.user?.email,
|
||||
disabled: !!this.user?.email,
|
||||
value: this.user()?.email,
|
||||
disabled: !!this.user()?.email,
|
||||
},
|
||||
[Validators.required, Validators.email],
|
||||
],
|
||||
...this._rolesControls,
|
||||
...this.#rolesControls,
|
||||
sendSetPasswordMail: [false],
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@ -207,11 +207,14 @@
|
||||
"generic": "Speichern des Benutzers fehlgeschlagen."
|
||||
},
|
||||
"form": {
|
||||
"account-setup": "User account setup",
|
||||
"email": "E-Mail",
|
||||
"first-name": "Vorname",
|
||||
"last-name": "Nachname",
|
||||
"reset-password": "Passwort zurücksetzen",
|
||||
"role": "Rolle"
|
||||
"role": "Rolle",
|
||||
"send-email": "Do not send email requesting the user to set a password",
|
||||
"send-email-explanation": "Select this option if you use SSO. Please note that you will need to inform the user directly."
|
||||
},
|
||||
"title": "{type, select, edit{Benutzer bearbeiten} create{Neuen Benutzer erstellen} other{}}"
|
||||
},
|
||||
@ -273,9 +276,6 @@
|
||||
"watermarks": "Wasserzeichen"
|
||||
},
|
||||
"analysis-disabled": "",
|
||||
"annotation": {
|
||||
"pending": "(Analyse steht aus)"
|
||||
},
|
||||
"annotation-actions": {
|
||||
"accept-recommendation": {
|
||||
"label": "Empfehlung annehmen"
|
||||
@ -331,14 +331,14 @@
|
||||
"error": "Rekategorisierung des Bilds fehlgeschlagen: {error}",
|
||||
"success": "Bild wurde einer neuen Kategorie zugeordnet."
|
||||
},
|
||||
"remove": {
|
||||
"error": "Entfernen der Schwärzung fehlgeschlagen: {error}",
|
||||
"success": "Schwärzung wurde entfernt"
|
||||
},
|
||||
"remove-hint": {
|
||||
"error": "Entfernen des Hinweises fehlgeschlagen: {error}",
|
||||
"success": "Hinweis wurde entfernt"
|
||||
},
|
||||
"remove": {
|
||||
"error": "Entfernen der Schwärzung fehlgeschlagen: {error}",
|
||||
"success": "Schwärzung wurde entfernt"
|
||||
},
|
||||
"undo": {
|
||||
"error": "Die Aktion konnte nicht rückgängig gemacht werden. Fehler: {error}",
|
||||
"success": "Rücksetzung erfolgreich"
|
||||
@ -351,15 +351,15 @@
|
||||
"remove-highlights": {
|
||||
"label": "Ausgewählte Markierungen entfernen"
|
||||
},
|
||||
"resize": {
|
||||
"label": "Größe ändern"
|
||||
},
|
||||
"resize-accept": {
|
||||
"label": "Neue Größe speichern"
|
||||
},
|
||||
"resize-cancel": {
|
||||
"label": "Größenänderung abbrechen"
|
||||
},
|
||||
"resize": {
|
||||
"label": "Größe ändern"
|
||||
},
|
||||
"see-references": {
|
||||
"label": "Referenzen anzeigen"
|
||||
},
|
||||
@ -393,6 +393,9 @@
|
||||
"skipped": "Ignorierte Schwärzung",
|
||||
"text-highlight": "Markierung"
|
||||
},
|
||||
"annotation": {
|
||||
"pending": "(Analyse steht aus)"
|
||||
},
|
||||
"annotations": "Annotationen",
|
||||
"archived-dossiers-listing": {
|
||||
"no-data": {
|
||||
@ -636,18 +639,14 @@
|
||||
"warning": "Warnung: Wiederherstellung des Benutzers nicht möglich."
|
||||
},
|
||||
"confirmation-dialog": {
|
||||
"approve-file": {
|
||||
"question": "Dieses Dokument enthält ungesehene Änderungen, die sich durch die Reanalyse ergeben haben.<br><br>Möchten Sie es trotzdem freigeben?",
|
||||
"title": "Warnung!"
|
||||
},
|
||||
"approve-file-without-analysis": {
|
||||
"confirmationText": "Ohne Analyse freigeben",
|
||||
"denyText": "Abbrechen",
|
||||
"question": "Analyse zur Erkennung neuer Schwärzungen erforderlich.",
|
||||
"title": "Warnung!"
|
||||
},
|
||||
"approve-multiple-files": {
|
||||
"question": "Mindestens eine der ausgewählten Dateien enthält ungesehene Änderungen, die im Zuge einer Reanalyse hinzugefügt wurden.<br><br>Möchen Sie die Dateien wirklich freigeben?",
|
||||
"approve-file": {
|
||||
"question": "Dieses Dokument enthält ungesehene Änderungen, die sich durch die Reanalyse ergeben haben.<br><br>Möchten Sie es trotzdem freigeben?",
|
||||
"title": "Warnung!"
|
||||
},
|
||||
"approve-multiple-files-without-analysis": {
|
||||
@ -656,6 +655,10 @@
|
||||
"question": "Für mindestens eine Datei ist ein Analyselauf zur Erkennung neuer Schwärzungen erforderlich.",
|
||||
"title": "Warnung"
|
||||
},
|
||||
"approve-multiple-files": {
|
||||
"question": "Mindestens eine der ausgewählten Dateien enthält ungesehene Änderungen, die im Zuge einer Reanalyse hinzugefügt wurden.<br><br>Möchen Sie die Dateien wirklich freigeben?",
|
||||
"title": "Warnung!"
|
||||
},
|
||||
"assign-file-to-me": {
|
||||
"question": {
|
||||
"multiple": "Dieses Dokument wird gerade von einer anderen Person geprüft.<br><br>Möchten Sie sich die Datei dennoch zuweisen?",
|
||||
@ -1025,13 +1028,13 @@
|
||||
"recent": "Neu ({hours} h)",
|
||||
"unassigned": "Keinem Bearbeiter zugewiesen"
|
||||
},
|
||||
"reanalyse": {
|
||||
"action": "Datei analysieren"
|
||||
},
|
||||
"reanalyse-dossier": {
|
||||
"error": "Einplanung der Dateien für die Reanalyse fehlgeschlagen. Bitte versuchen Sie es noch einmal.",
|
||||
"success": "Dateien für Reanalyse vorgesehen."
|
||||
},
|
||||
"reanalyse": {
|
||||
"action": "Datei analysieren"
|
||||
},
|
||||
"report-download": "",
|
||||
"start-auto-analysis": "Auto-Analyse aktivieren",
|
||||
"stop-auto-analysis": "Auto-Analyse anhalten",
|
||||
@ -1101,14 +1104,6 @@
|
||||
"total-documents": "Dokumente",
|
||||
"total-people": "<strong>{count}</strong> {count, plural, one{Benutzer} other {Benutzer}}"
|
||||
},
|
||||
"dossier-templates": {
|
||||
"label": "Dossier-Vorlagen",
|
||||
"status": {
|
||||
"active": "Aktiv",
|
||||
"inactive": "Inaktiv",
|
||||
"incomplete": "Unvollständig"
|
||||
}
|
||||
},
|
||||
"dossier-templates-listing": {
|
||||
"action": {
|
||||
"clone": "Vorlage klonen",
|
||||
@ -1143,6 +1138,14 @@
|
||||
"title": "{length} {length, plural, one{Dossier-Vorlage} other{Dossier-Vorlagen}}"
|
||||
}
|
||||
},
|
||||
"dossier-templates": {
|
||||
"label": "Dossier-Vorlagen",
|
||||
"status": {
|
||||
"active": "Aktiv",
|
||||
"inactive": "Inaktiv",
|
||||
"incomplete": "Unvollständig"
|
||||
}
|
||||
},
|
||||
"dossier-watermark-selector": {
|
||||
"heading": "Wasserzeichen auf Dokumenten",
|
||||
"no-watermark": "Kein Wasserzeichen in der Dossier-Vorlage verfügbar:<br>Bitten Sie Ihren Admin, eines zu konfigurieren.",
|
||||
@ -1338,15 +1341,6 @@
|
||||
"title": "{length} {length, plural, one{Wörterbuch} other{Wörterbücher}}"
|
||||
}
|
||||
},
|
||||
"entity": {
|
||||
"info": {
|
||||
"actions": {
|
||||
"revert": "Zurücksetzen",
|
||||
"save": "Änderungen speichern"
|
||||
},
|
||||
"heading": "Entität bearbeiten"
|
||||
}
|
||||
},
|
||||
"entity-rules-screen": {
|
||||
"error": {
|
||||
"generic": "Fehler: Aktualisierung der Entitätsregeln fehlgeschlagen."
|
||||
@ -1360,19 +1354,28 @@
|
||||
"title": "Entitätsregeln-Editor",
|
||||
"warnings-found": "{warnings, plural, one{A warning} other{{warnings} warnings}} in Regeln gefunden"
|
||||
},
|
||||
"entity": {
|
||||
"info": {
|
||||
"actions": {
|
||||
"revert": "Zurücksetzen",
|
||||
"save": "Änderungen speichern"
|
||||
},
|
||||
"heading": "Entität bearbeiten"
|
||||
}
|
||||
},
|
||||
"error": {
|
||||
"deleted-entity": {
|
||||
"dossier": {
|
||||
"action": "Zurück zur Übersicht",
|
||||
"label": "Dieses Dossier wurde gelöscht!"
|
||||
},
|
||||
"file": {
|
||||
"action": "Zurück zum Dossier",
|
||||
"label": "Diese Datei wurde gelöscht!"
|
||||
},
|
||||
"file-dossier": {
|
||||
"action": "Zurück zur Übersicht",
|
||||
"label": "Das Dossier dieser Datei wurde gelöscht!"
|
||||
},
|
||||
"file": {
|
||||
"action": "Zurück zum Dossier",
|
||||
"label": "Diese Datei wurde gelöscht!"
|
||||
}
|
||||
},
|
||||
"file-preview": {
|
||||
@ -1390,12 +1393,6 @@
|
||||
},
|
||||
"exact-date": "{day}. {month} {year} um {hour}:{minute} Uhr",
|
||||
"file": "Datei",
|
||||
"file-attribute": {
|
||||
"update": {
|
||||
"error": "Aktualisierung des Werts für das Datei-Attribut fehlgeschlagen. Bitte versuchen Sie es noch einmal.",
|
||||
"success": "Der Wert für das Dateiattribut wurde erfolgreich aktualisiert."
|
||||
}
|
||||
},
|
||||
"file-attribute-encoding-types": {
|
||||
"ascii": "ASCII",
|
||||
"iso": "ISO-8859-1",
|
||||
@ -1406,6 +1403,12 @@
|
||||
"number": "Nummer",
|
||||
"text": "Freier Text"
|
||||
},
|
||||
"file-attribute": {
|
||||
"update": {
|
||||
"error": "Aktualisierung des Werts für das Datei-Attribut fehlgeschlagen. Bitte versuchen Sie es noch einmal.",
|
||||
"success": "Der Wert für das Dateiattribut wurde erfolgreich aktualisiert."
|
||||
}
|
||||
},
|
||||
"file-attributes-configurations": {
|
||||
"cancel": "Abbrechen",
|
||||
"form": {
|
||||
@ -1623,15 +1626,6 @@
|
||||
"csv": "Die Datei-Attribute wurden erfolgreich aus der hochgeladenen CSV-Datei importiert."
|
||||
}
|
||||
},
|
||||
"filter": {
|
||||
"analysis": "Analyse erforderlich",
|
||||
"comment": "Kommentare",
|
||||
"hint": "Nur Hinweise",
|
||||
"image": "Bilder",
|
||||
"none": "Keine Annotationen",
|
||||
"redaction": "Schwärzungen",
|
||||
"updated": "Aktualisiert"
|
||||
},
|
||||
"filter-menu": {
|
||||
"filter-options": "Filteroptionen",
|
||||
"filter-types": "Filter",
|
||||
@ -1641,6 +1635,15 @@
|
||||
"unseen-pages": "Nur Annotationen auf ungesehenen Seiten",
|
||||
"with-comments": "Nur Annotationen mit Kommentaren"
|
||||
},
|
||||
"filter": {
|
||||
"analysis": "Analyse erforderlich",
|
||||
"comment": "Kommentare",
|
||||
"hint": "Nur Hinweise",
|
||||
"image": "Bilder",
|
||||
"none": "Keine Annotationen",
|
||||
"redaction": "Schwärzungen",
|
||||
"updated": "Aktualisiert"
|
||||
},
|
||||
"filters": {
|
||||
"assigned-people": "Bearbeiter",
|
||||
"documents-status": "Dokumentenstatus",
|
||||
@ -1919,13 +1922,6 @@
|
||||
"user-promoted-to-approver": "<b>{user}</b> wurde im Dossier <b>{dossierHref, select, null{{dossierName}} other{<a href=\"{dossierHref}\" target=\"_blank\">{dossierName}</a>}}</b> zum Genehmiger ernannt!",
|
||||
"user-removed-as-dossier-member": "<b>{user}</b> wurde als Mitglied von: <b>{dossierHref, select, null{{dossierName}} other{<a href=\"{dossierHref}\" target=\"_blank\">{dossierName}</a>}}</b> entfernt!"
|
||||
},
|
||||
"notifications": {
|
||||
"button-text": "Benachrichtigungen",
|
||||
"deleted-dossier": "Gelöschtes Dossier",
|
||||
"label": "Benachrichtigungen",
|
||||
"mark-all-as-read": "Alle als gelesen markieren",
|
||||
"mark-as": "Als {type, select, read{gelesen} unread{ungelesen} other{}} markieren"
|
||||
},
|
||||
"notifications-screen": {
|
||||
"category": {
|
||||
"email-notifications": "E-Mail-Benachrichtigungen",
|
||||
@ -1939,6 +1935,7 @@
|
||||
"dossier": "Benachrichtigungen zu Dossiers",
|
||||
"other": "Andere Benachrichtigungen"
|
||||
},
|
||||
"options-title": "Wählen Sie aus, bei welchen Aktivitäten Sie benachrichtigt werden möchten",
|
||||
"options": {
|
||||
"ASSIGN_APPROVER": "Wenn ich einem Dokument als Genehmiger zugewiesen werde",
|
||||
"ASSIGN_REVIEWER": "Wenn ich einem Dokument als Prüfer zugewiesen werde",
|
||||
@ -1956,7 +1953,6 @@
|
||||
"USER_PROMOTED_TO_APPROVER": "Wenn ich Genehmiger in einem Dossier werde",
|
||||
"USER_REMOVED_AS_DOSSIER_MEMBER": "Wenn ich die Dossier-Mitgliedschaft verliere"
|
||||
},
|
||||
"options-title": "Wählen Sie aus, bei welchen Aktivitäten Sie benachrichtigt werden möchten",
|
||||
"schedule": {
|
||||
"daily": "Tägliche Zusammenfassung",
|
||||
"instant": "Sofort",
|
||||
@ -1964,6 +1960,13 @@
|
||||
},
|
||||
"title": "Benachrichtigungseinstellungen"
|
||||
},
|
||||
"notifications": {
|
||||
"button-text": "Benachrichtigungen",
|
||||
"deleted-dossier": "Gelöschtes Dossier",
|
||||
"label": "Benachrichtigungen",
|
||||
"mark-all-as-read": "Alle als gelesen markieren",
|
||||
"mark-as": "Als {type, select, read{gelesen} unread{ungelesen} other{}} markieren"
|
||||
},
|
||||
"ocr": {
|
||||
"confirmation-dialog": {
|
||||
"cancel": "Abbrechen",
|
||||
@ -2055,16 +2058,16 @@
|
||||
"warnings-label": "Dialoge und Meldungen",
|
||||
"warnings-subtitle": "„Nicht mehr anzeigen“-Optionen"
|
||||
},
|
||||
"processing": {
|
||||
"basic": "Verarbeitung läuft",
|
||||
"ocr": "OCR"
|
||||
},
|
||||
"processing-status": {
|
||||
"ocr": "OCR",
|
||||
"pending": "Ausstehend",
|
||||
"processed": "Verarbeitet",
|
||||
"processing": "Verarbeitung läuft"
|
||||
},
|
||||
"processing": {
|
||||
"basic": "Verarbeitung läuft",
|
||||
"ocr": "OCR"
|
||||
},
|
||||
"readonly": "Lesemodus",
|
||||
"readonly-archived": "Lesemodus (archiviert)",
|
||||
"redact-text": {
|
||||
@ -2300,12 +2303,6 @@
|
||||
"red-user-admin": "Benutzeradmin",
|
||||
"regular": "regulärer Benutzer"
|
||||
},
|
||||
"search": {
|
||||
"active-dossiers": "Dokumente in aktiven Dossiers",
|
||||
"all-dossiers": "Alle Dokumente",
|
||||
"placeholder": "Dokumente durchsuchen...",
|
||||
"this-dossier": "In diesem Dossier"
|
||||
},
|
||||
"search-screen": {
|
||||
"cols": {
|
||||
"assignee": "Bearbeiter",
|
||||
@ -2329,6 +2326,12 @@
|
||||
"no-match": "Der Suchbegriff wurde in keinem der Dokumente gefunden.",
|
||||
"table-header": "{length} {length, plural, one{Suchergebnis} other{Suchergebnisse}}"
|
||||
},
|
||||
"search": {
|
||||
"active-dossiers": "Dokumente in aktiven Dossiers",
|
||||
"all-dossiers": "Alle Dokumente",
|
||||
"placeholder": "Dokumente durchsuchen...",
|
||||
"this-dossier": "In diesem Dossier"
|
||||
},
|
||||
"seconds": "Sekunden",
|
||||
"size": "Größe",
|
||||
"smtp-auth-config": {
|
||||
@ -2584,4 +2587,4 @@
|
||||
}
|
||||
},
|
||||
"yesterday": "Gestern"
|
||||
}
|
||||
}
|
||||
|
||||
@ -207,11 +207,14 @@
|
||||
"generic": "Failed to save user."
|
||||
},
|
||||
"form": {
|
||||
"account-setup": "User account setup",
|
||||
"email": "E-mail",
|
||||
"first-name": "First name",
|
||||
"last-name": "Last name",
|
||||
"reset-password": "Reset password",
|
||||
"role": "Role"
|
||||
"role": "Role",
|
||||
"send-email": "Do not send email requesting the user to set a password",
|
||||
"send-email-explanation": "Select this option if you use SSO. Please note that you will need to inform the user directly."
|
||||
},
|
||||
"title": "{type, select, edit{Edit} create{Add new} other{}} user"
|
||||
},
|
||||
@ -2584,4 +2587,4 @@
|
||||
}
|
||||
},
|
||||
"yesterday": "Yesterday"
|
||||
}
|
||||
}
|
||||
|
||||
@ -207,11 +207,14 @@
|
||||
"generic": "Benutzer konnte nicht gespeichert werden!"
|
||||
},
|
||||
"form": {
|
||||
"account-setup": "User account setup",
|
||||
"email": "E-Mail",
|
||||
"first-name": "Vorname",
|
||||
"last-name": "Nachname",
|
||||
"reset-password": "Passwort zurücksetzen",
|
||||
"role": "Rolle"
|
||||
"role": "Rolle",
|
||||
"send-email": "Do not send email requesting the user to set a password",
|
||||
"send-email-explanation": "Select this option if you use SSO. Please note that you will need to inform the user directly."
|
||||
},
|
||||
"title": "{type, select, edit{Benutzer bearbeiten} create{Neuen Benutzer hinzufügen} other{}}"
|
||||
},
|
||||
@ -273,9 +276,6 @@
|
||||
"watermarks": "Watermarks"
|
||||
},
|
||||
"analysis-disabled": "Analysis disabled",
|
||||
"annotation": {
|
||||
"pending": "(Pending analysis)"
|
||||
},
|
||||
"annotation-actions": {
|
||||
"accept-recommendation": {
|
||||
"label": "Empfehlung annehmen"
|
||||
@ -331,14 +331,14 @@
|
||||
"error": "Rekategorisierung des Bildes gescheitert: {error}",
|
||||
"success": "Bild wurde einer neuen Kategorie zugeordnet."
|
||||
},
|
||||
"remove": {
|
||||
"error": "Fehler beim Entfernen der Schwärzung: {error}",
|
||||
"success": "Schwärzung entfernt!"
|
||||
},
|
||||
"remove-hint": {
|
||||
"error": "Failed to remove hint: {error}",
|
||||
"success": "Hint removed!"
|
||||
},
|
||||
"remove": {
|
||||
"error": "Fehler beim Entfernen der Schwärzung: {error}",
|
||||
"success": "Schwärzung entfernt!"
|
||||
},
|
||||
"undo": {
|
||||
"error": "Die Aktion konnte nicht rückgängig gemacht werden. Fehler: {error}",
|
||||
"success": "erfolgreich Rückgängig gemacht"
|
||||
@ -351,15 +351,15 @@
|
||||
"remove-highlights": {
|
||||
"label": "Remove selected earmarks"
|
||||
},
|
||||
"resize": {
|
||||
"label": "Größe ändern"
|
||||
},
|
||||
"resize-accept": {
|
||||
"label": "Größe speichern"
|
||||
},
|
||||
"resize-cancel": {
|
||||
"label": "Größenänderung abbrechen"
|
||||
},
|
||||
"resize": {
|
||||
"label": "Größe ändern"
|
||||
},
|
||||
"see-references": {
|
||||
"label": "See references"
|
||||
},
|
||||
@ -393,6 +393,9 @@
|
||||
"skipped": "Übersprungen",
|
||||
"text-highlight": "Earmark"
|
||||
},
|
||||
"annotation": {
|
||||
"pending": "(Pending analysis)"
|
||||
},
|
||||
"annotations": "Annotations",
|
||||
"archived-dossiers-listing": {
|
||||
"no-data": {
|
||||
@ -636,18 +639,14 @@
|
||||
"warning": "Achtung: Diese Aktion kann nicht rückgängig gemacht werden!"
|
||||
},
|
||||
"confirmation-dialog": {
|
||||
"approve-file": {
|
||||
"question": "Dieses Dokument enthält ungesehene Änderungen. Möchten Sie es trotzdem genehmigen?",
|
||||
"title": "Warnung!"
|
||||
},
|
||||
"approve-file-without-analysis": {
|
||||
"confirmationText": "Approve without analysis",
|
||||
"denyText": "Cancel",
|
||||
"question": "Analysis required to detect new components.",
|
||||
"title": "Warning!"
|
||||
},
|
||||
"approve-multiple-files": {
|
||||
"question": "Mindestens eine der ausgewählten Dateien enthält ungesehene Änderungen. Möchten Sie sie trotzdem genehmigen?",
|
||||
"approve-file": {
|
||||
"question": "Dieses Dokument enthält ungesehene Änderungen. Möchten Sie es trotzdem genehmigen?",
|
||||
"title": "Warnung!"
|
||||
},
|
||||
"approve-multiple-files-without-analysis": {
|
||||
@ -656,6 +655,10 @@
|
||||
"question": "Analysis required to detect new components for at least one file.",
|
||||
"title": "Warning"
|
||||
},
|
||||
"approve-multiple-files": {
|
||||
"question": "Mindestens eine der ausgewählten Dateien enthält ungesehene Änderungen. Möchten Sie sie trotzdem genehmigen?",
|
||||
"title": "Warnung!"
|
||||
},
|
||||
"assign-file-to-me": {
|
||||
"question": {
|
||||
"multiple": "Dieses Dokument wird gerade von einer anderen Person geprüft. Möchten Sie Reviewer werden und sich selbst dem Dokument zuweisen?",
|
||||
@ -1025,13 +1028,13 @@
|
||||
"recent": "Neu ({hours} h)",
|
||||
"unassigned": "Niemandem zugewiesen"
|
||||
},
|
||||
"reanalyse": {
|
||||
"action": "Datei analysieren"
|
||||
},
|
||||
"reanalyse-dossier": {
|
||||
"error": "Die Dateien konnten nicht für eine Reanalyse eingeplant werden. Bitte versuchen Sie es erneut.",
|
||||
"success": "Dateien für Reanalyse vorgesehen."
|
||||
},
|
||||
"reanalyse": {
|
||||
"action": "Datei analysieren"
|
||||
},
|
||||
"report-download": "Report download",
|
||||
"start-auto-analysis": "Enable auto-analysis",
|
||||
"stop-auto-analysis": "Stop auto-analysis",
|
||||
@ -1101,14 +1104,6 @@
|
||||
"total-documents": "Anzahl der Dokumente",
|
||||
"total-people": "<strong>{count}</strong> {count, plural, one{user} other {users}}"
|
||||
},
|
||||
"dossier-templates": {
|
||||
"label": "Dossier-Vorlagen",
|
||||
"status": {
|
||||
"active": "Active",
|
||||
"inactive": "Inactive",
|
||||
"incomplete": "Incomplete"
|
||||
}
|
||||
},
|
||||
"dossier-templates-listing": {
|
||||
"action": {
|
||||
"clone": "Clone template",
|
||||
@ -1143,6 +1138,14 @@
|
||||
"title": "{length} dossier {length, plural, one{template} other{templates}}"
|
||||
}
|
||||
},
|
||||
"dossier-templates": {
|
||||
"label": "Dossier-Vorlagen",
|
||||
"status": {
|
||||
"active": "Active",
|
||||
"inactive": "Inactive",
|
||||
"incomplete": "Incomplete"
|
||||
}
|
||||
},
|
||||
"dossier-watermark-selector": {
|
||||
"heading": "Watermarks on documents",
|
||||
"no-watermark": "There is no watermark defined for the dossier template.<br>Contact your app admin to define one.",
|
||||
@ -1338,15 +1341,6 @@
|
||||
"title": "{length} {length, plural, one{entity} other{entities}}"
|
||||
}
|
||||
},
|
||||
"entity": {
|
||||
"info": {
|
||||
"actions": {
|
||||
"revert": "Revert",
|
||||
"save": "Save changes"
|
||||
},
|
||||
"heading": "Edit entity"
|
||||
}
|
||||
},
|
||||
"entity-rules-screen": {
|
||||
"error": {
|
||||
"generic": "Something went wrong... Entity rules update failed!"
|
||||
@ -1360,19 +1354,28 @@
|
||||
"title": "Entity rule editor",
|
||||
"warnings-found": "{warnings, plural, one{A warning} other{{warnings} warnings}} found in rules"
|
||||
},
|
||||
"entity": {
|
||||
"info": {
|
||||
"actions": {
|
||||
"revert": "Revert",
|
||||
"save": "Save changes"
|
||||
},
|
||||
"heading": "Edit entity"
|
||||
}
|
||||
},
|
||||
"error": {
|
||||
"deleted-entity": {
|
||||
"dossier": {
|
||||
"action": "Zurück zur Übersicht",
|
||||
"label": "Dieses Dossier wurde gelöscht!"
|
||||
},
|
||||
"file": {
|
||||
"action": "Zurück zum Dossier",
|
||||
"label": "Diese Datei wurde gelöscht!"
|
||||
},
|
||||
"file-dossier": {
|
||||
"action": "Zurück zur Übersicht",
|
||||
"label": "Das Dossier dieser Datei wurde gelöscht!"
|
||||
},
|
||||
"file": {
|
||||
"action": "Zurück zum Dossier",
|
||||
"label": "Diese Datei wurde gelöscht!"
|
||||
}
|
||||
},
|
||||
"file-preview": {
|
||||
@ -1390,12 +1393,6 @@
|
||||
},
|
||||
"exact-date": "{day} {month} {year} um {hour}:{minute} Uhr",
|
||||
"file": "Datei",
|
||||
"file-attribute": {
|
||||
"update": {
|
||||
"error": "Failed to update file attribute value!",
|
||||
"success": "File attribute value has been updated successfully!"
|
||||
}
|
||||
},
|
||||
"file-attribute-encoding-types": {
|
||||
"ascii": "ASCII",
|
||||
"iso": "ISO-8859-1",
|
||||
@ -1406,6 +1403,12 @@
|
||||
"number": "Nummer",
|
||||
"text": "Freier Text"
|
||||
},
|
||||
"file-attribute": {
|
||||
"update": {
|
||||
"error": "Failed to update file attribute value!",
|
||||
"success": "File attribute value has been updated successfully!"
|
||||
}
|
||||
},
|
||||
"file-attributes-configurations": {
|
||||
"cancel": "Cancel",
|
||||
"form": {
|
||||
@ -1623,15 +1626,6 @@
|
||||
"csv": "File attributes were imported successfully from uploaded CSV file."
|
||||
}
|
||||
},
|
||||
"filter": {
|
||||
"analysis": "Analyse erforderlich",
|
||||
"comment": "Kommentare",
|
||||
"hint": "Nut Hinweise",
|
||||
"image": "Bilder",
|
||||
"none": "Keine Anmerkungen",
|
||||
"redaction": "Geschwärzt",
|
||||
"updated": "Aktualisiert"
|
||||
},
|
||||
"filter-menu": {
|
||||
"filter-options": "Filteroptionen",
|
||||
"filter-types": "Filter",
|
||||
@ -1641,6 +1635,15 @@
|
||||
"unseen-pages": "Nur Anmerkungen auf unsichtbaren Seiten",
|
||||
"with-comments": "Nur Anmerkungen mit Kommentaren"
|
||||
},
|
||||
"filter": {
|
||||
"analysis": "Analyse erforderlich",
|
||||
"comment": "Kommentare",
|
||||
"hint": "Nut Hinweise",
|
||||
"image": "Bilder",
|
||||
"none": "Keine Anmerkungen",
|
||||
"redaction": "Geschwärzt",
|
||||
"updated": "Aktualisiert"
|
||||
},
|
||||
"filters": {
|
||||
"assigned-people": "Beauftragt",
|
||||
"documents-status": "Documents state",
|
||||
@ -1919,13 +1922,6 @@
|
||||
"user-promoted-to-approver": "<b>{user}</b> wurde im Dossier <b>{dossierHref, select, null{{dossierName}} other{<a href=\"{dossierHref}\" target=\"_blank\">{dossierName}</a>}}</b> zum Genehmiger ernannt!",
|
||||
"user-removed-as-dossier-member": "<b>{user}</b> wurde als Mitglied von: <b>{dossierHref, select, null{{dossierName}} other{<a href=\"{dossierHref}\" target=\"_blank\">{dossierName}</a>}}</b> entfernt!"
|
||||
},
|
||||
"notifications": {
|
||||
"button-text": "Notifications",
|
||||
"deleted-dossier": "Deleted dossier",
|
||||
"label": "Benachrichtigungen",
|
||||
"mark-all-as-read": "Alle als gelesen markieren",
|
||||
"mark-as": "Mark as {type, select, read{read} unread{unread} other{}}"
|
||||
},
|
||||
"notifications-screen": {
|
||||
"category": {
|
||||
"email-notifications": "E-Mail Benachrichtigungen",
|
||||
@ -1939,6 +1935,7 @@
|
||||
"dossier": "Dossierbezogene Benachrichtigungen",
|
||||
"other": "Andere Benachrichtigungen"
|
||||
},
|
||||
"options-title": "Wählen Sie aus, in welcher Kategorie Sie benachrichtigt werden möchten",
|
||||
"options": {
|
||||
"ASSIGN_APPROVER": "Wenn ich einem Dokument als Genehmiger zugewiesen bin",
|
||||
"ASSIGN_REVIEWER": "Wenn ich einem Dokument als Überprüfer zugewiesen bin",
|
||||
@ -1956,7 +1953,6 @@
|
||||
"USER_PROMOTED_TO_APPROVER": "Wenn ich Genehmiger in einem Dossier werde",
|
||||
"USER_REMOVED_AS_DOSSIER_MEMBER": "Wenn ich die Dossier-Mitgliedschaft verliere"
|
||||
},
|
||||
"options-title": "Wählen Sie aus, in welcher Kategorie Sie benachrichtigt werden möchten",
|
||||
"schedule": {
|
||||
"daily": "Tägliche Zusammenfassung",
|
||||
"instant": "Sofortig",
|
||||
@ -1964,6 +1960,13 @@
|
||||
},
|
||||
"title": "Benachrichtigungseinstellungen"
|
||||
},
|
||||
"notifications": {
|
||||
"button-text": "Notifications",
|
||||
"deleted-dossier": "Deleted dossier",
|
||||
"label": "Benachrichtigungen",
|
||||
"mark-all-as-read": "Alle als gelesen markieren",
|
||||
"mark-as": "Mark as {type, select, read{read} unread{unread} other{}}"
|
||||
},
|
||||
"ocr": {
|
||||
"confirmation-dialog": {
|
||||
"cancel": "Cancel",
|
||||
@ -2055,16 +2058,16 @@
|
||||
"warnings-label": "Prompts and dialogs",
|
||||
"warnings-subtitle": "Do not show again options"
|
||||
},
|
||||
"processing": {
|
||||
"basic": "Processing",
|
||||
"ocr": "OCR"
|
||||
},
|
||||
"processing-status": {
|
||||
"ocr": "OCR",
|
||||
"pending": "Pending",
|
||||
"processed": "Processed",
|
||||
"processing": "Processing"
|
||||
},
|
||||
"processing": {
|
||||
"basic": "Processing",
|
||||
"ocr": "OCR"
|
||||
},
|
||||
"readonly": "Lesemodus",
|
||||
"readonly-archived": "Read only (archived)",
|
||||
"redact-text": {
|
||||
@ -2300,12 +2303,6 @@
|
||||
"red-user-admin": "Benutzer-Admin",
|
||||
"regular": "Regulär"
|
||||
},
|
||||
"search": {
|
||||
"active-dossiers": "ganze Plattform",
|
||||
"all-dossiers": "all documents",
|
||||
"placeholder": "Nach Dokumenten oder Dokumenteninhalt suchen",
|
||||
"this-dossier": "in diesem Dossier"
|
||||
},
|
||||
"search-screen": {
|
||||
"cols": {
|
||||
"assignee": "Bevollmächtigter",
|
||||
@ -2329,6 +2326,12 @@
|
||||
"no-match": "Keine Dokumente entsprechen Ihren aktuellen Filtern.",
|
||||
"table-header": "{length} search {length, plural, one{result} other{results}}"
|
||||
},
|
||||
"search": {
|
||||
"active-dossiers": "ganze Plattform",
|
||||
"all-dossiers": "all documents",
|
||||
"placeholder": "Nach Dokumenten oder Dokumenteninhalt suchen",
|
||||
"this-dossier": "in diesem Dossier"
|
||||
},
|
||||
"seconds": "seconds",
|
||||
"size": "Size",
|
||||
"smtp-auth-config": {
|
||||
@ -2584,4 +2587,4 @@
|
||||
}
|
||||
},
|
||||
"yesterday": "Gestern"
|
||||
}
|
||||
}
|
||||
|
||||
@ -207,11 +207,14 @@
|
||||
"generic": "Failed to save user!"
|
||||
},
|
||||
"form": {
|
||||
"account-setup": "User account setup",
|
||||
"email": "E-mail",
|
||||
"first-name": "First name",
|
||||
"last-name": "Last name",
|
||||
"reset-password": "Reset password",
|
||||
"role": "Role"
|
||||
"role": "Role",
|
||||
"send-email": "Do not send email requesting the user to set a password",
|
||||
"send-email-explanation": "Select this option if you use SSO. Please note that you will need to inform the user directly."
|
||||
},
|
||||
"title": "{type, select, edit{Edit} create{Add new} other{}} user"
|
||||
},
|
||||
@ -2584,4 +2587,4 @@
|
||||
}
|
||||
},
|
||||
"yesterday": "Yesterday"
|
||||
}
|
||||
}
|
||||
|
||||
@ -1 +1 @@
|
||||
Subproject commit 007e761bd597a1534599b05d28826258bfc52570
|
||||
Subproject commit 9bc05f11657da806743718dc9cbd1cc4f5af10a7
|
||||
Loading…
x
Reference in New Issue
Block a user