From bcf0f9f1e13353a639a682cfb678d860108b70a6 Mon Sep 17 00:00:00 2001 From: Alex Paulescu <alex.paulescu@gmail.com> Date: Wed, 14 Oct 2020 14:43:36 +0300 Subject: [PATCH] Disabled dates which exceed 21 days in the past (EXPOSUREAPP-3191) (#1385) * Disabled dates which exceed 21 days in the past * Fixed issue with detekt * Fixed codesmell Co-authored-by: harambasicluka <64483219+harambasicluka@users.noreply.github.com> Co-authored-by: Ralf Gehrer <ralfgehrer@users.noreply.github.com> --- .../ui/calendar/CalendarDayViewHolder.kt | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/calendar/CalendarDayViewHolder.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/calendar/CalendarDayViewHolder.kt index 393f585c0..3e3654695 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/calendar/CalendarDayViewHolder.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/calendar/CalendarDayViewHolder.kt @@ -38,8 +38,8 @@ class CalendarDayViewHolder(v: View) : RecyclerView.ViewHolder(v) { // Set day content description for talk back textView.contentDescription = day.date.toString(talkBackDateFormat) - // If date is after today - then disable click listener - if (!day.date.isAfter(today)) { + // If date is after today or exceeds 21 days in the past- then disable click listener + if (!day.date.isAfter(today) && !day.date.isBefore(today.minusDays(ONSET_PERIOD))) { textView.setOnClickListener { clickListener(day) } } @@ -55,8 +55,8 @@ class CalendarDayViewHolder(v: View) : RecyclerView.ViewHolder(v) { textView.setBackgroundResource(R.drawable.calendar_today_back) textView.setTextColor(ContextCompat.getColor(context, R.color.colorCalendarTodayText)) } - // Future - day.date.isAfter(today) -> { + // Future & past exceeding 21 days + day.date.isAfter(today) || day.date.isBefore(today.minusDays(ONSET_PERIOD)) -> { textView.setBackgroundResource(0) textView.setTextColor(ContextCompat.getColor(context, R.color.colorTextPrimary3)) } @@ -67,4 +67,9 @@ class CalendarDayViewHolder(v: View) : RecyclerView.ViewHolder(v) { } } } + + companion object { + // Max number of days for the onset of symptoms to be calculated + private const val ONSET_PERIOD = 21 + } } -- GitLab