From e9439c978b493eb3b7b8cb78e52288f17c86646f Mon Sep 17 00:00:00 2001 From: Dan Stillman Date: Mon, 11 Sep 2017 03:49:06 -0400 Subject: [PATCH] Allow setting data directory via -datadir command-line flag Can be an absolute path or 'profile' to use 'zotero' subdirectory of profile directory as in earlier versions (but which won't be treated as a legacy location eligible for migration) Closes #1305 --- .../preferences/preferences_advanced.js | 6 ++++ .../preferences/preferences_advanced.xul | 5 +++ chrome/content/zotero/xpcom/dataDirectory.js | 36 ++++++++++++++++++- chrome/content/zotero/xpcom/zotero.js | 24 +++++++------ chrome/locale/en-US/zotero/preferences.dtd | 1 + chrome/skin/default/zotero/preferences.css | 14 ++++++++ components/zotero-service.js | 2 ++ 7 files changed, 77 insertions(+), 11 deletions(-) diff --git a/chrome/content/zotero/preferences/preferences_advanced.js b/chrome/content/zotero/preferences/preferences_advanced.js index 71d09c17d..0a246bc95 100644 --- a/chrome/content/zotero/preferences/preferences_advanced.js +++ b/chrome/content/zotero/preferences/preferences_advanced.js @@ -298,6 +298,12 @@ Zotero_Preferences.Advanced = { var currentDir = Zotero.DataDirectory.dir; var defaultDataDir = Zotero.DataDirectory.defaultDir; + if (Zotero.forceDataDir) { + document.getElementById('command-line-data-dir-path').textContent = currentDir; + document.getElementById('command-line-data-dir').hidden = false; + document.getElementById('data-dir').hidden = true; + } + // Change "Use profile directory" label to home directory location unless using profile dir if (useDataDir || currentDir == defaultDataDir) { document.getElementById('default-data-dir').setAttribute( diff --git a/chrome/content/zotero/preferences/preferences_advanced.xul b/chrome/content/zotero/preferences/preferences_advanced.xul index 3f014e517..e77706daa 100644 --- a/chrome/content/zotero/preferences/preferences_advanced.xul +++ b/chrome/content/zotero/preferences/preferences_advanced.xul @@ -184,6 +184,11 @@ + +