mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-11-04 08:08:55 +01:00 
			
		
		
		
	Add setting and calculate for update interval (#9399)
* Add Grace Period value and settings * Add functions to calculate nextUpdate * update per review * Move more into SetMangaUpdateInterval, keep wrapper
This commit is contained in:
		@@ -3,12 +3,16 @@ package eu.kanade.domain.manga.interactor
 | 
			
		||||
import eu.kanade.domain.manga.model.hasCustomCover
 | 
			
		||||
import eu.kanade.tachiyomi.data.cache.CoverCache
 | 
			
		||||
import eu.kanade.tachiyomi.source.model.SManga
 | 
			
		||||
import tachiyomi.domain.chapter.model.Chapter
 | 
			
		||||
import tachiyomi.domain.manga.interactor.getCurrentFetchRange
 | 
			
		||||
import tachiyomi.domain.manga.interactor.updateIntervalMeta
 | 
			
		||||
import tachiyomi.domain.manga.model.Manga
 | 
			
		||||
import tachiyomi.domain.manga.model.MangaUpdate
 | 
			
		||||
import tachiyomi.domain.manga.repository.MangaRepository
 | 
			
		||||
import tachiyomi.source.local.isLocal
 | 
			
		||||
import uy.kohesive.injekt.Injekt
 | 
			
		||||
import uy.kohesive.injekt.api.get
 | 
			
		||||
import java.time.ZonedDateTime
 | 
			
		||||
import java.util.Date
 | 
			
		||||
 | 
			
		||||
class UpdateManga(
 | 
			
		||||
@@ -73,6 +77,21 @@ class UpdateManga(
 | 
			
		||||
        )
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    suspend fun awaitUpdateIntervalMeta(
 | 
			
		||||
        manga: Manga,
 | 
			
		||||
        chapters: List<Chapter>,
 | 
			
		||||
        zonedDateTime: ZonedDateTime = ZonedDateTime.now(),
 | 
			
		||||
        setCurrentFetchRange: Pair<Long, Long> = getCurrentFetchRange(zonedDateTime),
 | 
			
		||||
    ): Boolean {
 | 
			
		||||
        val newMeta = updateIntervalMeta(manga, chapters, zonedDateTime, setCurrentFetchRange)
 | 
			
		||||
 | 
			
		||||
        return if (newMeta != null) {
 | 
			
		||||
            mangaRepository.update(newMeta)
 | 
			
		||||
        } else {
 | 
			
		||||
            true
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    suspend fun awaitUpdateLastUpdate(mangaId: Long): Boolean {
 | 
			
		||||
        return mangaRepository.update(MangaUpdate(id = mangaId, lastUpdate = Date().time))
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user