|
@@ -147,19 +147,19 @@ class Anilist(private val context: Context, id: Int) : TrackService(id) {
|
|
}
|
|
}
|
|
|
|
|
|
override fun bind(track: Track): Observable<Track> {
|
|
override fun bind(track: Track): Observable<Track> {
|
|
- return runAsObservable({ api.findLibManga(track, getUsername().toInt()) })
|
|
|
|
- .flatMap { remoteTrack ->
|
|
|
|
- if (remoteTrack != null) {
|
|
|
|
- track.copyPersonalFrom(remoteTrack)
|
|
|
|
- track.library_id = remoteTrack.library_id
|
|
|
|
- runAsObservable({ update(track) })
|
|
|
|
- } else {
|
|
|
|
- // Set default fields if it's not found in the list
|
|
|
|
- track.score = DEFAULT_SCORE.toFloat()
|
|
|
|
- track.status = DEFAULT_STATUS
|
|
|
|
- runAsObservable({ add(track) })
|
|
|
|
- }
|
|
|
|
|
|
+ return runAsObservable({
|
|
|
|
+ val remoteTrack = api.findLibManga(track, getUsername().toInt())
|
|
|
|
+ if (remoteTrack != null) {
|
|
|
|
+ track.copyPersonalFrom(remoteTrack)
|
|
|
|
+ track.library_id = remoteTrack.library_id
|
|
|
|
+ update(track)
|
|
|
|
+ } else {
|
|
|
|
+ // Set default fields if it's not found in the list
|
|
|
|
+ track.score = DEFAULT_SCORE.toFloat()
|
|
|
|
+ track.status = DEFAULT_STATUS
|
|
|
|
+ add(track)
|
|
}
|
|
}
|
|
|
|
+ })
|
|
}
|
|
}
|
|
|
|
|
|
override fun search(query: String): Observable<List<TrackSearch>> {
|
|
override fun search(query: String): Observable<List<TrackSearch>> {
|
|
@@ -167,12 +167,12 @@ class Anilist(private val context: Context, id: Int) : TrackService(id) {
|
|
}
|
|
}
|
|
|
|
|
|
override fun refresh(track: Track): Observable<Track> {
|
|
override fun refresh(track: Track): Observable<Track> {
|
|
- return runAsObservable({ api.getLibManga(track, getUsername().toInt()) })
|
|
|
|
- .map { remoteTrack ->
|
|
|
|
- track.copyPersonalFrom(remoteTrack)
|
|
|
|
- track.total_chapters = remoteTrack.total_chapters
|
|
|
|
- track
|
|
|
|
- }
|
|
|
|
|
|
+ return runAsObservable({
|
|
|
|
+ val remoteTrack = api.getLibManga(track, getUsername().toInt())
|
|
|
|
+ track.copyPersonalFrom(remoteTrack)
|
|
|
|
+ track.total_chapters = remoteTrack.total_chapters
|
|
|
|
+ track
|
|
|
|
+ })
|
|
}
|
|
}
|
|
|
|
|
|
override suspend fun login(username: String, password: String) = login(password)
|
|
override suspend fun login(username: String, password: String) = login(password)
|