Last fixes.
This commit is contained in:
@ -121,54 +121,70 @@ class Repository(private val api: SelfossApi, private val apiDetails: ApiDetails
|
||||
return api.sources()
|
||||
}
|
||||
|
||||
suspend fun markAsRead(id: Int): Boolean {
|
||||
suspend fun markAsRead(item: SelfossModel.Item): Boolean {
|
||||
// TODO: Check internet connection
|
||||
val success = api.markAsRead(id.toString())?.isSuccess == true
|
||||
val success = markAsReadById(item.id)
|
||||
|
||||
if (success) {
|
||||
markAsReadLocally(items.first {it.id == id})
|
||||
markAsReadLocally(item)
|
||||
}
|
||||
return success
|
||||
}
|
||||
|
||||
suspend fun unmarkAsRead(id: Int): Boolean {
|
||||
suspend fun markAsReadById(id: Int): Boolean {
|
||||
// TODO: Check internet connection
|
||||
val success = api.unmarkAsRead(id.toString())?.isSuccess == true
|
||||
return api.markAsRead(id.toString())?.isSuccess == true
|
||||
}
|
||||
|
||||
suspend fun unmarkAsRead(item: SelfossModel.Item): Boolean {
|
||||
val success = unmarkAsReadById(item.id)
|
||||
|
||||
if (success) {
|
||||
unmarkAsReadLocally(items.first {it.id == id})
|
||||
unmarkAsReadLocally(item)
|
||||
}
|
||||
return success
|
||||
}
|
||||
|
||||
suspend fun starr(id: Int): Boolean {
|
||||
suspend fun unmarkAsReadById(id: Int): Boolean {
|
||||
// TODO: Check internet connection
|
||||
return api.unmarkAsRead(id.toString())?.isSuccess == true
|
||||
}
|
||||
|
||||
suspend fun starr(item: SelfossModel.Item): Boolean {
|
||||
val success = starrById(item.id)
|
||||
|
||||
if (success) {
|
||||
starrLocally(item)
|
||||
}
|
||||
return success
|
||||
}
|
||||
|
||||
suspend fun starrById(id: Int): Boolean {
|
||||
// TODO: Check success, store in DB
|
||||
val success = api.starr(id.toString())?.isSuccess == true
|
||||
return api.starr(id.toString())?.isSuccess == true
|
||||
}
|
||||
|
||||
suspend fun unstarr(item: SelfossModel.Item): Boolean {
|
||||
val success = unstarrById(item.id)
|
||||
|
||||
if (success) {
|
||||
starrLocally(items.first {it.id == id})
|
||||
unstarrLocally(item)
|
||||
}
|
||||
return success
|
||||
}
|
||||
|
||||
suspend fun unstarr(id: Int): Boolean {
|
||||
suspend fun unstarrById(id: Int): Boolean {
|
||||
// TODO: Check internet connection
|
||||
val success = api.unstarr(id.toString())?.isSuccess == true
|
||||
|
||||
if (success) {
|
||||
unstarrLocally(items.first {it.id == id})
|
||||
}
|
||||
return success
|
||||
return api.unstarr(id.toString())?.isSuccess == true
|
||||
}
|
||||
|
||||
suspend fun markAllAsRead(ids: List<Int>): Boolean {
|
||||
suspend fun markAllAsRead(items: ArrayList<SelfossModel.Item>): Boolean {
|
||||
// TODO: Check Internet connectivity, store in DB
|
||||
|
||||
val success = api.markAllAsRead(ids.map { it.toString() })?.isSuccess == true
|
||||
val success = api.markAllAsRead(items.map { it.id.toString() })?.isSuccess == true
|
||||
|
||||
if (success) {
|
||||
val itemsToMark = items.filter { it.id in ids }
|
||||
for (item in itemsToMark) {
|
||||
for (item in items) {
|
||||
markAsReadLocally(item)
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user