2023-11-14 00:38:43 +01:00
|
|
|
package me.vripper.gui.controller
|
2022-07-23 16:42:52 +01:00
|
|
|
|
2023-11-14 00:38:43 +01:00
|
|
|
import me.vripper.gui.model.settings.ConnectionSettingsModel
|
|
|
|
|
import me.vripper.gui.model.settings.DownloadSettingsModel
|
|
|
|
|
import me.vripper.gui.model.settings.SystemSettingsModel
|
|
|
|
|
import me.vripper.gui.model.settings.ViperSettingsModel
|
|
|
|
|
import me.vripper.model.*
|
|
|
|
|
import me.vripper.services.SettingsService
|
2024-02-22 21:13:24 +01:00
|
|
|
import tornadofx.*
|
2022-07-23 16:42:52 +01:00
|
|
|
|
|
|
|
|
class SettingsController : Controller() {
|
|
|
|
|
|
|
|
|
|
private val settingsService: SettingsService by di()
|
|
|
|
|
|
|
|
|
|
fun findDownloadSettings(): DownloadSettings {
|
|
|
|
|
return settingsService.settings.downloadSettings
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
fun findConnectionSettings(): ConnectionSettings {
|
|
|
|
|
return settingsService.settings.connectionSettings
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
fun findViperGirlsSettings(): ViperSettings {
|
|
|
|
|
return settingsService.settings.viperSettings
|
|
|
|
|
}
|
|
|
|
|
|
2023-11-14 00:38:43 +01:00
|
|
|
fun findSystemSettings(): SystemSettings {
|
|
|
|
|
return settingsService.settings.systemSettings
|
2023-05-21 15:52:15 +01:00
|
|
|
}
|
|
|
|
|
|
2022-07-23 16:42:52 +01:00
|
|
|
fun saveNewSettings(
|
|
|
|
|
downloadSettingsModel: DownloadSettingsModel,
|
|
|
|
|
connectionSettingsModel: ConnectionSettingsModel,
|
2023-05-21 15:52:15 +01:00
|
|
|
viperSettingsModel: ViperSettingsModel,
|
2023-11-14 00:38:43 +01:00
|
|
|
systemSettingsModel: SystemSettingsModel
|
2022-07-23 16:42:52 +01:00
|
|
|
) {
|
2024-02-22 21:13:24 +01:00
|
|
|
settingsService.newSettings(
|
|
|
|
|
Settings(
|
|
|
|
|
downloadSettings = DownloadSettings(
|
|
|
|
|
downloadSettingsModel.downloadPath,
|
|
|
|
|
downloadSettingsModel.autoStart,
|
|
|
|
|
downloadSettingsModel.autoQueueThreshold,
|
|
|
|
|
downloadSettingsModel.forceOrder,
|
|
|
|
|
downloadSettingsModel.forumSubfolder,
|
|
|
|
|
downloadSettingsModel.threadSubLocation,
|
|
|
|
|
downloadSettingsModel.clearCompleted,
|
|
|
|
|
downloadSettingsModel.appendPostId
|
|
|
|
|
),
|
|
|
|
|
connectionSettings = ConnectionSettings(
|
|
|
|
|
connectionSettingsModel.maxThreads,
|
|
|
|
|
connectionSettingsModel.maxTotalThreads,
|
|
|
|
|
connectionSettingsModel.timeout,
|
|
|
|
|
connectionSettingsModel.maxAttempts,
|
|
|
|
|
),
|
|
|
|
|
viperSettings = ViperSettings(
|
|
|
|
|
viperSettingsModel.login,
|
|
|
|
|
viperSettingsModel.username,
|
|
|
|
|
viperSettingsModel.password,
|
|
|
|
|
viperSettingsModel.thanks,
|
|
|
|
|
viperSettingsModel.host,
|
|
|
|
|
),
|
|
|
|
|
systemSettings =
|
2023-11-14 00:38:43 +01:00
|
|
|
SystemSettings(
|
|
|
|
|
systemSettingsModel.tempPath,
|
|
|
|
|
systemSettingsModel.cachePath,
|
|
|
|
|
systemSettingsModel.enable,
|
|
|
|
|
if (systemSettingsModel.pollingRate.isBlank()) 500 else systemSettingsModel.pollingRate.toInt(),
|
|
|
|
|
systemSettingsModel.logEntries.toInt()
|
2022-07-23 16:42:52 +01:00
|
|
|
)
|
2024-02-22 21:13:24 +01:00
|
|
|
)
|
|
|
|
|
)
|
2022-07-23 16:42:52 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
fun getProxies(): List<String> {
|
|
|
|
|
return settingsService.getProxies()
|
|
|
|
|
}
|
|
|
|
|
}
|