diff --git a/client/src/app/gateways/repositories/motions/motion-repository.service/motion-repository.service.ts b/client/src/app/gateways/repositories/motions/motion-repository.service/motion-repository.service.ts index 42ff128659..1e6e5b1581 100644 --- a/client/src/app/gateways/repositories/motions/motion-repository.service/motion-repository.service.ts +++ b/client/src/app/gateways/repositories/motions/motion-repository.service/motion-repository.service.ts @@ -7,6 +7,7 @@ import { TreeIdNode } from 'src/app/infrastructure/definitions/tree'; import { NullablePartial } from 'src/app/infrastructure/utils'; import { AgendaListTitle } from 'src/app/site/pages/meetings/pages/agenda'; import { ViewMotion } from 'src/app/site/pages/meetings/pages/motions'; +import { MotionFormatResult } from 'src/app/site/pages/meetings/pages/motions/services/common/motion-format.service'; import { TreeService } from 'src/app/ui/modules/sorting/modules/sorting-tree/services'; import { Motion } from '../../../../domain/models/motions/motion'; @@ -56,13 +57,23 @@ export class MotionRepositoryService extends BaseAgendaItemAndListOfSpeakersCont return this.sendBulkActionToBackend(MotionAction.CREATE, payload); } - public async createForwarded(meetingIds: Id[], ...motions: any[]): Promise<{ success: number; partial: number }> { + public async createForwarded( + meetingIds: Id[], + useOriginalSubmitter: boolean, + useOriginalNumber: boolean, + useOriginalVersion: boolean, + ...motions: MotionFormatResult[] + ): Promise<{ success: number; partial: number }> { const payloads: any[][] = []; motions.forEach(motion => { payloads.push( meetingIds.map(id => { return { meeting_id: id, + use_original_submitter: useOriginalSubmitter, + use_original_number: useOriginalNumber, + with_amendments: useOriginalVersion, + with_change_recommendations: useOriginalVersion, ...motion }; }) diff --git a/client/src/app/site/pages/meetings/pages/motions/components/motion-forward-dialog/components/motion-forward-dialog/motion-forward-dialog.component.html b/client/src/app/site/pages/meetings/pages/motions/components/motion-forward-dialog/components/motion-forward-dialog/motion-forward-dialog.component.html index 70df28e0b1..3224342d6a 100644 --- a/client/src/app/site/pages/meetings/pages/motions/components/motion-forward-dialog/components/motion-forward-dialog/motion-forward-dialog.component.html +++ b/client/src/app/site/pages/meetings/pages/motions/components/motion-forward-dialog/components/motion-forward-dialog/motion-forward-dialog.component.html @@ -1,55 +1,127 @@
{{ data.motion.length > 1 ? 'Forward motions' : ('Forwarding of motion' | translate) }} - @if (data.motion.length === 1) { - {{ data.motion[0].number }} - }
@if (data.motion.length === 1) { - +
{{ 'State' | translate }}: - {{ data.motion[0].state.name }} {{ data.motion[0].state_extension }} - - } - @if (data.motion.length === 1 && activeMeetingCommitteeName) { -
+ {{ data.motion[0].state.name }} +
} - @if (activeMeetingCommitteeName) { - - {{ 'Submitter (in target meeting)' | translate }}: - {{ activeMeetingCommitteeName }} - - } -
- @for (committee of committeesObservable | async; track committee) { - @if (committee.meetings?.length) { -
-

{{ committee.name }}

- @for (meeting of committee.meetings; track meeting) { -
- - {{ meeting.name }} - @if (meeting.start_time || meeting.end_time) { + + + + + + + + + + + + +
+ @if (rowName === 'motion_version') { + {{ 'Motion version' | translate }} + } @else if (rowName === 'submitter') { + {{ 'Submitter' | translate }} + } @else if (rowName === 'identifier') { + {{ 'Identifier' | translate }} + } @else if (rowName === 'meeting') { + {{ 'Meetings' | translate }} + } + + @if (rowName === 'motion_version') { + + + + {{ 'Original motion text with amendments/change recommendations' | translate }} + + + {{ 'Final version' | translate }} + + + + } @else if (rowName === 'submitter') { + + + + {{ 'original submitter name' | translate }} + @if (data.motion.length === 1 && data.motion[0].submitterNames.length > 0) { + + + + {{ submitter }} + + + + } @else if (data.motion.length === 1 && data.motion[0].submitterNames.length === 0) { + + {{ showActiveMeetingName() }} + + } + + + {{ 'committee name' | translate }} + @if (activeMeetingCommitteeName) { + + ({{ activeMeetingCommitteeName }}) + + } + + + + } @else if (rowName === 'identifier') { + + + + {{ 'original identifier' | translate }} + @if (data.motion.length === 1) { -  ·  - + {{ data.motion[0].number }} } - - - } - - } - } - + + + {{ 'without identifier' | translate }} + + + + } @else if (rowName === 'meeting') { + + @for (committee of committeesObservable | async; track committee) { + @if (committee.meetings?.length) { +
+

{{ committee.name }}

+ @for (meeting of committee.meetings; track meeting) { +
+ + {{ meeting.name }} + @if (meeting.start_time || meeting.end_time) { + +  ·  + + + } + +
+ } +
+ } + } +
+ } +