From 8e5dc491a9cb5ebe3ce9071d31ff8a54b272781f Mon Sep 17 00:00:00 2001 From: Erin Date: Wed, 24 Aug 2022 17:19:26 -0400 Subject: [PATCH 1/5] Replace old Module.setting() calls --- extension/data/modules/betterbuttons.js | 5 +++-- extension/data/tbmodule.js | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/extension/data/modules/betterbuttons.js b/extension/data/modules/betterbuttons.js index 2ed2bb7ec..85f367ef8 100644 --- a/extension/data/modules/betterbuttons.js +++ b/extension/data/modules/betterbuttons.js @@ -1,6 +1,7 @@ import TBModule, {Module} from '../tbmodule.js'; import * as TBApi from '../tbapi.js'; import * as TBCore from '../tbcore.js'; +import {getSettingAsync} from '../tbstorage.js'; const self = new Module({ name: 'Better Buttons', @@ -322,13 +323,13 @@ function initRemoveConfirmation () { // }, 100); }); // Remove and spam - $body.on('click', '.flat-list .remove-button .togglebutton', function () { + $body.on('click', '.flat-list .remove-button .togglebutton', async function () { const $button = $(this).closest('.remove-button'), yes = $button.find('.yes')[0]; // Don't remove if removal reasons are enabled and the button isn't for spam if (!$body.hasClass('tb-removal-reasons') - || $body.hasClass('tb-removal-reasons') && !TBModule.modules.RReasons.setting('commentReasons') + || $body.hasClass('tb-removal-reasons') && !await getSettingAsync('RReasons', 'commentReasons') || $button.children().first().attr('value') === 'spammed' ) { if (yes) { diff --git a/extension/data/tbmodule.js b/extension/data/tbmodule.js index 8ecacaaaf..f3aff5fa8 100644 --- a/extension/data/tbmodule.js +++ b/extension/data/tbmodule.js @@ -401,7 +401,7 @@ const TBModule = { } else { TBui.textFeedback(`Backing up settings to /r/${sub}`, TBui.FEEDBACK_NEUTRAL); TBCore.exportSettings(sub); - await TBModule.modules['Modbar'].setting('lastExport', TBHelpers.getTime()); + await TBStorage.setSettingAsync('Modbar.lastExport', TBHelpers.getTime()); TBCore.clearCache(); window.location.reload(); } From a87646a001acd5d24c2405d0754f88d0d7155388 Mon Sep 17 00:00:00 2001 From: Erin Date: Wed, 24 Aug 2022 17:19:32 -0400 Subject: [PATCH 2/5] Remove unused import from betterbuttons --- extension/data/modules/betterbuttons.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extension/data/modules/betterbuttons.js b/extension/data/modules/betterbuttons.js index 85f367ef8..8921ef27e 100644 --- a/extension/data/modules/betterbuttons.js +++ b/extension/data/modules/betterbuttons.js @@ -1,4 +1,4 @@ -import TBModule, {Module} from '../tbmodule.js'; +import {Module} from '../tbmodule.js'; import * as TBApi from '../tbapi.js'; import * as TBCore from '../tbcore.js'; import {getSettingAsync} from '../tbstorage.js'; From e80e6e4f148b16356ab75e71a6910da76593c718 Mon Sep 17 00:00:00 2001 From: Erin Date: Wed, 24 Aug 2022 17:21:29 -0400 Subject: [PATCH 3/5] Don't do weird module lookup to get settings --- extension/data/tbmodule.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/extension/data/tbmodule.js b/extension/data/tbmodule.js index f3aff5fa8..5c6133d64 100644 --- a/extension/data/tbmodule.js +++ b/extension/data/tbmodule.js @@ -337,7 +337,7 @@ const TBModule = { TBStorage.setSetting('Utils', 'betaMode', $('#betaMode').prop('checked'), false); TBStorage.setSetting('Utils', 'advancedMode', $('#advancedMode').prop('checked'), false); - await TBModule.modules['Modbar'].set('showExportReminder', $('#showExportReminder').prop('checked')); + await TBStorage.setSettingAsync('Modbar', 'showExportReminder', $('#showExportReminder').prop('checked')); // save cache settings. TBStorage.setSetting('Utils', 'longLength', parseInt($('input[name=longLength]').val()), false); @@ -386,7 +386,7 @@ const TBModule = { if ($(e.target).hasClass('tb-settings-import')) { await TBCore.importSettings(sub); - await TBModule.modules['Modbar'].set('lastExport', TBHelpers.getTime()); + await TBStorage.setSettingAsync('Modbar', 'lastExport', TBHelpers.getTime()); TBCore.clearCache(); TBStorage.verifiedSettingsSave(succ => { if (succ) { From 1eedd669b7214e986309a477d80d2e52c063885f Mon Sep 17 00:00:00 2001 From: Erin Date: Wed, 24 Aug 2022 17:22:07 -0400 Subject: [PATCH 4/5] Convert some more storage calls to async variants --- extension/data/tbmodule.js | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/extension/data/tbmodule.js b/extension/data/tbmodule.js index 5c6133d64..34380b344 100644 --- a/extension/data/tbmodule.js +++ b/extension/data/tbmodule.js @@ -69,17 +69,17 @@ const TBModule = { // // preload some generic variables // - const debugMode = TBStorage.getSetting('Utils', 'debugMode', false), - betaMode = TBStorage.getSetting('Utils', 'betaMode', false), - advancedMode = TBStorage.getSetting('Utils', 'advancedMode', false), + const debugMode = await TBStorage.getSettingAsync('Utils', 'debugMode', false), + betaMode = await TBStorage.getSettingAsync('Utils', 'betaMode', false), + advancedMode = await TBStorage.getSettingAsync('Utils', 'advancedMode', false), - settingSub = TBStorage.getSetting('Utils', 'settingSub', ''), - shortLength = TBStorage.getSetting('Utils', 'shortLength', 15), - longLength = TBStorage.getSetting('Utils', 'longLength', 45), + settingSub = await TBStorage.getSettingAsync('Utils', 'settingSub', ''), + shortLength = await TBStorage.getSettingAsync('Utils', 'shortLength', 15), + longLength = await TBStorage.getSettingAsync('Utils', 'longLength', 45), // last export stuff - lastExport = await TBModule.modules['Modbar'].get('lastExport'), - showExportReminder = await TBModule.modules['Modbar'].get('showExportReminder'), + lastExport = await TBStorage.getSettingAsync('Modbar', 'lastExport'), + showExportReminder = await TBStorage.getSettingAsync('Modbar', 'showExportReminder'), lastExportDays = Math.round(TBHelpers.millisecondsToDays(TBHelpers.getTime() - lastExport)), lastExportLabel = lastExport === 0 ? 'Never' : `${lastExportDays} days ago`; @@ -453,12 +453,12 @@ const TBModule = { TBModule.moduleList.sort((a, b) => a.localeCompare(b)).forEach(async moduleName => { const module = TBModule.modules[moduleName]; // Don't do anything with beta modules unless beta mode is enabled - if (!TBStorage.getSetting('Utils', 'betaMode', false) && module.beta) { + if (!await TBStorage.getSettingAsync('Utils', 'betaMode', false) && module.beta) { return; } // Don't do anything with dev modules unless debug mode is enabled - if (!TBStorage.getSetting('Utils', 'debugMode', false) && module.debugMode) { + if (!await TBStorage.getSettingAsync('Utils', 'debugMode', false) && module.debugMode) { return; } @@ -530,24 +530,24 @@ const TBModule = { // } // hide beta stuff unless beta mode enabled - if (options.beta && !TBStorage.getSetting('Utils', 'betaMode', false)) { + if (options.beta && !await TBStorage.getSettingAsync('Utils', 'betaMode', false)) { continue; } // hide debug stuff unless debug mode enabled - if (options.debug && !TBStorage.getSetting('Utils', 'debugMode', false)) { + if (options.debug && !await TBStorage.getSettingAsync('Utils', 'debugMode', false)) { continue; } // hide hidden settings, ofc // TODO: Tie to a specific setting rather than debug mode - if (options.hidden && !TBStorage.getSetting('Utils', 'debugMode', false)) { + if (options.hidden && !await TBStorage.getSettingAsync('Utils', 'debugMode', false)) { continue; } // hide advanced settings, but do it via CSS so it can be overridden. let displaySetting = true; - if (options.advanced && !TBStorage.getSetting('Utils', 'advancedMode', false)) { + if (options.advanced && !await TBStorage.getSettingAsync('Utils', 'advancedMode', false)) { displaySetting = false; } @@ -654,7 +654,7 @@ body { // Syntax highlighter selection stuff $body.addClass('mod-syntax'); let editorSettings; - const enableWordWrap = TBStorage.getSetting('Syntax', 'enableWordWrap', true); + const enableWordWrap = await TBStorage.getSettingAsync('Syntax', 'enableWordWrap', true); $(`#${module.shortname}_syntax_theme_css`).each(async (index, elem) => { // Editor setup. editorSettings = CodeMirror.fromTextArea(elem, { From 46e2b2c9f407bfc24c0a7ded35cb1531c5296596 Mon Sep 17 00:00:00 2001 From: Erin Date: Wed, 24 Aug 2022 17:28:55 -0400 Subject: [PATCH 5/5] that's not how this method works --- extension/data/tbmodule.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extension/data/tbmodule.js b/extension/data/tbmodule.js index 34380b344..34f4256ce 100644 --- a/extension/data/tbmodule.js +++ b/extension/data/tbmodule.js @@ -401,7 +401,7 @@ const TBModule = { } else { TBui.textFeedback(`Backing up settings to /r/${sub}`, TBui.FEEDBACK_NEUTRAL); TBCore.exportSettings(sub); - await TBStorage.setSettingAsync('Modbar.lastExport', TBHelpers.getTime()); + await TBStorage.setSettingAsync('Modbar', 'lastExport', TBHelpers.getTime()); TBCore.clearCache(); window.location.reload(); }