Fix periodical backup creation interval

This commit is contained in:
Koitharu
2024-11-07 15:01:09 +02:00
parent cdce2af4a3
commit 1f0180d601
2 changed files with 9 additions and 4 deletions

View File

@@ -12,6 +12,7 @@ import androidx.appcompat.app.AppCompatDelegate
import androidx.collection.ArraySet
import androidx.core.content.edit
import androidx.core.os.LocaleListCompat
import androidx.core.util.TimeUtils
import androidx.documentfile.provider.DocumentFile
import androidx.preference.PreferenceManager
import dagger.hilt.android.qualifiers.ApplicationContext
@@ -34,6 +35,7 @@ import org.koitharu.kotatsu.reader.domain.ReaderColorFilter
import java.io.File
import java.net.Proxy
import java.util.EnumSet
import java.util.concurrent.TimeUnit
import javax.inject.Inject
import javax.inject.Singleton
@@ -471,7 +473,7 @@ class AppSettings @Inject constructor(@ApplicationContext context: Context) {
get() = prefs.getBoolean(KEY_BACKUP_PERIODICAL_ENABLED, false)
val periodicalBackupFrequency: Long
get() = prefs.getString(KEY_BACKUP_PERIODICAL_FREQUENCY, null)?.toLongOrNull() ?: 7L
get() = TimeUnit.DAYS.toMillis(prefs.getString(KEY_BACKUP_PERIODICAL_FREQUENCY, null)?.toLongOrNull() ?: 7L)
val periodicalBackupMaxCount: Int
get() = prefs.getInt(KEY_BACKUP_PERIODICAL_COUNT, 10)

View File

@@ -4,6 +4,7 @@ import android.content.Context
import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.text.format.DateUtils
import android.view.View
import androidx.activity.result.ActivityResultCallback
import androidx.activity.result.contract.ActivityResultContracts
@@ -22,7 +23,6 @@ import org.koitharu.kotatsu.core.util.ext.resolveFile
import org.koitharu.kotatsu.core.util.ext.tryLaunch
import org.koitharu.kotatsu.core.util.ext.viewLifecycleScope
import java.io.File
import java.text.SimpleDateFormat
import javax.inject.Inject
@AndroidEntryPoint
@@ -60,6 +60,7 @@ class PeriodicalBackupSettingsFragment : BasePreferenceFragment(R.string.periodi
context?.contentResolver?.takePersistableUriPermission(result, takeFlags)
settings.periodicalBackupDirectory = result
bindOutputSummary()
bindLastBackupInfo()
}
}
@@ -82,8 +83,10 @@ class PeriodicalBackupSettingsFragment : BasePreferenceFragment(R.string.periodi
backupStorage.getLastBackupDate()
}
preference.summary = lastDate?.let {
val formatter = SimpleDateFormat.getDateInstance(SimpleDateFormat.LONG)
preference.context.getString(R.string.last_successful_backup, formatter.format(it))
preference.context.getString(
R.string.last_successful_backup,
DateUtils.getRelativeTimeSpanString(it.time),
)
}
preference.isVisible = lastDate != null
}