From d2ec70cf24798fb06040c8977508a6fc735afa4e Mon Sep 17 00:00:00 2001
From: OZGCloud <ozgcloud@mgm-tp.com>
Date: Tue, 12 Nov 2024 09:23:46 +0100
Subject: [PATCH] OZG-4310 OZG-7099 Add disabling to checkbox component

---
 .../user-add-form-container/user-add-form-service.ts          | 4 ++--
 .../user-add-form/user-add-form.component.html                | 2 +-
 .../user-add-form/user-add-form.component.ts                  | 4 ----
 .../lib/form/checkbox-editor/checkbox-editor.component.html   | 4 ++--
 .../dropdown-menu/dropdown-menu/dropdown-menu.component.ts    | 3 +--
 5 files changed, 6 insertions(+), 11 deletions(-)

diff --git a/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form-service.ts b/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form-service.ts
index aa45d1e92a..783d9bfd1a 100644
--- a/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form-service.ts
+++ b/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form-service.ts
@@ -37,7 +37,7 @@ export class UserAddFormService extends AbstractFormService {
           [UserAddFormService.ADMIN]: new FormControl(false),
         }),
         [UserAddFormService.ALFA_GROUP]: this.formBuilder.group({
-          [UserAddFormService.LOESCHEN]: new FormControl({}),
+          [UserAddFormService.LOESCHEN]: new FormControl(false),
           [UserAddFormService.USER]: new FormControl(false),
           [UserAddFormService.POSTSTELLE]: new FormControl(false),
         }),
@@ -69,7 +69,7 @@ export class UserAddFormService extends AbstractFormService {
 
   updateCheckboxStates(alfaGroup: UntypedFormGroup): void {
     for (const control of Object.values<AbstractControl>(alfaGroup.controls)) {
-      Boolean(control.value) ? control.enable({ emitEvent: false }) : control.disable({ emitEvent: false });
+      control[!!control.value ? 'enable' : 'disable']({ emitEvent: false });
     }
   }
 
diff --git a/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form/user-add-form.component.html b/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form/user-add-form.component.html
index 44f48e9a4b..637ec22a4b 100644
--- a/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form/user-add-form.component.html
+++ b/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form/user-add-form.component.html
@@ -24,5 +24,5 @@
     </div>
   </div>
 
-  <ods-button-with-spinner text="Speichern" dataTestId="save-button" (clickEmitter)="test()" />
+  <ods-button-with-spinner text="Speichern" dataTestId="save-button" />
 </div>
diff --git a/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form/user-add-form.component.ts b/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form/user-add-form.component.ts
index 87718ee709..6edd68af4a 100644
--- a/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form/user-add-form.component.ts
+++ b/alfa-client/libs/admin/settings/src/lib/users-roles/user-add-form-container/user-add-form/user-add-form.component.ts
@@ -22,8 +22,4 @@ import { UserAddFormService } from '../user-add-form-service';
 export class UserAddFormComponent {
   formService = inject(UserAddFormService);
   protected readonly UserAddFormService = UserAddFormService;
-
-  test() {
-    console.log(this.formService.form.value);
-  }
 }
diff --git a/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.html b/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.html
index a77d0e6d76..7f0e569973 100644
--- a/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.html
+++ b/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.html
@@ -1,8 +1,8 @@
 <ods-checkbox
-  [fieldControl]="fieldControl"
+  [fieldControl]="control.control"
   [inputId]="inputId"
   [label]="label"
-  [disabled]="fieldControl.disabled"
+  [disabled]="control.disabled"
   [hasError]="hasError"
 >
   <ods-validation-error
diff --git a/alfa-client/libs/design-system/src/lib/dropdown-menu/dropdown-menu/dropdown-menu.component.ts b/alfa-client/libs/design-system/src/lib/dropdown-menu/dropdown-menu/dropdown-menu.component.ts
index 35cc64b064..fd81fa2b27 100644
--- a/alfa-client/libs/design-system/src/lib/dropdown-menu/dropdown-menu/dropdown-menu.component.ts
+++ b/alfa-client/libs/design-system/src/lib/dropdown-menu/dropdown-menu/dropdown-menu.component.ts
@@ -24,8 +24,7 @@ import { twMerge } from 'tailwind-merge';
     </button>
     <div
       *ngIf="isPopupOpen"
-      class="bg-dropdownBg absolute max-h-120 min-w-44 max-w-80
-      animate-fadeIn overflow-y-auto rounded shadow-md focus:outline-none"
+      class="absolute z-50 max-h-120 min-w-44 max-w-80 animate-fadeIn overflow-y-auto rounded bg-dropdownBg shadow-md focus:outline-none"
       [ngClass]="alignTo === 'left' ? 'right-0' : 'left-0'"
       role="menu"
       aria-modal="true"
-- 
GitLab