diff --git a/app/src/main/java/me/ash/reader/data/model/general/MarkAsReadConditions.kt b/app/src/main/java/me/ash/reader/data/model/general/MarkAsReadConditions.kt index 6ed92b23..b7d86175 100644 --- a/app/src/main/java/me/ash/reader/data/model/general/MarkAsReadConditions.kt +++ b/app/src/main/java/me/ash/reader/data/model/general/MarkAsReadConditions.kt @@ -19,7 +19,7 @@ enum class MarkAsReadConditions { ; fun toDate(): Date? = when (this) { - All -> null + All -> Date() else -> Calendar.getInstance().apply { time = Date() add(Calendar.DAY_OF_MONTH, when (this@MarkAsReadConditions) { diff --git a/app/src/main/java/me/ash/reader/data/repository/FeverRssRepository.kt b/app/src/main/java/me/ash/reader/data/repository/FeverRssRepository.kt index a1d6bb8a..879101d7 100644 --- a/app/src/main/java/me/ash/reader/data/repository/FeverRssRepository.kt +++ b/app/src/main/java/me/ash/reader/data/repository/FeverRssRepository.kt @@ -199,12 +199,13 @@ class FeverRssRepository @Inject constructor( ) { super.markAsRead(groupId, feedId, articleId, before, isUnread) val feverAPI = getFeverAPI() + var beforeUnixTimestamp = (before?.time ?: Date(Long.MAX_VALUE).time) / 1000 when { groupId != null -> { feverAPI.markGroup( status = if (isUnread) FeverDTO.StatusEnum.Unread else FeverDTO.StatusEnum.Read, id = groupId.dollarLast().toLong(), - before = before?.time ?: Date(Long.MAX_VALUE).time + before = beforeUnixTimestamp ) } @@ -212,7 +213,7 @@ class FeverRssRepository @Inject constructor( feverAPI.markFeed( status = if (isUnread) FeverDTO.StatusEnum.Unread else FeverDTO.StatusEnum.Read, id = feedId.dollarLast().toLong(), - before = before?.time ?: Date(Long.MAX_VALUE).time + before = beforeUnixTimestamp ) } @@ -228,7 +229,7 @@ class FeverRssRepository @Inject constructor( feverAPI.markFeed( status = if (isUnread) FeverDTO.StatusEnum.Unread else FeverDTO.StatusEnum.Read, id = it.id.dollarLast().toLong(), - before = before?.time ?: Date(Long.MAX_VALUE).time + before = beforeUnixTimestamp ) } }