diff --git a/android/navi-insurance/src/main/java/com/navi/insurance/pre/purchase/journey/composables/TextEditTextCalendarItemComposable.kt b/android/navi-insurance/src/main/java/com/navi/insurance/pre/purchase/journey/composables/TextEditTextCalendarItemComposable.kt index d3b479c121..92071de73b 100644 --- a/android/navi-insurance/src/main/java/com/navi/insurance/pre/purchase/journey/composables/TextEditTextCalendarItemComposable.kt +++ b/android/navi-insurance/src/main/java/com/navi/insurance/pre/purchase/journey/composables/TextEditTextCalendarItemComposable.kt @@ -93,7 +93,9 @@ fun TextEditTextCalendarItemComposable( horizontalArrangement = Arrangement.SpaceBetween, ) { item.title?.let { title -> NaviTextWidgetized(textFieldData = title) } - item.rightTitle?.let { rightTitle -> NaviTextWidgetized(textFieldData = rightTitle) } + item.rightTitle?.let { rightTitle -> + NaviTextWidgetized(textFieldData = rightTitle, widgetCallback = widgetCallback) + } } Spacer(modifier = Modifier.height(8.dp)) @@ -152,7 +154,7 @@ fun TextEditTextCalendarItemComposable( .border(1.dp, colorBorderAlt, RoundedCornerShape(4.dp)) .background(whiteColor, RoundedCornerShape(4.dp)) .clickable { - if (item.disabledCta != null) { + if (item.disabledCta != null || item.disableEditing.orFalse()) { item.disabledCta?.let { widgetCallback?.onClick(it) } } else { val c = Calendar.getInstance() diff --git a/android/navi-insurance/src/main/java/com/navi/insurance/pre/purchase/journey/composables/TextEditTextCalendarWidgetComposable.kt b/android/navi-insurance/src/main/java/com/navi/insurance/pre/purchase/journey/composables/TextEditTextCalendarWidgetComposable.kt index 3e34ff281b..a269c5cd0b 100644 --- a/android/navi-insurance/src/main/java/com/navi/insurance/pre/purchase/journey/composables/TextEditTextCalendarWidgetComposable.kt +++ b/android/navi-insurance/src/main/java/com/navi/insurance/pre/purchase/journey/composables/TextEditTextCalendarWidgetComposable.kt @@ -50,6 +50,20 @@ fun TextEditTextCalendarWidgetComposable( val memberNameMap = remember { HashMap() } val memberDobMap = remember { HashMap() } LaunchedEffect(Unit) { + itemList?.forEach { item -> + item.id?.let { id -> + val nameText = item.editTextData?.title?.text.orEmpty() + val dobText = item.calendar?.editTextData?.title?.text.orEmpty() + + if (nameText.isNotEmpty()) { + memberNameMap[id] = nameText + } + + if (dobText.isNotEmpty()) { + memberDobMap[id] = dobText + } + } + } val isValid = validateAllItems(itemList, memberNameMap, memberDobMap) isValidWidget( isValid, diff --git a/android/navi-widgets/src/main/java/com/navi/naviwidgets/utils/CalendarUtil.kt b/android/navi-widgets/src/main/java/com/navi/naviwidgets/utils/CalendarUtil.kt index 9193470e39..3661180ed7 100644 --- a/android/navi-widgets/src/main/java/com/navi/naviwidgets/utils/CalendarUtil.kt +++ b/android/navi-widgets/src/main/java/com/navi/naviwidgets/utils/CalendarUtil.kt @@ -8,6 +8,7 @@ package com.navi.naviwidgets.utils import com.navi.base.utils.MILLISECONDS_PER_SECOND +import com.navi.base.utils.log import com.navi.naviwidgets.adapters.STYLE_SPINNER import java.text.SimpleDateFormat import java.util.Calendar @@ -47,6 +48,11 @@ fun getFormattedDateInEnglish(year: Int, month: Int, day: Int): String { fun getFormattedDateInEnglishToDDMMYYYY(input: String): String { val inFmt = SimpleDateFormat("d MMM yyyy", Locale.ENGLISH) val outFmt = SimpleDateFormat("ddMMyyyy", Locale.ENGLISH) - val date = inFmt.parse(input) ?: return "" - return outFmt.format(date) + return try { + val date = inFmt.parse(input) ?: return "" + outFmt.format(date) + } catch (e: Exception) { + e.log() + "" + } }