diff --git a/feature/exit-form/src/main/java/com/simprints/feature/exitform/ExitFormConfigurationBuilder.kt b/feature/exit-form/src/main/java/com/simprints/feature/exitform/ExitFormConfigurationBuilder.kt
index 9450ccb99e..e56b8ddf1f 100644
--- a/feature/exit-form/src/main/java/com/simprints/feature/exitform/ExitFormConfigurationBuilder.kt
+++ b/feature/exit-form/src/main/java/com/simprints/feature/exitform/ExitFormConfigurationBuilder.kt
@@ -24,6 +24,7 @@ fun defaultOptions() = setOf(
ExitFormOption.PersonNotPresent,
ExitFormOption.TooYoung,
ExitFormOption.WrongAgeGroupSelected,
+ ExitFormOption.UncooperativeChild,
ExitFormOption.Other,
)
@@ -38,6 +39,7 @@ fun scannerOptions() = setOf(
ExitFormOption.PersonNotPresent,
ExitFormOption.TooYoung,
ExitFormOption.WrongAgeGroupSelected,
+ ExitFormOption.UncooperativeChild,
ExitFormOption.Other,
)
diff --git a/feature/exit-form/src/main/java/com/simprints/feature/exitform/config/ExitFormOption.kt b/feature/exit-form/src/main/java/com/simprints/feature/exitform/config/ExitFormOption.kt
index 4f74ba96f4..0a3e43f131 100644
--- a/feature/exit-form/src/main/java/com/simprints/feature/exitform/config/ExitFormOption.kt
+++ b/feature/exit-form/src/main/java/com/simprints/feature/exitform/config/ExitFormOption.kt
@@ -49,6 +49,11 @@ enum class ExitFormOption(
logName = "Wrong age group selected",
answer = RefusalEvent.RefusalPayload.Answer.WRONG_AGE_GROUP_SELECTED,
),
+ UncooperativeChild(
+ requiresInfo = false,
+ logName = "Uncooperative child selected",
+ answer = RefusalEvent.RefusalPayload.Answer.UNCOOPERATIVE_CHILD,
+ ),
Other(
requiresInfo = true,
logName = "Other",
diff --git a/feature/exit-form/src/main/java/com/simprints/feature/exitform/screen/ExitFormFragment.kt b/feature/exit-form/src/main/java/com/simprints/feature/exitform/screen/ExitFormFragment.kt
index 5453e02000..a5ce325c8d 100644
--- a/feature/exit-form/src/main/java/com/simprints/feature/exitform/screen/ExitFormFragment.kt
+++ b/feature/exit-form/src/main/java/com/simprints/feature/exitform/screen/ExitFormFragment.kt
@@ -62,6 +62,7 @@ internal class ExitFormFragment : Fragment(R.layout.fragment_exit_form) {
exitFromRadioPersonNotPresent.isVisible = options.contains(ExitFormOption.PersonNotPresent)
exitFormRadioTooYoung.isVisible = options.contains(ExitFormOption.TooYoung)
exitFormRadioWrongAgeGroupSelected.isVisible = options.contains(ExitFormOption.WrongAgeGroupSelected)
+ exitFormUncooperativeChild.isVisible = options.contains(ExitFormOption.UncooperativeChild)
exitFormRadioOther.isVisible = options.contains(ExitFormOption.Other)
}
@@ -92,6 +93,7 @@ internal class ExitFormFragment : Fragment(R.layout.fragment_exit_form) {
R.id.exitFormRadioScannerNotWorking -> ExitFormOption.ScannerNotWorking
R.id.exitFromRadioPersonNotPresent -> ExitFormOption.PersonNotPresent
R.id.exitFormRadioTooYoung -> ExitFormOption.TooYoung
+ R.id.exitFormUncooperativeChild -> ExitFormOption.UncooperativeChild
R.id.exitFormRadioWrongAgeGroupSelected -> ExitFormOption.WrongAgeGroupSelected
else -> ExitFormOption.Other
}
diff --git a/feature/exit-form/src/main/res/layout-land/fragment_exit_form.xml b/feature/exit-form/src/main/res/layout-land/fragment_exit_form.xml
index f2c5aff7c1..5ab1b67527 100644
--- a/feature/exit-form/src/main/res/layout-land/fragment_exit_form.xml
+++ b/feature/exit-form/src/main/res/layout-land/fragment_exit_form.xml
@@ -101,6 +101,13 @@
android:layout_height="wrap_content"
android:text="@string/exit_form_reason_wrong_age_group_selected" />
+
+
+
+
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toBottomOf="@+id/exitFormScrollView">
ApiAnswer.REFUSED_NOT_PRESENT
REFUSED_YOUNG -> ApiAnswer.REFUSED_YOUNG
WRONG_AGE_GROUP_SELECTED -> ApiAnswer.WRONG_AGE_GROUP_SELECTED
+ UNCOOPERATIVE_CHILD -> ApiAnswer.UNCOOPERATIVE_CHILD
OTHER -> ApiAnswer.OTHER
}
diff --git a/infra/events/src/main/java/com/simprints/infra/events/event/domain/models/RefusalEvent.kt b/infra/events/src/main/java/com/simprints/infra/events/event/domain/models/RefusalEvent.kt
index 431e5582f0..f23079ff69 100644
--- a/infra/events/src/main/java/com/simprints/infra/events/event/domain/models/RefusalEvent.kt
+++ b/infra/events/src/main/java/com/simprints/infra/events/event/domain/models/RefusalEvent.kt
@@ -51,7 +51,6 @@ data class RefusalEvent(
@Keep
enum class Answer {
-
REFUSED_RELIGION,
REFUSED_DATA_CONCERNS,
REFUSED_PERMISSION,
@@ -60,6 +59,7 @@ data class RefusalEvent(
REFUSED_NOT_PRESENT,
REFUSED_YOUNG,
WRONG_AGE_GROUP_SELECTED,
+ UNCOOPERATIVE_CHILD,
OTHER
}
}
diff --git a/infra/resources/src/main/res/values/strings.xml b/infra/resources/src/main/res/values/strings.xml
index a099632f4a..5debd6cc92 100644
--- a/infra/resources/src/main/res/values/strings.xml
+++ b/infra/resources/src/main/res/values/strings.xml
@@ -67,6 +67,7 @@
Person not present
Too young
Wrong age group selected
+ Uncooperative child
Other