diff --git a/src/app/components/shared/comment-list/comment-list.component.html b/src/app/components/shared/comment-list/comment-list.component.html index 4517a91246559050387427a99b5acb3dea67ff9b..a9e31ca821b0205c8f9c3c146631c5ceae32e1e6 100644 --- a/src/app/components/shared/comment-list/comment-list.component.html +++ b/src/app/components/shared/comment-list/comment-list.component.html @@ -121,6 +121,12 @@ <span>{{ 'comment-list.filter-answered' | translate }}</span> </button> + <button mat-menu-item (focus)="hideCommentsList=true" matTooltip="{{ 'comment-list.owner' | translate }}" + (click)="filterComments(owner)" aria-labelledby="comment"> + <mat-icon [ngClass]="{owner: 'owner-icon'}[currentFilter]">person</mat-icon> + <span>{{ 'comment-list.filter-owner' | translate }}</span> + </button> + <button mat-menu-item (focus)="hideCommentsList=false" (click)="sortComments(currentSort); filterComments('')" aria-labelledby="close"> <mat-icon>close</mat-icon> diff --git a/src/app/components/shared/comment-list/comment-list.component.scss b/src/app/components/shared/comment-list/comment-list.component.scss index a1f1b2e72646f2bf52ad61c77c83867369022c29..76e62c34ca272e9521a2443cf2674e3f44ecf6d0 100644 --- a/src/app/components/shared/comment-list/comment-list.component.scss +++ b/src/app/components/shared/comment-list/comment-list.component.scss @@ -128,6 +128,10 @@ app-comment { color: var(--yellow); } +.owner-icon { + color: var(--purple) +} + .counter { color: var(--on-background); } diff --git a/src/app/components/shared/comment-list/comment-list.component.ts b/src/app/components/shared/comment-list/comment-list.component.ts index df01a28fed0db2f82b55308feecd8de2c8529481..66afb1ccdf4efabf6d04ed94b9b2027841494866 100644 --- a/src/app/components/shared/comment-list/comment-list.component.ts +++ b/src/app/components/shared/comment-list/comment-list.component.ts @@ -51,6 +51,7 @@ export class CommentListComponent implements OnInit, OnDestroy { ack = 'ack'; tag = 'tag'; answer = 'answer'; + owner = 'owner'; currentFilter = ''; commentVoteMap = new Map<string, Vote>(); scroll = false; @@ -330,6 +331,8 @@ export class CommentListComponent implements OnInit, OnDestroy { return c.tag === tag; case this.answer: return c.answer; + case this.owner: + return c.creatorId === this.user.id; } }); this.hideCommentsList = true; diff --git a/src/assets/i18n/creator/de.json b/src/assets/i18n/creator/de.json index 8308977ead4c5b6f6228053d1ff99ee93f8262bc..c37c48950eee7f504263d86a07255cd421fd2ac3 100644 --- a/src/assets/i18n/creator/de.json +++ b/src/assets/i18n/creator/de.json @@ -29,9 +29,11 @@ "filter-comments": "Fragen filtern", "filter-correct": "Bejahte Fragen", "filter-favorite": "Bonus-prämierte Fragen", + "filter-owner": "Meine Fragen", "filter-read": "Besprochene Fragen", "filter-reset": "Zurücksetzen", "filter-wrong": "Verneinte Fragen", + "owner": "Fragen, welche ich gestellt habe", "read": "Fragen, die der Dozent am Beamer besprochen hat", "really-delete": "Willst du die Frage wirklich löschen?", "search": "Suchen", diff --git a/src/assets/i18n/creator/en.json b/src/assets/i18n/creator/en.json index 30535c746314361f4bd353ad762903470f9416af..6abd54812afbdb6686c2286957b30a54d0e025e9 100644 --- a/src/assets/i18n/creator/en.json +++ b/src/assets/i18n/creator/en.json @@ -29,9 +29,11 @@ "filter-comments": "Filter questions", "filter-correct": "Affirmed questions", "filter-favorite": "Questions awarded a bonus", + "filter-owner": "My questions", "filter-read": "Questions discussed", "filter-reset": "Reset", "filter-wrong": "Negated questions", + "owner": "Questions I have asked", "read": "Discussed", "really-delete": "Do you really want to delete this question?", "search": "Search", diff --git a/src/assets/i18n/participant/de.json b/src/assets/i18n/participant/de.json index d648bfdba4bfff09a12d259c3fd24017eace9c8d..f60850115c4bbbbf6ff31e8de586a984eb8ce712 100644 --- a/src/assets/i18n/participant/de.json +++ b/src/assets/i18n/participant/de.json @@ -41,9 +41,11 @@ "filter-comments": "Fragen filtern", "filter-correct": "Bejahte Fragen", "filter-favorite": "Bonus-prämierte Fragen", + "filter-owner": "Meine Fragen", "filter-read": "Besprochene Fragen", "filter-reset": "Zurücksetzen", "filter-wrong": "Verneinte Fragen", + "owner": "Fragen, welche ich gestellt habe", "read": "Im Hörsaal besprochen", "search": "Suchen", "sort-comments": "Fragen sortieren", diff --git a/src/assets/i18n/participant/en.json b/src/assets/i18n/participant/en.json index 6c6a9a025f325479428d23599d39344c03f698b4..d7b2e23623bef8acd41e5aa827260a38171880c6 100644 --- a/src/assets/i18n/participant/en.json +++ b/src/assets/i18n/participant/en.json @@ -41,9 +41,11 @@ "filter-comments": "Filter questions", "filter-correct": "Affirmed questions", "filter-favorite": "Questions awarded a bonus", + "filter-owner": "My questions", "filter-read": "Questions discussed", "filter-reset": "Reset", "filter-wrong": "Negated questions", + "owner": "Questions I have asked", "read": "Discussed by the professor", "search": "Search", "sort-comments": "Sort questions",