From 5e9e2af01a1268f3854650f1f807ab656f0ee0ed Mon Sep 17 00:00:00 2001 From: dbauszus-glx Date: Thu, 25 Apr 2024 18:47:12 +0100 Subject: [PATCH 01/10] init --- api/api.js | 6 +-- lib/plugins/_plugins.mjs | 2 + lib/plugins/userIDB.mjs | 19 +++++++ lib/utils/_utils.mjs | 3 ++ lib/utils/userIndexedDB.mjs | 104 ++++++++++++++++++++++++++++++++++++ mod/user/cookie.js | 3 ++ public/views/_default.html | 9 ++++ 7 files changed, 143 insertions(+), 3 deletions(-) create mode 100644 lib/plugins/userIDB.mjs create mode 100644 lib/utils/userIndexedDB.mjs diff --git a/api/api.js b/api/api.js index f0f430fd5..c309e5a6c 100644 --- a/api/api.js +++ b/api/api.js @@ -18,11 +18,11 @@ const routes = { workspace: require('../mod/workspace/_workspace'), } -process.env.COOKIE_TTL = process.env.COOKIE_TTL || 36000 +process.env.COOKIE_TTL ??= 36000 -process.env.TITLE = process.env.TITLE || 'GEOLYTIX | XYZ' +process.env.TITLE ??= 'GEOLYTIX | XYZ' -process.env.DIR = process.env.DIR || '' +process.env.DIR ??= '' module.exports = async (req, res) => { diff --git a/lib/plugins/_plugins.mjs b/lib/plugins/_plugins.mjs index 8cacbf7e8..169e7593b 100644 --- a/lib/plugins/_plugins.mjs +++ b/lib/plugins/_plugins.mjs @@ -10,6 +10,7 @@ import { keyvalue_dictionary } from './keyvalue_dictionary.mjs' import { locator } from './locator.mjs' import { login } from './login.mjs' import { svg_templates } from './svg_templates.mjs' +import { userIDB } from './userIDB.mjs' import { zoomBtn } from './zoomBtn.mjs' import { zoomToArea } from './zoomToArea.mjs' @@ -31,6 +32,7 @@ const plugins = { locator, login, svg_templates, + userIDB, zoomBtn, zoomToArea } diff --git a/lib/plugins/userIDB.mjs b/lib/plugins/userIDB.mjs new file mode 100644 index 000000000..e0c3c439c --- /dev/null +++ b/lib/plugins/userIDB.mjs @@ -0,0 +1,19 @@ +export function userIDB(plugin, mapview) { + + // Find the btnColumn element. + const btnColumn = document.getElementById('mapButton'); + + if (!btnColumn) return; + + // Append the plugin btn to the btnColumn. + btnColumn.append(mapp.utils.html.node` +