From c9bab2b196f1b722fc55ee94caf3f08e99fbba6c Mon Sep 17 00:00:00 2001
From: gcarron <gcarron@grandlyon.com>
Date: Wed, 3 Feb 2021 11:40:51 +0100
Subject: [PATCH] Fixed form choices

---
 .../ProfileType/ProfileTypeFinished.tsx          |  7 ++++++-
 .../ProfileType/ProfileTypeFormMultiChoice.tsx   | 16 ++++++++++++++++
 src/services/profileType.service.ts              |  2 +-
 3 files changed, 23 insertions(+), 2 deletions(-)

diff --git a/src/components/ProfileType/ProfileTypeFinished.tsx b/src/components/ProfileType/ProfileTypeFinished.tsx
index 2b13b2826..12cefc0fe 100644
--- a/src/components/ProfileType/ProfileTypeFinished.tsx
+++ b/src/components/ProfileType/ProfileTypeFinished.tsx
@@ -29,7 +29,12 @@ const ProfileTypeFinished: React.FC<ProfileTypeFinishedProps> = ({
     const consistentProfileType = ProfileTypeService.checkConsistency(
       profileType
     )
-    dispatch(updateProfile({ profileType: consistentProfileType }))
+    dispatch(
+      updateProfile({
+        profileType: consistentProfileType,
+        isProfileTypeCompleted: true,
+      })
+    )
   }, [dispatch, profileType])
 
   return (
diff --git a/src/components/ProfileType/ProfileTypeFormMultiChoice.tsx b/src/components/ProfileType/ProfileTypeFormMultiChoice.tsx
index 5352040c8..039cd2a1c 100644
--- a/src/components/ProfileType/ProfileTypeFormMultiChoice.tsx
+++ b/src/components/ProfileType/ProfileTypeFormMultiChoice.tsx
@@ -44,10 +44,26 @@ const ProfileTypeFormMultiChoice: React.FC<ProfileTypeFormMultiChoiceProps> = ({
       remove(tempAnswer, function(n) {
         return n === 'none' || n === value
       })
+      remove(tempAnswer, function(n) {
+        return n === 'collective_heater' || n === value
+      })
+      remove(tempAnswer, function(n) {
+        return n === 'other' || n === value
+      })
+    } else if (value === 'collective_heater' && !tempAnswer.includes(value)) {
+      tempAnswer = [value]
+    } else if (value === 'other' && !tempAnswer.includes(value)) {
+      tempAnswer = [value]
     } else {
       remove(tempAnswer, function(n) {
         return n === 'none'
       })
+      remove(tempAnswer, function(n) {
+        return n === 'collective_heater'
+      })
+      remove(tempAnswer, function(n) {
+        return n === 'other'
+      })
       tempAnswer.push(value)
     }
     setAnswer(tempAnswer)
diff --git a/src/services/profileType.service.ts b/src/services/profileType.service.ts
index 6f6e61046..00a3c7dd4 100644
--- a/src/services/profileType.service.ts
+++ b/src/services/profileType.service.ts
@@ -623,7 +623,7 @@ export default class ProfileTypeService {
         }
       case ProfileTypeStepForm.HOT_WATER_EQUIPMENT:
         return {
-          type: ProfileTypeFormType.SINGLE_CHOICE,
+          type: ProfileTypeFormType.MULTI_CHOICE,
           attribute: 'hotWaterEquipment',
           choices: Object.values(HotWaterEquipment),
         }
-- 
GitLab