mirror of
https://github.com/gotson/komga.git
synced 2025-12-25 01:42:44 +01:00
refactor(komga): add backing fields for server settings
This commit is contained in:
parent
7057c28d2f
commit
e35d468388
1 changed files with 22 additions and 18 deletions
|
|
@ -10,36 +10,40 @@ import kotlin.time.Duration.Companion.days
|
|||
class KomgaSettingsProvider(
|
||||
private val serverSettingsDao: ServerSettingsDao,
|
||||
) {
|
||||
var deleteEmptyCollections: Boolean
|
||||
get() =
|
||||
serverSettingsDao.getSettingByKey(Settings.DELETE_EMPTY_COLLECTIONS.name, Boolean::class.java) ?: false
|
||||
set(value) =
|
||||
var deleteEmptyCollections: Boolean =
|
||||
serverSettingsDao.getSettingByKey(Settings.DELETE_EMPTY_COLLECTIONS.name, Boolean::class.java) ?: false
|
||||
set(value) {
|
||||
serverSettingsDao.saveSetting(Settings.DELETE_EMPTY_COLLECTIONS.name, value)
|
||||
field = value
|
||||
}
|
||||
|
||||
var deleteEmptyReadLists: Boolean
|
||||
get() =
|
||||
serverSettingsDao.getSettingByKey(Settings.DELETE_EMPTY_READLISTS.name, Boolean::class.java) ?: false
|
||||
set(value) =
|
||||
var deleteEmptyReadLists: Boolean =
|
||||
serverSettingsDao.getSettingByKey(Settings.DELETE_EMPTY_READLISTS.name, Boolean::class.java) ?: false
|
||||
set(value) {
|
||||
serverSettingsDao.saveSetting(Settings.DELETE_EMPTY_READLISTS.name, value)
|
||||
field = value
|
||||
}
|
||||
|
||||
var rememberMeKey: String
|
||||
get() =
|
||||
serverSettingsDao.getSettingByKey(Settings.REMEMBER_ME_KEY.name, String::class.java)
|
||||
?: getRandomRememberMeKey().also { serverSettingsDao.saveSetting(Settings.REMEMBER_ME_KEY.name, it) }
|
||||
set(value) =
|
||||
var rememberMeKey: String =
|
||||
serverSettingsDao.getSettingByKey(Settings.REMEMBER_ME_KEY.name, String::class.java)
|
||||
?: getRandomRememberMeKey().also { rememberMeKey = it }
|
||||
set(value) {
|
||||
serverSettingsDao.saveSetting(Settings.REMEMBER_ME_KEY.name, value)
|
||||
field = value
|
||||
}
|
||||
|
||||
fun renewRememberMeKey() {
|
||||
serverSettingsDao.saveSetting(Settings.REMEMBER_ME_KEY.name, getRandomRememberMeKey())
|
||||
rememberMeKey = getRandomRememberMeKey()
|
||||
}
|
||||
|
||||
private fun getRandomRememberMeKey() = RandomStringUtils.randomAlphanumeric(32)
|
||||
|
||||
var rememberMeDuration: Duration
|
||||
get() =
|
||||
(serverSettingsDao.getSettingByKey(Settings.REMEMBER_ME_DURATION.name, Int::class.java) ?: 365).days
|
||||
set(value) =
|
||||
var rememberMeDuration: Duration =
|
||||
(serverSettingsDao.getSettingByKey(Settings.REMEMBER_ME_DURATION.name, Int::class.java) ?: 365).days
|
||||
set(value) {
|
||||
serverSettingsDao.saveSetting(Settings.REMEMBER_ME_DURATION.name, value.inWholeDays.toInt())
|
||||
field = value
|
||||
}
|
||||
}
|
||||
|
||||
private enum class Settings {
|
||||
|
|
|
|||
Loading…
Reference in a new issue