mirror of
https://github.com/michaldrabik/showly.git
synced 2025-05-17 18:55:57 +08:00
Handle deletion of dropped show
This commit is contained in:
@ -101,6 +101,8 @@ interface AuthorizedTraktRemoteDataSource {
|
||||
|
||||
suspend fun deleteHiddenShow(request: SyncExportRequest)
|
||||
|
||||
suspend fun deleteDroppedShow(request: SyncExportRequest)
|
||||
|
||||
suspend fun deleteHiddenMovie(request: SyncExportRequest)
|
||||
|
||||
suspend fun deleteRating(show: Show)
|
||||
|
@ -199,13 +199,12 @@ internal class AuthorizedTraktApi(
|
||||
syncService.deleteWatchlist(request)
|
||||
}
|
||||
|
||||
override suspend fun deleteHiddenShow(request: SyncExportRequest) {
|
||||
override suspend fun deleteHiddenShow(request: SyncExportRequest) =
|
||||
usersService.deleteHidden("progress_watched", request)
|
||||
}
|
||||
|
||||
override suspend fun deleteHiddenMovie(request: SyncExportRequest) {
|
||||
usersService.deleteHidden("calendar", request)
|
||||
}
|
||||
override suspend fun deleteDroppedShow(request: SyncExportRequest) = usersService.deleteHidden("dropped", request)
|
||||
|
||||
override suspend fun deleteHiddenMovie(request: SyncExportRequest) = usersService.deleteHidden("calendar", request)
|
||||
|
||||
override suspend fun deleteRating(show: Show) {
|
||||
val requestIds = RatingRequestIds(show.ids?.trakt ?: -1)
|
||||
|
@ -7,8 +7,11 @@ import com.michaldrabik.repository.UserTraktManager
|
||||
import com.michaldrabik.ui_base.common.sheets.remove_trakt.RemoveTraktBottomSheet.Mode
|
||||
import com.michaldrabik.ui_model.IdTrakt
|
||||
import dagger.hilt.android.scopes.ViewModelScoped
|
||||
import kotlinx.coroutines.delay
|
||||
import javax.inject.Inject
|
||||
|
||||
private const val TRAKT_DELAY = 1500L
|
||||
|
||||
@ViewModelScoped
|
||||
class RemoveTraktHiddenCase @Inject constructor(
|
||||
private val remoteSource: AuthorizedTraktRemoteDataSource,
|
||||
@ -26,6 +29,8 @@ class RemoveTraktHiddenCase @Inject constructor(
|
||||
Mode.SHOW -> {
|
||||
val request = SyncExportRequest(shows = items)
|
||||
remoteSource.deleteHiddenShow(request)
|
||||
delay(TRAKT_DELAY)
|
||||
remoteSource.deleteDroppedShow(request)
|
||||
}
|
||||
Mode.MOVIE -> {
|
||||
val request = SyncExportRequest(movies = items)
|
||||
|
Reference in New Issue
Block a user