From 11521ff80a9663f915287678c97d4cb0e963f10d Mon Sep 17 00:00:00 2001 From: Aaron Axvig Date: Mon, 3 Aug 2026 22:05:46 -0500 Subject: [PATCH] Fix configured QR control URL at startup --- MMM-NextcloudCookbook.js | 4 +++- node_helper.js | 3 ++- package-lock.json | 4 ++-- package.json | 2 +- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/MMM-NextcloudCookbook.js b/MMM-NextcloudCookbook.js index 55610eb..26289d6 100644 --- a/MMM-NextcloudCookbook.js +++ b/MMM-NextcloudCookbook.js @@ -97,7 +97,9 @@ Module.register("MMM-NextcloudCookbook", { const qrLabel = document.createElement("span"); qrLabel.textContent = "Recipe mode control:"; const qrImage = document.createElement("img"); - qrImage.src = "/MMM-NextcloudCookbook/qr.svg"; + const qrParameters = new URLSearchParams(); + if (this.config.controlUrl) qrParameters.set("url", this.config.controlUrl); + qrImage.src = `/MMM-NextcloudCookbook/qr.svg${qrParameters.size ? `?${qrParameters}` : ""}`; qrImage.alt = "Recipe controller QR code"; qr.append(qrLabel, qrImage); root.appendChild(qr); diff --git a/node_helper.js b/node_helper.js index 5b991e0..34efeba 100644 --- a/node_helper.js +++ b/node_helper.js @@ -57,7 +57,8 @@ module.exports = NodeHelper.create({ ); this.expressApp.get("/MMM-NextcloudCookbook/qr.svg", async (request, response, next) => { try { - const url = this.config.controlUrl + const url = request.query.url + || this.config.controlUrl || `${request.protocol}://${request.get("host")}${this.config.controlPath}`; response.type("image/svg+xml").send(await QRCode.toString(url, { type: "svg", margin: 1 })); } catch (error) { diff --git a/package-lock.json b/package-lock.json index b3432d6..2365a51 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "mmm-nextcloud-cookbook", - "version": "0.1.0", + "version": "0.1.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "mmm-nextcloud-cookbook", - "version": "0.1.0", + "version": "0.1.1", "dependencies": { "fast-xml-parser": "5.10.1", "qrcode": "1.5.4" diff --git a/package.json b/package.json index 40475b1..caba739 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "mmm-nextcloud-cookbook", - "version": "0.1.0", + "version": "0.1.1", "private": true, "description": "Display recipes from a Nextcloud Cookbook share on MagicMirror", "main": "node_helper.js",