TriliumSettings.kt 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. package io.github.zadam.triliumsender.services
  2. import android.app.Activity
  3. import android.content.Context
  4. class TriliumSettings constructor(ctx: Activity) {
  5. companion object {
  6. const val PREF_NAME = "io.github.zadam.triliumsender.setup"
  7. const val PREF_TRILIUM_ADDRESS = "trilium_address"
  8. const val PREF_API_TOKEN = "api_token"
  9. const val PREF_NOTE_LABEL = "trilium_note_label"
  10. }
  11. fun save(triliumAddress: String, apiToken: String, noteLabel: String) {
  12. val editor = prefs.edit()
  13. editor.putString(PREF_TRILIUM_ADDRESS, triliumAddress)
  14. editor.putString(PREF_API_TOKEN, apiToken)
  15. editor.putString(PREF_NOTE_LABEL, noteLabel)
  16. editor.apply()
  17. }
  18. private val prefs = ctx.getSharedPreferences(PREF_NAME, Context.MODE_PRIVATE)
  19. val triliumAddress
  20. get() = prefs.getString(PREF_TRILIUM_ADDRESS, "")!!
  21. val apiToken
  22. get() = prefs.getString(PREF_API_TOKEN, "")!!
  23. val noteLabel
  24. get() = prefs.getString(PREF_NOTE_LABEL, "")!!
  25. fun isConfigured() = !triliumAddress.isBlank() && !apiToken.isBlank()
  26. }