@@ -13,10 +13,8 @@ import com.simplemobiletools.commons.helpers.*
1313import com.simplemobiletools.commons.models.RadioItem
1414import com.simplemobiletools.notes.pro.R
1515import com.simplemobiletools.notes.pro.dialogs.ExportNotesDialog
16- import com.simplemobiletools.notes.pro.extensions.config
17- import com.simplemobiletools.notes.pro.extensions.requestUnlockNotes
18- import com.simplemobiletools.notes.pro.extensions.updateWidgets
19- import com.simplemobiletools.notes.pro.extensions.widgetsDB
16+ import com.simplemobiletools.notes.pro.dialogs.ManageAutoBackupsDialog
17+ import com.simplemobiletools.notes.pro.extensions.*
2018import com.simplemobiletools.notes.pro.helpers.*
2119import com.simplemobiletools.notes.pro.models.Note
2220import com.simplemobiletools.notes.pro.models.Widget
@@ -62,6 +60,8 @@ class SettingsActivity : SimpleActivity() {
6260 setupCustomizeWidgetColors()
6361 setupNotesExport()
6462 setupNotesImport()
63+ setupEnableAutomaticBackups()
64+ setupManageAutomaticBackups()
6565 updateTextColors(settings_nested_scrollview)
6666
6767 arrayOf(
@@ -356,4 +356,43 @@ class SettingsActivity : SimpleActivity() {
356356 showErrorToast(e)
357357 }
358358 }
359+
360+ private fun setupEnableAutomaticBackups () {
361+ settings_backups_label.beVisibleIf(isRPlus())
362+ settings_enable_automatic_backups_holder.beVisibleIf(isRPlus())
363+ settings_enable_automatic_backups.isChecked = config.autoBackup
364+ settings_enable_automatic_backups_holder.setOnClickListener {
365+ val wasBackupDisabled = ! config.autoBackup
366+ if (wasBackupDisabled) {
367+ ManageAutoBackupsDialog (
368+ activity = this ,
369+ onSuccess = {
370+ enableOrDisableAutomaticBackups(true )
371+ scheduleNextAutomaticBackup()
372+ }
373+ )
374+ } else {
375+ cancelScheduledAutomaticBackup()
376+ enableOrDisableAutomaticBackups(false )
377+ }
378+ }
379+ }
380+
381+ private fun setupManageAutomaticBackups () {
382+ settings_manage_automatic_backups_holder.beVisibleIf(isRPlus() && config.autoBackup)
383+ settings_manage_automatic_backups_holder.setOnClickListener {
384+ ManageAutoBackupsDialog (
385+ activity = this ,
386+ onSuccess = {
387+ scheduleNextAutomaticBackup()
388+ }
389+ )
390+ }
391+ }
392+
393+ private fun enableOrDisableAutomaticBackups (enable : Boolean ) {
394+ config.autoBackup = enable
395+ settings_enable_automatic_backups.isChecked = enable
396+ settings_manage_automatic_backups_holder.beVisibleIf(enable)
397+ }
359398}
0 commit comments