From b7d09ef8ec6ffcf6300a54c07c5a961838dcbbee Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Fri, 23 Apr 2021 18:29:18 +0100 Subject: [PATCH] Check for missing key shortcuts --- daemon.py | 2 +- webapp_accesskeys.py | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/daemon.py b/daemon.py index 103faf1e9..10ec49220 100644 --- a/daemon.py +++ b/daemon.py @@ -14850,7 +14850,7 @@ def runDaemon(brochMode: bool, 'Reminder': 'r' } httpd.keyShortcuts = {} - loadAccessKeysForAccounts(baseDir, httpd.keyShortcuts) + loadAccessKeysForAccounts(baseDir, httpd.keyShortcuts, httpd.accessKeys) httpd.unitTest = unitTest httpd.allowLocalNetworkAccess = allowLocalNetworkAccess diff --git a/webapp_accesskeys.py b/webapp_accesskeys.py index ef491e59f..4e85bbcf7 100644 --- a/webapp_accesskeys.py +++ b/webapp_accesskeys.py @@ -13,7 +13,8 @@ from webapp_utils import htmlHeaderWithExternalStyle from webapp_utils import htmlFooter -def loadAccessKeysForAccounts(baseDir: str, keyShortcuts: {}) -> None: +def loadAccessKeysForAccounts(baseDir: str, keyShortcuts: {}, + accessKeysTemplate: {}) -> None: """Loads key shortcuts for each account """ for subdir, dirs, files in os.walk(baseDir + '/accounts'): @@ -29,7 +30,11 @@ def loadAccessKeysForAccounts(baseDir: str, keyShortcuts: {}) -> None: nickname = acct.split('@')[0] accessKeys = loadJson(accessKeysFilename) if accessKeys: - keyShortcuts[nickname] = accessKeys + keyShortcuts[nickname] = accessKeysTemplate.copy() + for variableName, key in accessKeysTemplate.items(): + if accessKeys.get(variableName): + keyShortcuts[nickname][variableName] = \ + accessKeys[variableName] break