diff --git a/client/src/app/site/pages/meetings/view-models/view-meeting.ts b/client/src/app/site/pages/meetings/view-models/view-meeting.ts index d3cd1a5c41..8e3b01304f 100644 --- a/client/src/app/site/pages/meetings/view-models/view-meeting.ts +++ b/client/src/app/site/pages/meetings/view-models/view-meeting.ts @@ -139,6 +139,10 @@ export class ViewMeeting extends BaseHasMeetingUsersViewModel { public canBeEnteredBy(user: ViewUser): boolean { return !this.locked_from_inside || user.group_ids(this.id).length > 0; } + + public canEditMeetingSettings(user: ViewUser): boolean { + return user.getMeetingUser(this.id)?.group_ids.includes(this.meeting.admin_group_id); + } } interface IMeetingRelations { motions_default_workflow: ViewMotionWorkflow; diff --git a/client/src/app/site/pages/organization/pages/committees/modules/committee-meeting-preview/committee-meeting-preview.component.html b/client/src/app/site/pages/organization/pages/committees/modules/committee-meeting-preview/committee-meeting-preview.component.html index 71a26f2cce..9c6f0a2cb3 100644 --- a/client/src/app/site/pages/organization/pages/committees/modules/committee-meeting-preview/committee-meeting-preview.component.html +++ b/client/src/app/site/pages/organization/pages/committees/modules/committee-meeting-preview/committee-meeting-preview.component.html @@ -145,7 +145,7 @@ {{ 'Public template' | translate }} } - @if (!isLockedFromInside) { + @if (canEditMeetingSettings()) { } - - + @if (canEditMeetingSettings()) { + + + } diff --git a/client/src/app/site/pages/organization/pages/committees/modules/committee-meeting-preview/committee-meeting-preview.component.ts b/client/src/app/site/pages/organization/pages/committees/modules/committee-meeting-preview/committee-meeting-preview.component.ts index 23d81a2c51..7a601f32a1 100644 --- a/client/src/app/site/pages/organization/pages/committees/modules/committee-meeting-preview/committee-meeting-preview.component.ts +++ b/client/src/app/site/pages/organization/pages/committees/modules/committee-meeting-preview/committee-meeting-preview.component.ts @@ -64,6 +64,13 @@ export class CommitteeMeetingPreviewComponent { return this.meeting?.locked_from_inside; } + public canEditMeetingSettings(): boolean { + if (this.isLockedFromInside && !this.operator.isSuperAdmin) { + return this.meeting.canEditMeetingSettings(this.operator.user); + } + return true; + } + public constructor( private translate: TranslateService, private meetingRepo: MeetingControllerService,