use locale instead of string for language in AoDPlaylist
This commit is contained in:
parent
309a991007
commit
d76538cf28
|
@ -49,7 +49,6 @@ object AoDParser {
|
||||||
private var loginSuccess = false
|
private var loginSuccess = false
|
||||||
|
|
||||||
private val mediaList = arrayListOf<Media>() // actual media (data)
|
private val mediaList = arrayListOf<Media>() // actual media (data)
|
||||||
private val aodMediaList = arrayListOf<IAoDMedia>()
|
|
||||||
|
|
||||||
// gui media
|
// gui media
|
||||||
val guiMediaList = arrayListOf<ItemMedia>()
|
val guiMediaList = arrayListOf<ItemMedia>()
|
||||||
|
@ -345,23 +344,16 @@ object AoDParser {
|
||||||
}.awaitAll()
|
}.awaitAll()
|
||||||
|
|
||||||
playlists.forEach { aod ->
|
playlists.forEach { aod ->
|
||||||
// TODO improve language handling
|
|
||||||
val locale = when (aod.language) {
|
|
||||||
"ger" -> Locale.GERMAN
|
|
||||||
"jap" -> Locale.JAPANESE
|
|
||||||
else -> Locale.ROOT
|
|
||||||
}
|
|
||||||
|
|
||||||
aod.list.forEach { ep ->
|
aod.list.forEach { ep ->
|
||||||
try {
|
try {
|
||||||
if (media.hasEpisode(ep.mediaid)) {
|
if (media.hasEpisode(ep.mediaid)) {
|
||||||
media.getEpisodeById(ep.mediaid).streams.add(
|
media.getEpisodeById(ep.mediaid).streams.add(
|
||||||
Stream(ep.sources.first().file, locale)
|
Stream(ep.sources.first().file, aod.language)
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
media.episodes.add(Episode(
|
media.episodes.add(Episode(
|
||||||
id = ep.mediaid,
|
id = ep.mediaid,
|
||||||
streams = mutableListOf(Stream(ep.sources.first().file, locale)),
|
streams = mutableListOf(Stream(ep.sources.first().file, aod.language)),
|
||||||
posterUrl = ep.image,
|
posterUrl = ep.image,
|
||||||
title = ep.title,
|
title = ep.title,
|
||||||
description = ep.description,
|
description = ep.description,
|
||||||
|
@ -430,7 +422,7 @@ object AoDParser {
|
||||||
*/
|
*/
|
||||||
private fun parsePlaylistAsync(playlistPath: String, language: String): Deferred<AoDPlaylist> {
|
private fun parsePlaylistAsync(playlistPath: String, language: String): Deferred<AoDPlaylist> {
|
||||||
if (playlistPath == "[]") {
|
if (playlistPath == "[]") {
|
||||||
return CompletableDeferred(AoDPlaylist(listOf(), language))
|
return CompletableDeferred(AoDPlaylist(listOf(), Locale.ROOT))
|
||||||
}
|
}
|
||||||
|
|
||||||
return CoroutineScope(Dispatchers.IO).async(Dispatchers.IO) {
|
return CoroutineScope(Dispatchers.IO).async(Dispatchers.IO) {
|
||||||
|
@ -465,7 +457,12 @@ object AoDParser {
|
||||||
mediaid = it.asJsonObject.get("mediaid").asInt
|
mediaid = it.asJsonObject.get("mediaid").asInt
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
language
|
// TODO improve language handling (via display language etc.)
|
||||||
|
language = when (language) {
|
||||||
|
"ger" -> Locale.GERMAN
|
||||||
|
"jap" -> Locale.JAPANESE
|
||||||
|
else -> Locale.ROOT
|
||||||
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -103,7 +103,7 @@ data class Stream(
|
||||||
*/
|
*/
|
||||||
data class AoDPlaylist(
|
data class AoDPlaylist(
|
||||||
val list: List<Playlist>,
|
val list: List<Playlist>,
|
||||||
val language: String
|
val language: Locale
|
||||||
)
|
)
|
||||||
|
|
||||||
data class Playlist(
|
data class Playlist(
|
||||||
|
|
Loading…
Reference in New Issue