mirror of
https://github.com/BrenBroZAYT/gameyfin.git
synced 2026-06-16 08:15:48 +00:00
Fix parsing of "Coming soon" in date field
This commit is contained in:
+7
@@ -16,6 +16,9 @@ import java.util.*
|
|||||||
class SteamDateSerializer : KSerializer<Instant> {
|
class SteamDateSerializer : KSerializer<Instant> {
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
|
const val COMING_SOON_TEXT = "Coming Soon"
|
||||||
|
val COMING_SOON_FALLBACK_DATE: LocalDate = LocalDate.parse("2999-12-31")
|
||||||
|
|
||||||
val formatter: DateTimeFormatter = DateTimeFormatter.ofPattern("d MMM, yyyy", Locale.ENGLISH)
|
val formatter: DateTimeFormatter = DateTimeFormatter.ofPattern("d MMM, yyyy", Locale.ENGLISH)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -24,6 +27,10 @@ class SteamDateSerializer : KSerializer<Instant> {
|
|||||||
override fun serialize(encoder: Encoder, value: Instant) = encoder.encodeString(value.toString())
|
override fun serialize(encoder: Encoder, value: Instant) = encoder.encodeString(value.toString())
|
||||||
|
|
||||||
private fun fromString(dateString: String): Instant {
|
private fun fromString(dateString: String): Instant {
|
||||||
|
if (dateString.equals(COMING_SOON_TEXT, true)) {
|
||||||
|
return COMING_SOON_FALLBACK_DATE.atStartOfDay().toInstant(ZoneOffset.UTC)
|
||||||
|
}
|
||||||
|
|
||||||
val localDate = LocalDate.parse(dateString, formatter)
|
val localDate = LocalDate.parse(dateString, formatter)
|
||||||
return localDate.atStartOfDay().toInstant(ZoneOffset.UTC)
|
return localDate.atStartOfDay().toInstant(ZoneOffset.UTC)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,5 +2,5 @@ Manifest-Version: 1.0
|
|||||||
Plugin-Class: de.grimsi.gameyfin.plugins.steam.SteamPlugin
|
Plugin-Class: de.grimsi.gameyfin.plugins.steam.SteamPlugin
|
||||||
Plugin-Id: steam
|
Plugin-Id: steam
|
||||||
Plugin-Description: Steam Metadata
|
Plugin-Description: Steam Metadata
|
||||||
Plugin-Version: 1.0.0-alpha5
|
Plugin-Version: 1.0.0-alpha6
|
||||||
Plugin-Provider: grimsi
|
Plugin-Provider: grimsi
|
||||||
|
|||||||
Reference in New Issue
Block a user