diff --git a/app/src/main/java/com/github/libretube/api/obj/Streams.kt b/app/src/main/java/com/github/libretube/api/obj/Streams.kt index 78169e662..2f78f508d 100644 --- a/app/src/main/java/com/github/libretube/api/obj/Streams.kt +++ b/app/src/main/java/com/github/libretube/api/obj/Streams.kt @@ -2,18 +2,18 @@ package com.github.libretube.api.obj import com.github.libretube.db.obj.DownloadItem import com.github.libretube.enums.FileType +import com.github.libretube.extensions.toLocalDateSafe import com.github.libretube.extensions.toMillis import com.github.libretube.helpers.ProxyHelper import com.github.libretube.parcelable.DownloadData -import kotlin.io.path.Path -import kotlinx.datetime.LocalDate import kotlinx.serialization.Serializable +import kotlin.io.path.Path @Serializable data class Streams( val title: String, val description: String, - val uploadDate: LocalDate, + val uploadDate: String, val uploader: String, val uploaderUrl: String, val uploaderAvatar: String? = null, @@ -84,8 +84,8 @@ data class Streams( uploaderName = uploader, uploaderUrl = uploaderUrl, uploaderAvatar = uploaderAvatar, - uploadedDate = uploadDate.toString(), - uploaded = uploadDate.toMillis(), + uploadedDate = uploadDate, + uploaded = uploadDate.toLocalDateSafe().toMillis(), duration = duration, views = views, uploaderVerified = uploaderVerified, diff --git a/app/src/main/java/com/github/libretube/extensions/LocalDate.kt b/app/src/main/java/com/github/libretube/extensions/LocalDate.kt index 370d9a17a..089a6f7bb 100644 --- a/app/src/main/java/com/github/libretube/extensions/LocalDate.kt +++ b/app/src/main/java/com/github/libretube/extensions/LocalDate.kt @@ -3,5 +3,8 @@ package com.github.libretube.extensions import kotlinx.datetime.LocalDate import kotlinx.datetime.TimeZone import kotlinx.datetime.atStartOfDayIn +import kotlinx.datetime.toLocalDate fun LocalDate.toMillis() = this.atStartOfDayIn(TimeZone.UTC).toEpochMilliseconds() + +fun String.toLocalDateSafe() = this.substring(0, 10).toLocalDate() \ No newline at end of file diff --git a/app/src/main/java/com/github/libretube/services/DownloadService.kt b/app/src/main/java/com/github/libretube/services/DownloadService.kt index 98689be01..8e28534b4 100644 --- a/app/src/main/java/com/github/libretube/services/DownloadService.kt +++ b/app/src/main/java/com/github/libretube/services/DownloadService.kt @@ -28,6 +28,7 @@ import com.github.libretube.enums.FileType import com.github.libretube.extensions.formatAsFileSize import com.github.libretube.extensions.getContentLength import com.github.libretube.extensions.parcelableExtra +import com.github.libretube.extensions.toLocalDateSafe import com.github.libretube.extensions.toastFromMainThread import com.github.libretube.helpers.DownloadHelper import com.github.libretube.helpers.DownloadHelper.getNotificationId @@ -115,7 +116,7 @@ class DownloadService : LifecycleService() { streams.title, streams.description, streams.uploader, - streams.uploadDate, + streams.uploadDate.toLocalDateSafe(), thumbnailTargetPath ) Database.downloadDao().insertDownload(download) diff --git a/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt b/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt index 732afa373..b92a25eab 100644 --- a/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt +++ b/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt @@ -78,6 +78,7 @@ import com.github.libretube.extensions.seekBy import com.github.libretube.extensions.serializableExtra import com.github.libretube.extensions.setMetadata import com.github.libretube.extensions.toID +import com.github.libretube.extensions.toLocalDateSafe import com.github.libretube.extensions.toastFromMainDispatcher import com.github.libretube.extensions.togglePlayPauseState import com.github.libretube.extensions.updateParameters @@ -873,11 +874,9 @@ class PlayerFragment : Fragment(), OnlinePlayerOptions { } private fun localizeDate(streams: Streams): String { - return if (!streams.livestream) { - TextUtils.SEPARATOR + TextUtils.localizeDate(streams.uploadDate) - } else { - "" - } + if (streams.livestream) return "" + + return TextUtils.SEPARATOR + TextUtils.localizeDate(streams.uploadDate.toLocalDateSafe()) } @SuppressLint("SetTextI18n")