summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bg/main.js12
-rw-r--r--src/managed_storage.json11
2 files changed, 20 insertions, 3 deletions
diff --git a/src/bg/main.js b/src/bg/main.js
index d220274..919c971 100644
--- a/src/bg/main.js
+++ b/src/bg/main.js
@@ -42,9 +42,15 @@
if (policyData && policyData.DEFAULT) {
ns.policy = new Policy(policyData);
} else {
- await include("/legacy/Legacy.js");
- ns.policy = await Legacy.createOrMigratePolicy();
- await ns.savePolicy();
+ let managedData = await Storage.get("managed", "defaultSettings");
+ if (managedData != null) {
+ let defaultSettings = JSON.parse(managedData.defaultSettings);
+ ns.policy = new Policy(defaultSettings.policy);
+ } else {
+ await include("/legacy/Legacy.js");
+ ns.policy = await Legacy.createOrMigratePolicy();
+ await ns.savePolicy();
+ }
}
Sites.onionSecure = ns.local.isTorBrowser;
diff --git a/src/managed_storage.json b/src/managed_storage.json
new file mode 100644
index 0000000..8243fe0
--- /dev/null
+++ b/src/managed_storage.json
@@ -0,0 +1,11 @@
+{
+ "$schema": "http://json-schema.org/draft-03/schema#",
+ "type": "object",
+ "properties": {
+ "defaultSettings": {
+ "title": "A valid JSON string compliant with NoScripts's backup format.",
+ "description": "All entries present will overwrite local settings.",
+ "type": "string"
+ }
+ }
+}