From 7dea808670c83bc675bf7cde53cf22f29fdc74df Mon Sep 17 00:00:00 2001 From: August Andersen Date: Mon, 30 Sep 2024 10:40:04 +0200 Subject: [PATCH] pre-fill all permissions that has autoadd chosen (and are either read or app admin) --- .../form-body-application.component.ts | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/app/shared/components/forms/form-body-application/form-body-application.component.ts b/src/app/shared/components/forms/form-body-application/form-body-application.component.ts index 498c82f5..93c198d5 100644 --- a/src/app/shared/components/forms/form-body-application/form-body-application.component.ts +++ b/src/app/shared/components/forms/form-body-application/form-body-application.component.ts @@ -12,7 +12,7 @@ import { UntypedFormControl } from "@angular/forms"; import { ControlledPropertyTypes } from "@app/device-model/Enums/controlled-propperty.enum"; import { ApplicationDeviceTypes, ApplicationDeviceTypeEntries } from "@shared/enums/device-type"; import { isPhoneNumberValid } from "@shared/validators/phone-number.validator"; -import { PermissionResponse } from "@app/admin/permission/permission.model"; +import { PermissionResponse, PermissionType } from "@app/admin/permission/permission.model"; import { takeUntil } from "rxjs/operators"; import { PermissionService } from "@app/admin/permission/permission.service"; import { MeService } from "@shared/services/me.service"; @@ -268,7 +268,18 @@ export class FormBodyApplicationComponent implements OnInit, OnDestroy { this.permissions = res.data.sort((a, b) => a.name.localeCompare(b.name, "da-DK", { numeric: true })); this.filteredPermissionsMulti.next(this.permissions.slice()); if (!this.id) { - this.application.permissionIds = [this.permissions[0].id]; + this.application.permissionIds = this.permissions.map(permission => { + if ( + permission.automaticallyAddNewApplications && + permission.type.find( + permissionType => + permissionType.type === PermissionType.OrganizationApplicationAdmin || + permissionType.type === PermissionType.Read + ) + ) { + return permission.id; + } + }); this.permissionMultiCtrl.setValue(this.application.permissionIds); } });