v0.2.4: Add ArcaLive (아카라이브) hotdeal support & settings toggle & main filter
This commit is contained in:
@@ -48,19 +48,23 @@ class MainViewModel @Inject constructor(
|
||||
|
||||
private suspend fun initializeDefaultSiteConfigs() {
|
||||
val existingConfigs = siteConfigDao.getAllConfigs()
|
||||
if (existingConfigs.isEmpty()) {
|
||||
val defaultConfigs = SiteType.entries.flatMap { site ->
|
||||
site.boards.map { board ->
|
||||
SiteConfigEntity(
|
||||
siteBoardKey = "${site.name}_${board.id}",
|
||||
siteName = site.name,
|
||||
boardName = board.id,
|
||||
displayName = "${site.displayName} - ${board.displayName}",
|
||||
isEnabled = false
|
||||
)
|
||||
}
|
||||
val existingKeys = existingConfigs.map { it.siteBoardKey }.toSet()
|
||||
|
||||
val allDefaultConfigs = SiteType.entries.flatMap { site ->
|
||||
site.boards.map { board ->
|
||||
SiteConfigEntity(
|
||||
siteBoardKey = "${site.name}_${board.id}",
|
||||
siteName = site.name,
|
||||
boardName = board.id,
|
||||
displayName = "${site.displayName} - ${board.displayName}",
|
||||
isEnabled = false
|
||||
)
|
||||
}
|
||||
siteConfigDao.insertConfigs(defaultConfigs)
|
||||
}
|
||||
|
||||
val missingConfigs = allDefaultConfigs.filter { it.siteBoardKey !in existingKeys }
|
||||
if (missingConfigs.isNotEmpty()) {
|
||||
siteConfigDao.insertConfigs(missingConfigs)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user