From b6aad3ebc592d07d881d6c6e4d9b46fcd24f514e Mon Sep 17 00:00:00 2001 From: Stefan Plociennik <stefan.plociennik@mni.thm.de> Date: Sun, 6 Jun 2021 14:43:05 +0200 Subject: [PATCH] selected spacy labels are now written in topic cloud admin data for other groups --- .../TopicCloudAdminData.ts | 5 +++- .../topic-cloud-administration.component.html | 9 +++--- .../topic-cloud-administration.component.ts | 28 +++++++++++++------ .../util/topic-cloud-admin.service.ts | 5 +++- 4 files changed, 32 insertions(+), 15 deletions(-) diff --git a/src/app/components/shared/_dialogs/topic-cloud-administration/TopicCloudAdminData.ts b/src/app/components/shared/_dialogs/topic-cloud-administration/TopicCloudAdminData.ts index 6e59d66b4..5d0dbabc4 100644 --- a/src/app/components/shared/_dialogs/topic-cloud-administration/TopicCloudAdminData.ts +++ b/src/app/components/shared/_dialogs/topic-cloud-administration/TopicCloudAdminData.ts @@ -1,6 +1,9 @@ export interface TopicCloudAdminData { blacklist: string[]; - wantedLabels: Labels; + wantedLabels: { + de: string[]; + en: string[]; + }; considerVotes: boolean; profanityFilter: boolean; blacklistIsActive: boolean; diff --git a/src/app/components/shared/_dialogs/topic-cloud-administration/topic-cloud-administration.component.html b/src/app/components/shared/_dialogs/topic-cloud-administration/topic-cloud-administration.component.html index f66b15f46..4a9869beb 100644 --- a/src/app/components/shared/_dialogs/topic-cloud-administration/topic-cloud-administration.component.html +++ b/src/app/components/shared/_dialogs/topic-cloud-administration/topic-cloud-administration.component.html @@ -114,15 +114,15 @@ <mat-tab-group mat-align-tabs="center"> <mat-tab label="German"> - <mat-selection-list> - <mat-list-option selected=true class="color-on-surface" *ngFor="let label of wantedLabels.de"> + <mat-selection-list [(ngModel)]="wantedLabels.de"> + <mat-list-option selected=true [value]="label.tag" class="color-on-surface" *ngFor="let label of spacyLabels.de"> {{label.label + " (" + label.tag + ")"}} </mat-list-option> </mat-selection-list> </mat-tab> <mat-tab label="English"> - <mat-selection-list> - <mat-list-option selected=true class="color-on-surface" *ngFor="let label of wantedLabels.en"> + <mat-selection-list [(ngModel)]="wantedLabels.en"> + <mat-list-option selected=true [value]="label.tag" class="color-on-surface" *ngFor="let label of spacyLabels.en"> {{label.label + " (" + label.tag + ")"}} </mat-list-option> </mat-selection-list> @@ -130,7 +130,6 @@ </mat-tab-group> </mat-expansion-panel> </mat-accordion> - </mat-expansion-panel> </mat-accordion> diff --git a/src/app/components/shared/_dialogs/topic-cloud-administration/topic-cloud-administration.component.ts b/src/app/components/shared/_dialogs/topic-cloud-administration/topic-cloud-administration.component.ts index 7a5d79514..fa7d19933 100644 --- a/src/app/components/shared/_dialogs/topic-cloud-administration/topic-cloud-administration.component.ts +++ b/src/app/components/shared/_dialogs/topic-cloud-administration/topic-cloud-administration.component.ts @@ -43,9 +43,11 @@ export class TopicCloudAdministrationComponent implements OnInit, OnDestroy { keywordORfulltext: string = undefined; userRole: UserRole; - wantedLabels: Labels; - englishLabels = true; - germanLabels = true; + spacyLabels: Labels; + wantedLabels: { + de: string[]; + en: string[]; + }; keywords: Keyword[] = []; private topicCloudAdminData: TopicCloudAdminData; @@ -71,8 +73,12 @@ export class TopicCloudAdministrationComponent implements OnInit, OnDestroy { this.blacklistSubscription = this.topicCloudAdminService.getBlacklist().subscribe(list => this.blacklist = list); this.isCreatorOrMod = this.data ? (this.data.user.role !== UserRole.PARTICIPANT) : true; this.translateService.use(localStorage.getItem('currentLang')); + this.spacyLabels = spacyLabels; + this.wantedLabels = { + de: [], + en: [] + }; this.setDefaultAdminData(); - this.wantedLabels = spacyLabels; } ngOnDestroy(){ @@ -108,10 +114,13 @@ export class TopicCloudAdministrationComponent implements OnInit, OnDestroy { }); } - setAdminData(){ + setAdminData() { this.topicCloudAdminData = { blacklist: [], - wantedLabels: this.wantedLabels, + wantedLabels: { + de: this.wantedLabels.de, + en: this.wantedLabels.en + }, considerVotes: this.considerVotes, profanityFilter: this.profanityFilter, blacklistIsActive: this.blacklistIsActive, @@ -127,7 +136,10 @@ export class TopicCloudAdministrationComponent implements OnInit, OnDestroy { this.profanityFilter = this.topicCloudAdminData.profanityFilter; this.blacklistIsActive = this.topicCloudAdminData.blacklistIsActive; this.keywordORfulltext = KeywordOrFulltext[this.topicCloudAdminData.keywordORfulltext]; - this.wantedLabels = this.topicCloudAdminData.wantedLabels; + this.wantedLabels = { + de: this.topicCloudAdminData.wantedLabels.de, + en: this.topicCloudAdminData.wantedLabels.en + }; } } @@ -289,7 +301,7 @@ export class TopicCloudAdministrationComponent implements OnInit, OnDestroy { this.topicCloudAdminService.removeWordFromBlacklist(word); } - refreshAllLists(){ + refreshAllLists() { this.searchKeyword(); } } diff --git a/src/app/services/util/topic-cloud-admin.service.ts b/src/app/services/util/topic-cloud-admin.service.ts index 8e16a5f2b..43433ae5d 100644 --- a/src/app/services/util/topic-cloud-admin.service.ts +++ b/src/app/services/util/topic-cloud-admin.service.ts @@ -40,7 +40,10 @@ export class TopicCloudAdminService { if (!data) { data = { blacklist: [], - wantedLabels: new Labels([], []), + wantedLabelsDE: { + de: [], + en: [] + }, considerVotes: false, profanityFilter: true, blacklistIsActive: false, -- GitLab