aboutsummaryrefslogtreecommitdiff
path: root/modern/src/common/preferences.js
diff options
context:
space:
mode:
authorAshutosh Bishnoi <mail2bishnoi@gmail.com>2020-11-10 13:02:20 +0530
committerAshutosh Bishnoi <mail2bishnoi@gmail.com>2020-11-10 13:02:20 +0530
commita948981184f4f2884b7a35b67b2389ddcd1f52a8 (patch)
tree9187834b5246734da8549735f64d2e5546c60e1e /modern/src/common/preferences.js
parent5a116350b3e402ef123a75451737c268a9ebddff (diff)
parent1af1545dc7ba3cfdf73a58031b37bea0ecff2e54 (diff)
downloadtrackermap-web-a948981184f4f2884b7a35b67b2389ddcd1f52a8.tar.gz
trackermap-web-a948981184f4f2884b7a35b67b2389ddcd1f52a8.tar.bz2
trackermap-web-a948981184f4f2884b7a35b67b2389ddcd1f52a8.zip
Resolving conflicts with master
Diffstat (limited to 'modern/src/common/preferences.js')
-rw-r--r--modern/src/common/preferences.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/modern/src/common/preferences.js b/modern/src/common/preferences.js
new file mode 100644
index 00000000..24fe389a
--- /dev/null
+++ b/modern/src/common/preferences.js
@@ -0,0 +1,21 @@
+import { useSelector } from 'react-redux';
+
+export const usePreference = (key, defaultValue) => {
+ return useSelector(state => {
+ if (state.session.server.forceSettings) {
+ return state.session.server[key] || state.session.user[key] || defaultValue;
+ } else {
+ return state.session.user[key] || state.session.server[key] || defaultValue;
+ }
+ });
+};
+
+export const useAttributePreference = (key, defaultValue) => {
+ return useSelector(state => {
+ if (state.session.server.forceSettings) {
+ return state.session.server.attributes[key] || state.session.user.attributes[key] || defaultValue;
+ } else {
+ return state.session.user.attributes[key] || state.session.server.attributes[key] || defaultValue;
+ }
+ });
+};