From 3f374eac01db7a4239c016a464475eea0750eac7 Mon Sep 17 00:00:00 2001 From: Asli Aykan Date: Mon, 20 Jan 2025 11:57:07 +0100 Subject: [PATCH] add pinned messages filter --- .../course-conversations.component.html | 9 +- .../course-conversations.component.ts | 10 +++ .../conversation-header.component.html | 23 +++++ .../conversation-header.component.scss | 8 ++ .../conversation-header.component.ts | 16 +++- .../conversation-messages.component.ts | 45 ++++++---- src/main/webapp/i18n/de/metis.json | 3 + src/main/webapp/i18n/en/metis.json | 3 + .../course-conversations.component.spec.ts | 17 ++++ .../conversation-header.component.spec.ts | 20 +++++ .../conversation-messages.component.spec.ts | 88 ++++++++++++++++++- 11 files changed, 222 insertions(+), 20 deletions(-) diff --git a/src/main/webapp/app/overview/course-conversations/course-conversations.component.html b/src/main/webapp/app/overview/course-conversations/course-conversations.component.html index 885e76e9c1fb..203d17626396 100644 --- a/src/main/webapp/app/overview/course-conversations/course-conversations.component.html +++ b/src/main/webapp/app/overview/course-conversations/course-conversations.component.html @@ -51,7 +51,12 @@ [ngClass]="{ 'content-height-dev': !isProduction || isTestServer, 'is-answer-thread-open': !!postInThread }" > @if (activeConversation) { - + } @else { @if (selectedSavedPostStatus === null) { diff --git a/src/main/webapp/app/overview/course-conversations/course-conversations.component.ts b/src/main/webapp/app/overview/course-conversations/course-conversations.component.ts index 1e35a2cd7d20..e12585b5b47b 100644 --- a/src/main/webapp/app/overview/course-conversations/course-conversations.component.ts +++ b/src/main/webapp/app/overview/course-conversations/course-conversations.component.ts @@ -162,6 +162,8 @@ export class CourseConversationsComponent implements OnInit, OnDestroy { focusPostId: number | undefined = undefined; openThreadOnFocus = false; selectedSavedPostStatus: null | SavedPostStatus = null; + showOnlyPinned = false; + pinnedCount: number = 0; readonly CHANNEL_TYPE_ICON = CHANNEL_TYPE_ICON; readonly DEFAULT_COLLAPSE_STATE = DEFAULT_COLLAPSE_STATE; @@ -203,6 +205,14 @@ export class CourseConversationsComponent implements OnInit, OnDestroy { }); } + togglePinnedView(): void { + this.showOnlyPinned = !this.showOnlyPinned; + } + + onPinnedCountChanged(newCount: number): void { + this.pinnedCount = newCount; + } + private setupMetis() { this.metisService.setPageType(PageType.OVERVIEW); this.metisService.setCourse(this.course!); diff --git a/src/main/webapp/app/overview/course-conversations/layout/conversation-header/conversation-header.component.html b/src/main/webapp/app/overview/course-conversations/layout/conversation-header/conversation-header.component.html index 076257d4caef..450148fc7298 100644 --- a/src/main/webapp/app/overview/course-conversations/layout/conversation-header/conversation-header.component.html +++ b/src/main/webapp/app/overview/course-conversations/layout/conversation-header/conversation-header.component.html @@ -49,6 +49,29 @@