[SI-866]
BugFixing - Enable/Diable Fields for Role 'reader' with dependent field functionality
diff --git a/projects/grid-failure-information-app/src/app/shared/directives/form-disable.directive.ts b/projects/grid-failure-information-app/src/app/shared/directives/form-disable.directive.ts
index a042531..209c217 100644
--- a/projects/grid-failure-information-app/src/app/shared/directives/form-disable.directive.ts
+++ b/projects/grid-failure-information-app/src/app/shared/directives/form-disable.directive.ts
@@ -31,7 +31,7 @@
     }
 
     this._permissions$.pipe(take(1), takeUntil(this._endSubscriptions$)).subscribe(permissions => {
-      if (permissions.reader) {
+      if (!!permissions.reader) {
         this._appState$.dispatch(new DisableAction(formState.id));
       }
     });
diff --git a/projects/grid-failure-information-app/src/app/shared/store/reducers/grid-failures/grid-failure-details-form.reducer.ts b/projects/grid-failure-information-app/src/app/shared/store/reducers/grid-failures/grid-failure-details-form.reducer.ts
index e7129f8..9c3855c 100644
--- a/projects/grid-failure-information-app/src/app/shared/store/reducers/grid-failures/grid-failure-details-form.reducer.ts
+++ b/projects/grid-failure-information-app/src/app/shared/store/reducers/grid-failures/grid-failure-details-form.reducer.ts
@@ -62,14 +62,15 @@
  * @param controlId
  */
 export function setControlEditState(propState: any, formState: FormState<any>, controlIds: string[]): any {
-  if (formState.isDisabled) {
-    return propState;
-  }
   const dependentControlChanged: boolean = controlIds.some((controlId: string) => {
     const controlName: string = controlId.substring(controlId.indexOf('.') + 1, controlId.length);
     return !formState['controls'][controlName] || !formState['controls'][controlName]['value'];
   });
 
+  if (formState.isDisabled) {
+    return propState;
+  }
+
   if (dependentControlChanged) {
     return disable(propState);
   }