diff --git a/chrome/content/zotero/preferences/preferences_sync.js b/chrome/content/zotero/preferences/preferences_sync.js
index 0255d32454..3c7aad2452 100644
--- a/chrome/content/zotero/preferences/preferences_sync.js
+++ b/chrome/content/zotero/preferences/preferences_sync.js
@@ -31,6 +31,7 @@ Components.utils.import("resource://zotero/config.js");
Zotero_Preferences.Sync = {
init: Zotero.Promise.coroutine(function* () {
this.updateStorageSettingsUI();
+ this.updateStorageSettingsGroupsUI();
var username = Zotero.Users.getCurrentUsername() || Zotero.Prefs.get('sync.server.username') || " ";
var apiKey = yield Zotero.Sync.Data.Local.getAPIKey();
@@ -368,30 +369,19 @@ Zotero_Preferences.Sync = {
sep.hidden = true;
}
- var menulists = document.querySelectorAll('#storage-settings menulist.storage-mode');
- for (let menulist of menulists) {
- menulist.disabled = !enabled;
- }
-
+ document.getElementById('storage-user-download-mode').disabled = !enabled;
this.updateStorageTerms();
window.sizeToContent();
}),
- updateStorageSettingsGroups: function (enabled) {
- var storageSettings = document.getElementById('storage-settings');
- var menulists = storageSettings.getElementsByTagName('menulist');
- for (let menulist of menulists) {
- if (menulist.className == 'storage-groups') {
- menulist.disabled = !enabled;
- }
- }
-
- var self = this;
- setTimeout(function () {
- self.updateStorageTerms();
- }, 1)
+ updateStorageSettingsGroupsUI: function () {
+ setTimeout(() => {
+ var enabled = document.getElementById('pref-storage-groups-enabled').value;
+ document.getElementById('storage-groups-download-mode').disabled = !enabled;
+ this.updateStorageTerms();
+ });
},
@@ -400,7 +390,7 @@ Zotero_Preferences.Sync = {
var libraryEnabled = document.getElementById('pref-storage-enabled').value;
var storageProtocol = document.getElementById('pref-storage-protocol').value;
- var groupsEnabled = document.getElementById('pref-group-storage-enabled').value;
+ var groupsEnabled = document.getElementById('pref-storage-groups-enabled').value;
terms.hidden = !((libraryEnabled && storageProtocol == 'zotero') || groupsEnabled);
},
diff --git a/chrome/content/zotero/preferences/preferences_sync.xul b/chrome/content/zotero/preferences/preferences_sync.xul
index 1ab989cb93..8e961e137f 100644
--- a/chrome/content/zotero/preferences/preferences_sync.xul
+++ b/chrome/content/zotero/preferences/preferences_sync.xul
@@ -40,7 +40,7 @@
-
+
@@ -233,7 +233,10 @@
-
+
@@ -245,12 +248,15 @@
+ preference="pref-storage-groups-enabled"
+ oncommand="Zotero_Preferences.Sync.updateStorageSettingsGroupsUI()"/>
-
+
@@ -260,8 +266,8 @@
-
-
+
+
diff --git a/chrome/skin/default/zotero/preferences.css b/chrome/skin/default/zotero/preferences.css
index ec00d46df3..9b9eeed931 100644
--- a/chrome/skin/default/zotero/preferences.css
+++ b/chrome/skin/default/zotero/preferences.css
@@ -156,18 +156,18 @@ grid row hbox:first-child
min-width: 8em;
}
-#storage-terms > label
+#storage-terms label
{
margin-left: 0;
font-size: .9em;
}
-#storage-terms > label:first-child
+#storage-terms label:first-child
{
margin-right: .25em;
}
-#storage-terms > label[class=zotero-text-link]
+#storage-terms label[class=zotero-text-link]
{
margin-right: 0;
}