- commit
- f8dc166f0567b7cb623fae2eff264c09ff0c87ad
- parent
- 0eefd4b5066d4a3b65a9e451da379fbaa0b0cdfa
- Author
- Tobias Bengfort <tobias.bengfort@posteo.de>
- Date
- 2023-02-24 17:11
allow to edit savedRules in settings
Diffstat
| M | src/settings.css | 2 | ++ |
| M | src/settings.html | 3 | ++- |
| M | src/settings.js | 17 | ++++++++++++----- |
3 files changed, 16 insertions, 6 deletions
diff --git a/src/settings.css b/src/settings.css
@@ -12,6 +12,7 @@ form {
12 12 height: 100vh;
13 13 display: grid;
14 14 grid-template-rows: 1fr min-content;
-1 15 grid-template-columns: 1fr 1fr;
15 16 grid-gap: 0.5em;
16 17 padding: 0.5em;
17 18 }
@@ -24,4 +25,5 @@ textarea {
24 25 button {
25 26 padding: 0.5em 2em;
26 27 justify-self: end;
-1 28 grid-column: 1 / 3;
27 29 }
diff --git a/src/settings.html b/src/settings.html
@@ -6,7 +6,8 @@ 6 6 </head> 7 7 <body> 8 8 <form>9 -1 <textarea></textarea>-1 9 <textarea class="rules"></textarea> -1 10 <textarea class="savedRules"></textarea> 10 11 <button>Save</button> 11 12 </form> 12 13 <script src="shared.js"></script>
diff --git a/src/settings.js b/src/settings.js
@@ -1,15 +1,22 @@ 1 1 var form = document.querySelector('form');2 -1 var textarea = document.querySelector('textarea');-1 2 var textarea1 = document.querySelector('textarea.rules'); -1 3 var textarea2 = document.querySelector('textarea.savedRules'); 3 44 -1 browser.storage.local.get('rules').then(data => {-1 5 browser.storage.local.get(['rules', 'savedRules']).then(data => { 5 6 var rules = data.rules || {};6 -1 textarea.value = JSON.stringify(rules, null, 2)-1 7 var savedRules = data.savedRules || {}; -1 8 textarea1.value = JSON.stringify(rules, null, 2) -1 9 textarea2.value = JSON.stringify(savedRules, null, 2) 7 10 }); 8 11 9 12 form.addEventListener('submit', event => { 10 13 event.preventDefault();11 -1 var rules = JSON.parse(textarea.value);12 -1 browser.storage.local.set({'rules': rules}).then(() => {-1 14 var rules = JSON.parse(textarea1.value); -1 15 var savedRules = JSON.parse(textarea2.value); -1 16 browser.storage.local.set({ -1 17 'rules': rules, -1 18 'savedRules': savedRules, -1 19 }).then(() => { 13 20 location.reload(); 14 21 }); 15 22 });