diff --git a/app/src/main/java/dev/jdtech/jellyfin/viewmodels/MediaInfoViewModel.kt b/app/src/main/java/dev/jdtech/jellyfin/viewmodels/MediaInfoViewModel.kt index 2230c8fd..8de7fa2a 100644 --- a/app/src/main/java/dev/jdtech/jellyfin/viewmodels/MediaInfoViewModel.kt +++ b/app/src/main/java/dev/jdtech/jellyfin/viewmodels/MediaInfoViewModel.kt @@ -13,7 +13,6 @@ import dev.jdtech.jellyfin.repository.JellyfinRepository import dev.jdtech.jellyfin.utils.* import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.flow.MutableStateFlow -import kotlinx.coroutines.flow.collect import kotlinx.coroutines.launch import kotlinx.coroutines.withContext import org.jellyfin.sdk.api.client.exception.ApiClientException @@ -244,18 +243,18 @@ constructor( } private fun getDateString(item: BaseItemDto): String { - val dateString: String = item.productionYear.toString() - return when (item.status) { - "Continuing" -> dateString.plus(" - Present") - "Ended" -> { - return if (item.productionYear == item.endDate?.year) { - dateString - } else { - dateString.plus(" - ${item.endDate?.year}") - } + val dateRange: MutableList = mutableListOf() + item.productionYear?.let { dateRange.add(it.toString()) } + when (item.status) { + "Continuing" -> { + dateRange.add("Present") + } + "Ended" -> { + item.endDate?.let { dateRange.add(it.year.toString()) } } - else -> dateString } + if (dateRange.count() > 1 && dateRange[0] == dateRange[1]) return dateRange[0] + return dateRange.joinToString(separator = " - ") } fun loadDownloadRequestItem(itemId: UUID) { @@ -266,7 +265,12 @@ constructor( val metadata = baseItemDtoToDownloadMetadata(downloadItem) downloadRequestItem = DownloadRequestItem(uri, itemId, metadata) downloadMedia = true - requestDownload(downloadDatabase, Uri.parse(downloadRequestItem.uri), downloadRequestItem, application) + requestDownload( + downloadDatabase, + Uri.parse(downloadRequestItem.uri), + downloadRequestItem, + application + ) } }