Possibly fixed Anilist tracking

pull/3117/head
Jay 5 years ago
parent 3df6f10316
commit 715507be2a

@ -17,7 +17,7 @@ class Anilist(private val context: Context, id: Int) : TrackService(id) {
companion object { companion object {
const val READING = 1 const val READING = 1
const val COMPLETED = 2 const val COMPLETED = 2
const val ON_HOLD = 3 const val PAUSED = 3
const val DROPPED = 4 const val DROPPED = 4
const val PLANNING = 5 const val PLANNING = 5
const val REPEATING = 6 const val REPEATING = 6
@ -57,14 +57,14 @@ class Anilist(private val context: Context, id: Int) : TrackService(id) {
override fun getLogoColor() = Color.rgb(18, 25, 35) override fun getLogoColor() = Color.rgb(18, 25, 35)
override fun getStatusList(): List<Int> { override fun getStatusList(): List<Int> {
return listOf(READING, PLANNING, COMPLETED, REPEATING, ON_HOLD, DROPPED) return listOf(READING, PLANNING, COMPLETED, REPEATING, PAUSED, DROPPED)
} }
override fun getStatus(status: Int): String = with(context) { override fun getStatus(status: Int): String = with(context) {
when (status) { when (status) {
READING -> getString(R.string.reading) READING -> getString(R.string.reading)
COMPLETED -> getString(R.string.completed) COMPLETED -> getString(R.string.completed)
ON_HOLD -> getString(R.string.paused) PAUSED -> getString(R.string.paused)
DROPPED -> getString(R.string.dropped) DROPPED -> getString(R.string.dropped)
PLANNING -> getString(R.string.plan_to_read) PLANNING -> getString(R.string.plan_to_read)
REPEATING -> getString(R.string.repeating) REPEATING -> getString(R.string.repeating)

@ -1,10 +1,15 @@
package eu.kanade.tachiyomi.data.track.anilist package eu.kanade.tachiyomi.data.track.anilist
import android.app.DownloadManager
import android.content.Context
import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.data.database.models.Track import eu.kanade.tachiyomi.data.database.models.Track
import eu.kanade.tachiyomi.data.preference.PreferencesHelper import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault import eu.kanade.tachiyomi.data.preference.getOrDefault
import eu.kanade.tachiyomi.data.track.TrackManager import eu.kanade.tachiyomi.data.track.TrackManager
import eu.kanade.tachiyomi.data.track.model.TrackSearch import eu.kanade.tachiyomi.data.track.model.TrackSearch
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import uy.kohesive.injekt.injectLazy import uy.kohesive.injekt.injectLazy
import java.text.SimpleDateFormat import java.text.SimpleDateFormat
import java.util.* import java.util.*
@ -44,7 +49,9 @@ data class ALUserManga(
val list_status: String, val list_status: String,
val score_raw: Int, val score_raw: Int,
val chapters_read: Int, val chapters_read: Int,
val manga: ALManga) { val manga: ALManga,
val context: Context = Injekt.get<PreferencesHelper>().context
) {
fun toTrack() = Track.create(TrackManager.ANILIST).apply { fun toTrack() = Track.create(TrackManager.ANILIST).apply {
media_id = manga.media_id media_id = manga.media_id
@ -55,21 +62,23 @@ data class ALUserManga(
total_chapters = manga.total_chapters total_chapters = manga.total_chapters
} }
fun toTrackStatus() = when (list_status) { fun toTrackStatus() = with(context) {
"CURRENT" -> Anilist.READING when (list_status) {
"COMPLETED" -> Anilist.COMPLETED getString(R.string.reading) -> Anilist.READING
"PAUSED" -> Anilist.ON_HOLD getString(R.string.completed) -> Anilist.COMPLETED
"DROPPED" -> Anilist.DROPPED getString(R.string.paused) -> Anilist.PAUSED
"PLANNING" -> Anilist.PLANNING getString(R.string.dropped) -> Anilist.DROPPED
"REPEATING" -> Anilist.REPEATING getString(R.string.plan_to_read) -> Anilist.PLANNING
else -> throw NotImplementedError("Unknown status") getString(R.string.repeating)-> Anilist.REPEATING
else -> throw NotImplementedError("Unknown status")
}
} }
} }
fun Track.toAnilistStatus() = when (status) { fun Track.toAnilistStatus() = when (status) {
Anilist.READING -> "CURRENT" Anilist.READING -> "CURRENT"
Anilist.COMPLETED -> "COMPLETED" Anilist.COMPLETED -> "COMPLETED"
Anilist.ON_HOLD -> "PAUSED" Anilist.PAUSED -> "PAUSED"
Anilist.DROPPED -> "DROPPED" Anilist.DROPPED -> "DROPPED"
Anilist.PLANNING -> "PLANNING" Anilist.PLANNING -> "PLANNING"
Anilist.REPEATING -> "REPEATING" Anilist.REPEATING -> "REPEATING"

Loading…
Cancel
Save