preferences_sync.xul (13602B)
1 <?xml version="1.0"?> 2 <!-- 3 ***** BEGIN LICENSE BLOCK ***** 4 5 Copyright © 2008–2013 Center for History and New Media 6 George Mason University, Fairfax, Virginia, USA 7 http://zotero.org 8 9 This file is part of Zotero. 10 11 Zotero is free software: you can redistribute it and/or modify 12 it under the terms of the GNU Affero General Public License as published by 13 the Free Software Foundation, either version 3 of the License, or 14 (at your option) any later version. 15 16 Zotero is distributed in the hope that it will be useful, 17 but WITHOUT ANY WARRANTY; without even the implied warranty of 18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 GNU Affero General Public License for more details. 20 21 You should have received a copy of the GNU Affero General Public License 22 along with Zotero. If not, see <http://www.gnu.org/licenses/>. 23 24 ***** END LICENSE BLOCK ***** 25 --> 26 <!DOCTYPE prefwindow SYSTEM "chrome://zotero/locale/preferences.dtd"> 27 28 <overlay xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> 29 <prefpane id="zotero-prefpane-sync" 30 onpaneload="Zotero_Preferences.Sync.init()" 31 helpTopic="sync"> 32 <preferences> 33 <preference id="pref-sync-autosync" name="extensions.zotero.sync.autoSync" type="bool"/> 34 <preference id="pref-sync-username" name="extensions.zotero.sync.server.username" type="unichar" instantApply="true"/> 35 <preference id="pref-sync-fulltext-enabled" name="extensions.zotero.sync.fulltext.enabled" type="bool"/> 36 <preference id="pref-storage-enabled" name="extensions.zotero.sync.storage.enabled" type="bool"/> 37 <preference id="pref-storage-protocol" name="extensions.zotero.sync.storage.protocol" type="string"/> 38 <preference id="pref-storage-scheme" name="extensions.zotero.sync.storage.scheme" type="string" instantApply="true"/> 39 <preference id="pref-storage-url" name="extensions.zotero.sync.storage.url" type="string"/> 40 <preference id="pref-storage-username" name="extensions.zotero.sync.storage.username" type="string"/> 41 <preference id="pref-storage-downloadMode-personal" name="extensions.zotero.sync.storage.downloadMode.personal" type="string"/> 42 <preference id="pref-storage-downloadMode-groups" name="extensions.zotero.sync.storage.downloadMode.groups" type="string"/> 43 <preference id="pref-storage-groups-enabled" name="extensions.zotero.sync.storage.groups.enabled" type="bool"/> 44 </preferences> 45 46 <tabbox> 47 <tabs> 48 <tab label="&zotero.preferences.settings;"/> 49 <tab id="sync-reset-tab" label="&zotero.preferences.sync.reset;" disabled="true"/> 50 </tabs> 51 52 <tabpanels> 53 <tabpanel orient="vertical"> 54 <vbox id="sync-unauthorized"> 55 <groupbox> 56 <caption label="&zotero.preferences.sync.syncServer;"/> 57 58 <hbox> 59 <grid> 60 <columns> 61 <column/> 62 <column/> 63 </columns> 64 65 <rows> 66 <row> 67 <label value="&zotero.preferences.sync.username;"/> 68 <textbox id="sync-username-textbox" 69 preference="pref-sync-username" 70 onblur="Zotero_Preferences.Sync.trimUsername()" 71 oninput="Zotero_Preferences.Sync.credentialsChange(event)" 72 onchange="Zotero_Preferences.Sync.credentialsChange(event)" 73 onkeypress="Zotero_Preferences.Sync.credentialsKeyPress(event)"/> 74 </row> 75 <row> 76 <label value="&zotero.preferences.sync.password;"/> 77 <textbox id="sync-password" type="password" 78 oninput="Zotero_Preferences.Sync.credentialsChange(event)" 79 onchange="Zotero_Preferences.Sync.credentialsChange(event)" 80 onkeypress="Zotero_Preferences.Sync.credentialsKeyPress(event)"/> 81 </row> 82 <row> 83 <box/> 84 <hbox align="baseline"> 85 <button id="sync-auth-button" 86 label="&zotero.preferences.sync.setUpSync;" 87 oncommand="Zotero_Preferences.Sync.linkAccount(event)" 88 disabled="true"/> 89 <label id="sync-status-indicator"/> 90 </hbox> 91 </row> 92 </rows> 93 </grid> 94 <vbox style="width:2em"/> 95 <vbox> 96 <label class="zotero-text-link" value="&zotero.preferences.sync.createAccount;" href="http://zotero.org/user/register"/> 97 <separator class="thin"/> 98 <label class="zotero-text-link" value="&zotero.preferences.sync.lostPassword;" href="http://zotero.org/user/lostpassword"/> 99 <separator class="thin"/> 100 <label class="zotero-text-link" value="&zotero.preferences.sync.about;" href="http://www.zotero.org/support/sync"/> 101 </vbox> 102 </hbox> 103 </groupbox> 104 </vbox> 105 106 <vbox id="sync-authorized" hidden="true"> 107 <groupbox> 108 <caption label="&zotero.preferences.sync.syncServer;"/> 109 110 <grid> 111 <columns> 112 <column/> 113 <column/> 114 </columns> 115 116 <rows> 117 <row> 118 <label value="&zotero.preferences.sync.username;"/> 119 <hbox> 120 <label id="sync-username" value="Username"/> 121 <button label="&zotero.preferences.sync.unlinkAccount;" 122 oncommand="Zotero_Preferences.Sync.unlinkAccount()"/> 123 </hbox> 124 </row> 125 <row> 126 <box/> 127 <box> 128 <button id="sync-libraries-button" label="&zotero.preferences.sync.librariesToSync.button;" 129 oncommand="Zotero_Preferences.Sync.showLibrariesToSyncDialog()"/> 130 </box> 131 </row> 132 <row> 133 <box/> 134 <checkbox label="&zotero.preferences.sync.syncAutomatically;" 135 preference="pref-sync-autosync"/> 136 </row> 137 <row> 138 <box/> 139 <checkbox label="&zotero.preferences.sync.syncFullTextContent;" 140 preference="pref-sync-fulltext-enabled" 141 tooltiptext="&zotero.preferences.sync.syncFullTextContent.desc;"/> 142 </row> 143 <row> 144 <box/> 145 <label class="zotero-text-link" value="&zotero.preferences.sync.about;" href="http://www.zotero.org/support/sync"/> 146 </row> 147 </rows> 148 </grid> 149 150 </groupbox> 151 152 <groupbox id="storage-settings"> 153 <caption label="&zotero.preferences.sync.fileSyncing;"/> 154 155 <!-- My Library --> 156 <hbox> 157 <checkbox label="&zotero.preferences.sync.fileSyncing.myLibrary;" 158 preference="pref-storage-enabled" 159 oncommand="Zotero_Preferences.Sync.onStorageSettingsChange()"/> 160 <menulist id="storage-protocol" class="storage-personal" 161 style="margin-left: .5em" 162 preference="pref-storage-protocol" 163 oncommand="Zotero_Preferences.Sync.onStorageSettingsChange()"> 164 <menupopup> 165 <menuitem label="Zotero" value="zotero"/> 166 <menuitem label="WebDAV" value="webdav"/> 167 </menupopup> 168 </menulist> 169 </hbox> 170 171 <stack id="storage-webdav-settings" style="margin-top: .5em; margin-bottom: .8em; border: 1px gray solid; border-radius: 3px"> 172 <!-- Background shading --> 173 <box style="background: black; opacity:.03"/> 174 175 <grid style="padding: .7em .4em .7em 0"> 176 <columns> 177 <column/> 178 <column flex="1"/> 179 </columns> 180 181 <rows> 182 <row> 183 <label value="&zotero.preferences.sync.fileSyncing.url;"/> 184 <hbox> 185 <menulist id="storage-url-prefix" 186 preference="pref-storage-scheme" 187 onsynctopreference="Zotero_Preferences.Sync.unverifyStorageServer()" 188 style="padding: 0; width: 7em"> 189 <menupopup> 190 <menuitem label="https" value="https" style="padding: 0"/> 191 <menuitem label="http" value="http" style="padding: 0"/> 192 </menupopup> 193 </menulist> 194 <label value="://"/> 195 <textbox id="storage-url" flex="1" 196 preference="pref-storage-url" 197 onkeypress="Zotero_Preferences.Sync.onStorageSettingsKeyPress(event)" 198 onchange="Zotero_Preferences.Sync.onStorageSettingsChange()"/> 199 <label value="/zotero/"/> 200 </hbox> 201 </row> 202 <row> 203 <label value="&zotero.preferences.sync.username;"/> 204 <hbox> 205 <textbox id="storage-username" 206 preference="pref-storage-username" 207 onkeypress="Zotero_Preferences.Sync.onStorageSettingsKeyPress(event)" 208 onchange="Zotero_Preferences.Sync.onStorageSettingsChange()"/> 209 </hbox> 210 </row> 211 <row> 212 <label value="&zotero.preferences.sync.password;"/> 213 <hbox> 214 <textbox id="storage-password" flex="0" type="password" 215 onkeypress="Zotero_Preferences.Sync.onStorageSettingsKeyPress(event)" 216 onchange="Zotero_Preferences.Sync.onStorageSettingsChange()"/> 217 </hbox> 218 </row> 219 <row> 220 <box/> 221 <hbox> 222 <button id="storage-verify" label="&zotero.preferences.sync.fileSyncing.verifyServer;" 223 oncommand="Zotero_Preferences.Sync.verifyStorageServer()"/> 224 <button id="storage-abort" label="Stop" hidden="true"/> 225 <progressmeter id="storage-progress" hidden="true" 226 mode="undetermined"/> 227 </hbox> 228 </row> 229 </rows> 230 </grid> 231 232 </stack> 233 234 <hbox class="storage-settings-download-options" align="center"> 235 <label value="&zotero.preferences.sync.fileSyncing.download;"/> 236 <menulist id="storage-user-download-mode" 237 class="storage-mode" 238 preference="pref-storage-downloadMode-personal" 239 style="margin-left: 0"> 240 <menupopup> 241 <menuitem label="&zotero.preferences.sync.fileSyncing.download.onDemand;" value="on-demand"/> 242 <menuitem label="&zotero.preferences.sync.fileSyncing.download.atSyncTime;" value="on-sync"/> 243 </menupopup> 244 </menulist> 245 </hbox> 246 247 <separator id="storage-separator" class="thin"/> 248 249 <!-- Group Libraries --> 250 <checkbox label="&zotero.preferences.sync.fileSyncing.groups;" 251 preference="pref-storage-groups-enabled" 252 oncommand="Zotero_Preferences.Sync.updateStorageSettingsGroupsUI()"/> 253 254 <hbox class="storage-settings-download-options" align="center"> 255 <label value="&zotero.preferences.sync.fileSyncing.download;"/> 256 <menulist id="storage-groups-download-mode" 257 class="storage-mode" 258 preference="pref-storage-downloadMode-groups" 259 style="margin-left: 0"> 260 <menupopup> 261 <menuitem label="&zotero.preferences.sync.fileSyncing.download.onDemand;" value="on-demand"/> 262 <menuitem label="&zotero.preferences.sync.fileSyncing.download.atSyncTime;" value="on-sync"/> 263 </menupopup> 264 </menulist> 265 </hbox> 266 267 <separator class="thin"/> 268 269 <vbox id="storage-terms"> 270 <hbox style="margin-top: .4em; display: block" align="center"> 271 <label>&zotero.preferences.sync.fileSyncing.tos1;</label> 272 <label class="zotero-text-link" href="https://www.zotero.org/support/terms/terms_of_service" value="&zotero.preferences.sync.fileSyncing.tos2;"/> 273 <label>&zotero.preferences.period;</label> 274 </hbox> 275 </vbox> 276 </groupbox> 277 </vbox> 278 </tabpanel> 279 280 <tabpanel id="sync-reset" orient="vertical"> 281 <!-- This doesn't wrap without an explicit width, for some reason --> 282 <description id="reset-sync-warning" width="45em">&zotero.preferences.sync.reset.warning1;<label style="margin-left: 0; margin-right: 0" class="zotero-text-link" href="http://zotero.org/support/kb/sync_reset_options">&zotero.preferences.sync.reset.warning2;</label>&zotero.preferences.sync.reset.warning3;</description> 283 284 <div id="sync-reset-form" xmlns="http://www.w3.org/1999/xhtml"> 285 <div id="sync-reset-library-menu-container"> 286 <label>Library: <select id="sync-reset-library-menu"/></label> 287 </div> 288 289 <ul id="sync-reset-list"> 290 <!--<li> 291 <p>&zotero.preferences.sync.reset.restoreFromServer;</p> 292 <p>&zotero.preferences.sync.reset.restoreFromServer.desc;</p> 293 </li>--> 294 295 <li id="restore-to-server"> 296 <label> 297 <input name="sync-reset-radiogroup" value="restore-to-server" type="radio"/> 298 <span class="sync-reset-option-name">&zotero.preferences.sync.reset.restoreToServer;</span> 299 <span class="sync-reset-option-desc">&zotero.preferences.sync.reset.restoreToServer.desc;</span> 300 </label> 301 </li> 302 303 <!--<li> 304 <h2>&zotero.preferences.sync.reset.resetDataSyncHistory;</h2> 305 <description>&zotero.preferences.sync.reset.resetDataSyncHistory.desc;</p> 306 </li>--> 307 308 <li id="reset-file-sync-history"> 309 <label> 310 <input name="sync-reset-radiogroup" value="reset-file-sync-history" type="radio"/> 311 <span class="sync-reset-option-name">&zotero.preferences.sync.reset.resetFileSyncHistory;</span> 312 <span class="sync-reset-option-desc">&zotero.preferences.sync.reset.resetFileSyncHistory.desc;</span> 313 </label> 314 </li> 315 </ul> 316 317 <button id="sync-reset-button" 318 disabled="disabled" 319 onclick="Zotero_Preferences.Sync.reset()">&zotero.preferences.sync.reset.button;</button> 320 </div> 321 </tabpanel> 322 </tabpanels> 323 </tabbox> 324 325 <separator/> 326 <separator/> 327 </prefpane> 328 329 <script src="preferences_sync.js" type="application/javascript;version=1.8"/> 330 </overlay>