From: Olaf Wintermann Date: Wed, 10 Sep 2025 17:04:12 +0000 (+0200) Subject: use different date formatter if the item date is today X-Git-Url: https://uap-core.de/gitweb/?a=commitdiff_plain;h=e8b4dd53dbe512b34f9072a4b19a17da29c282fe;p=rssreader.git use different date formatter if the item date is today --- diff --git a/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt b/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt index 14ed8c5..e1703c4 100644 --- a/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt +++ b/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt @@ -4,7 +4,6 @@ import de.unixwork.ui.ColumnType import de.unixwork.ui.SubListItem import de.unixwork.ui.TabViewType import de.unixwork.ui.TableModel -import de.unixwork.ui.UiInteger import de.unixwork.ui.UiList import de.unixwork.ui.UiString import de.unixwork.ui.UiText @@ -12,6 +11,7 @@ import de.unixwork.ui.kotlin.Toplevel import de.unixwork.ui.kotlin.sidebarWindow import de.unixwork.ui.kotlin.dialogWindow import de.unixwork.ui.kotlin.openFileDialog +import java.time.LocalDate import java.time.ZoneId import java.time.format.DateTimeFormatter @@ -20,8 +20,8 @@ class MainWindow() { val sourceList = FeedSourceList() val feedList = FeedList() - // TODO: date format config - val formatter = DateTimeFormatter.ofPattern(App.settings.dateFormat).withZone(ZoneId.systemDefault()) + val dateFormatter = DateTimeFormatter.ofPattern(App.settings.dateFormat).withZone(ZoneId.systemDefault()) + val dateTodayFormatter = DateTimeFormatter.ofPattern(App.settings.dateFormatToday).withZone(ZoneId.systemDefault()) var newFeedPrevGroup = 0 @@ -108,7 +108,18 @@ class MainWindow() { var result: String? = null when(col) { 0 -> result = elm.title - 1 -> result = formatter.format(elm.updated ?: elm.pubDate) + 1 -> { + val date = elm.updated ?: elm.pubDate + date?.let { + val localDate = date.atZone(ZoneId.systemDefault()).toLocalDate() + val now = LocalDate.now() + if(localDate.isEqual(now)) { + result = dateTodayFormatter.format(date) + } else { + result = dateFormatter.format(date) + } + } + } } result }