diff --git a/client/src/app/site/pages/meetings/pages/motions/motions.subscription.ts b/client/src/app/site/pages/meetings/pages/motions/motions.subscription.ts index 75c167c260..8837032871 100644 --- a/client/src/app/site/pages/meetings/pages/motions/motions.subscription.ts +++ b/client/src/app/site/pages/meetings/pages/motions/motions.subscription.ts @@ -57,7 +57,8 @@ export const getMotionListSubscriptionConfig: SubscriptionConfigGenerator = (id: `submitter_ids`, `additional_submitter`, `tag_ids`, - `title` + `title`, + `identical_motion_ids` ], follow: [ { idField: `list_of_speakers_id`, ...listOfSpeakersSpeakerCountSubscription }, diff --git a/client/src/app/site/pages/meetings/pages/motions/services/list/motion-list-filter.service/motion-list-filter.service.ts b/client/src/app/site/pages/meetings/pages/motions/services/list/motion-list-filter.service/motion-list-filter.service.ts index 2a077140a3..7523179fa8 100644 --- a/client/src/app/site/pages/meetings/pages/motions/services/list/motion-list-filter.service/motion-list-filter.service.ts +++ b/client/src/app/site/pages/meetings/pages/motions/services/list/motion-list-filter.service/motion-list-filter.service.ts @@ -126,6 +126,15 @@ export class MotionListFilterService extends BaseMeetingFilterListService = { + property: `hasIdenticalMotions`, + label: _(`Identical motions`), + options: [ + { condition: true, label: _(`Has identical motions`) }, + { condition: [false, null], label: _(`Has no identical motions`) } + ] + }; + private amendmentFilterOption: OsFilter = { property: `amendmentType`, label: _(`Amendment`), @@ -296,7 +305,8 @@ export class MotionListFilterService extends BaseMeetingFilterListService { return this.speakerAmount > 0; } + public get hasIdenticalMotions(): boolean { + return !!this.identical_motion_ids?.length; + } + public get showPreamble(): boolean { return !this.state?.isFinalState ?? true; }