+
diff --git a/apps/red-ui/src/app/modules/file-preview/dialogs/edit-redaction-dialog/edit-redaction-dialog.component.ts b/apps/red-ui/src/app/modules/file-preview/dialogs/edit-redaction-dialog/edit-redaction-dialog.component.ts
index 57ed4cc13..af8abc4f0 100644
--- a/apps/red-ui/src/app/modules/file-preview/dialogs/edit-redaction-dialog/edit-redaction-dialog.component.ts
+++ b/apps/red-ui/src/app/modules/file-preview/dialogs/edit-redaction-dialog/edit-redaction-dialog.component.ts
@@ -31,7 +31,7 @@ export class EditRedactionDialogComponent
options: DetailsRadioOption[] | undefined;
legalOptions: LegalBasisOption[] = [];
dictionaries: Dictionary[] = [];
- form!: UntypedFormGroup;
+ form: UntypedFormGroup;
#applyToAllDossiers: boolean;
readonly #dossier: Dossier;
@@ -103,10 +103,6 @@ export class EditRedactionDialogComponent
this.#setOptions(selectedDictionaryType);
}
- reasonChanged() {
- this.form.patchValue({ reason: this.dictionaries.find(d => d.type === SuperTypes.ManualRedaction) });
- }
-
save(): void {
const value = this.form.value;
this.dialogRef.close({
@@ -125,18 +121,17 @@ export class EditRedactionDialogComponent
#setOptions(type: string, reasonChanged = false) {
const selectedDictionary = this.dictionaries.find(d => d.type === type);
- const isManualRedaction = type === SuperTypes.ManualRedaction;
this.options = getEditRedactionOptions(
this.#dossier.dossierName,
this.#applyToAllDossiers,
selectedDictionary.dossierDictionaryOnly,
this.isImage,
- isManualRedaction,
+ this.isManualRedaction,
);
this.form.patchValue(
{
option:
- this.isImage || selectedDictionary.dossierDictionaryOnly || isManualRedaction || reasonChanged
+ this.isImage || selectedDictionary.dossierDictionaryOnly || this.isManualRedaction || reasonChanged
? this.options[0]
: this.options[1],
},
diff --git a/apps/red-ui/src/app/modules/file-preview/file-preview.module.ts b/apps/red-ui/src/app/modules/file-preview/file-preview.module.ts
index e8b48638e..271921eb0 100644
--- a/apps/red-ui/src/app/modules/file-preview/file-preview.module.ts
+++ b/apps/red-ui/src/app/modules/file-preview/file-preview.module.ts
@@ -70,6 +70,7 @@ import { AddHintDialogComponent } from './dialogs/add-hint-dialog/add-hint-dialo
import { AddAnnotationDialogComponent } from './dialogs/docu-mine/add-annotation-dialog/add-annotation-dialog.component';
import { RemoveAnnotationDialogComponent } from './dialogs/docu-mine/remove-annotation-dialog/remove-annotation-dialog.component';
import { ResizeAnnotationDialogComponent } from './dialogs/docu-mine/resize-annotation-dialog/resize-annotation-dialog.component';
+import { EditAnnotationDialogComponent } from './dialogs/docu-mine/edit-annotation-dialog/edit-annotation-dialog.component';
import { EditRedactionDialogComponent } from './dialogs/edit-redaction-dialog/edit-redaction-dialog.component';
const routes: IqserRoutes = [
@@ -94,6 +95,7 @@ const dialogs = [
RssDialogComponent,
RedactTextDialogComponent,
EditRedactionDialogComponent,
+ EditAnnotationDialogComponent,
AddHintDialogComponent,
RemoveRedactionDialogComponent,
AddAnnotationDialogComponent,
diff --git a/apps/red-ui/src/app/modules/file-preview/services/annotation-actions.service.ts b/apps/red-ui/src/app/modules/file-preview/services/annotation-actions.service.ts
index c0a198595..9a7f5d81f 100644
--- a/apps/red-ui/src/app/modules/file-preview/services/annotation-actions.service.ts
+++ b/apps/red-ui/src/app/modules/file-preview/services/annotation-actions.service.ts
@@ -35,6 +35,7 @@ import { DossierTemplatesService } from '@services/dossier-templates/dossier-tem
import { isJustOne, List, log } from '@iqser/common-ui/lib/utils';
import { PermissionsService } from '@services/permissions.service';
import {
+ EditRedactionData,
RemoveRedactionData,
RemoveRedactionPermissions,
RemoveRedactionResult,
@@ -46,6 +47,7 @@ import { RemoveAnnotationDialogComponent } from '../dialogs/docu-mine/remove-ann
import { ResizeRedactionDialogComponent } from '../dialogs/resize-redaction-dialog/resize-redaction-dialog.component';
import { ResizeAnnotationDialogComponent } from '../dialogs/docu-mine/resize-annotation-dialog/resize-annotation-dialog.component';
import { EditRedactionDialogComponent } from '../dialogs/edit-redaction-dialog/edit-redaction-dialog.component';
+import { EditAnnotationDialogComponent } from '../dialogs/docu-mine/edit-annotation-dialog/edit-annotation-dialog.component';
@Injectable()
export class AnnotationActionsService {
@@ -115,28 +117,27 @@ export class AnnotationActionsService {
applyToAllDossiers: dossierTemplate.applyDictionaryUpdatesToAllDossiersByDefault,
};
- const result = await this._iqserDialog.openDefault(EditRedactionDialogComponent, { data }).result();
+ const result = await this.#getEditRedactionDialog(data).result();
const requests: Observable[] = [];
if (!result) {
return;
}
-
- const changeLegalBasisBody = annotations.map(annotation => ({
- annotationId: annotation.id,
- legalBasis: result.legalBasis,
- section: result.section,
- value: result.value,
- }));
- requests.push(this._manualRedactionService.changeLegalBasis(changeLegalBasisBody, dossierId, fileId));
-
- if (result.typeChanged) {
+ if (!this.#isDocumine) {
+ const changeLegalBasisBody = annotations.map(annotation => ({
+ annotationId: annotation.id,
+ legalBasis: result.legalBasis,
+ section: result.section,
+ value: result.value,
+ }));
+ requests.push(this._manualRedactionService.changeLegalBasis(changeLegalBasisBody, dossierId, fileId));
+ }
+ if (result.typeChanged || this.#isDocumine) {
const recategorizeBody: List = annotations.map(({ id }) => ({
annotationId: id,
type: result.type,
}));
- console.log({ recategorizeBody });
requests.push(this._manualRedactionService.recategorizeRedactions(recategorizeBody, dossierId, fileId));
}
@@ -464,4 +465,11 @@ export class AnnotationActionsService {
}
return this._iqserDialog.openDefault(ResizeRedactionDialogComponent, { data });
}
+
+ #getEditRedactionDialog(data: EditRedactionData) {
+ if (this.#isDocumine) {
+ return this._iqserDialog.openDefault(EditAnnotationDialogComponent, { data });
+ }
+ return this._iqserDialog.openDefault(EditRedactionDialogComponent, { data });
+ }
}
diff --git a/apps/red-ui/src/app/services/entity-services/dictionary.service.ts b/apps/red-ui/src/app/services/entity-services/dictionary.service.ts
index dd736ee84..879b22092 100644
--- a/apps/red-ui/src/app/services/entity-services/dictionary.service.ts
+++ b/apps/red-ui/src/app/services/entity-services/dictionary.service.ts
@@ -164,13 +164,10 @@ export class DictionaryService extends EntitiesService
}
getEditableRedactionTypes(dossierTemplateId: string, isImage: boolean): Dictionary[] {
+ console.log(this._dictionariesMapService.get(dossierTemplateId));
return this._dictionariesMapService
.get(dossierTemplateId)
- .filter(d =>
- isImage
- ? IMAGE_CATEGORIES.includes(d.type)
- : (d.hasDictionary && !d.virtual && !d.systemManaged) || d.type === SuperTypes.ManualRedaction,
- )
+ .filter(d => (isImage ? IMAGE_CATEGORIES.includes(d.type) : d.hasDictionary && !d.virtual && !d.systemManaged))
.sort((a, b) => a.label.localeCompare(b.label));
}
diff --git a/apps/red-ui/src/assets/i18n/scm/en.json b/apps/red-ui/src/assets/i18n/scm/en.json
index 09c4cdf04..594768222 100644
--- a/apps/red-ui/src/assets/i18n/scm/en.json
+++ b/apps/red-ui/src/assets/i18n/scm/en.json
@@ -1207,12 +1207,12 @@
"edit-redaction": {
"dialog": {
"actions": {
- "cancel": "",
- "save": ""
+ "cancel": "Cancel",
+ "save": "Save changes"
},
"content": {
- "comment": "",
- "comment-placeholder": "",
+ "comment": "Comment",
+ "comment-placeholder": "Add remarks or mentions ...",
"legal-basis": "",
"options": {
"in-dossier": {
@@ -1226,12 +1226,12 @@
}
},
"reason": "",
- "redacted-text": "",
+ "redacted-text": "Annotated text",
"section": "",
- "type": ""
+ "type": "Type"
},
"title-edit-image": "",
- "title-edit-text": ""
+ "title-edit-text": "Edit annotation"
}
},
"entities-listing": {