From 09f9a443657ff9b8c586eb4e4161dec9d8bccce7 Mon Sep 17 00:00:00 2001 From: Patrick <81873830+MadPatrick@users.noreply.github.com> Date: Sun, 14 Jun 2026 11:44:07 +0200 Subject: [PATCH 1/5] Change layout to new Domoticz style --- pypluginstore.html | 276 +++++++++++++++++++++++---------------------- 1 file changed, 143 insertions(+), 133 deletions(-) diff --git a/pypluginstore.html b/pypluginstore.html index 9dccd99..851e2c3 100644 --- a/pypluginstore.html +++ b/pypluginstore.html @@ -1,79 +1,104 @@

PyPluginStore: Plugin Store

-
- -
Initializing...
-
+
Initializing...
@@ -279,8 +320,6 @@

PyPluginStore: Plugin Store

let isLoading = false; let pluginCache = null; let installedCache = []; - let updateStatusCache = {}; - let managerKey = null; let currentSort = 'name'; function setStatus(msg) { @@ -297,7 +336,6 @@

PyPluginStore: Plugin Store

// Attach filter listeners document.getElementById('search-box').oninput = filterAndRender; document.getElementById('installed-toggle').onchange = filterAndRender; - document.getElementById('restart-domoticz').onclick = restartDomoticz; document.getElementById('sort-select').onchange = function() { currentSort = this.value; filterAndRender(); @@ -387,8 +425,6 @@

PyPluginStore: Plugin Store

if (response && response.status === 'success') { pluginCache = response.data; installedCache = response.installed; - updateStatusCache = response.update_status || {}; - managerKey = response.manager_key || null; filterAndRender(); setStatus(`Loaded ${Object.keys(response.data).length} plugins.`); } else { @@ -468,7 +504,6 @@

PyPluginStore: Plugin Store

const branch = info[3]; const updatedAt = info[4]; const isInstalled = installedList.indexOf(key) !== -1; - const updateStatus = updateStatusCache[key] || 'unknown'; let timeStr = ""; if (updatedAt) { @@ -504,15 +539,10 @@

PyPluginStore: Plugin Store

const cardId = 'btn-' + key.replace(/[^a-z0-9]/gi, '-'); if (isInstalled) { - const updateClass = updateStatus === 'available' ? 'btn-update-available' : 'btn-update-current'; - const updateTitle = updateStatus === 'available' ? 'Update available' : - (updateStatus === 'current' ? 'Already up-to-date' : 'Update status unknown'); html += ` - + + `; - if (key !== managerKey) { - html += ``; - } } else { html += ` @@ -553,26 +583,6 @@

PyPluginStore: Plugin Store

} } - async function restartDomoticz() { - if (!confirm("Restart Domoticz now? The web interface will disconnect while the service restarts.")) { - return; - } - - setStatus("Requesting Domoticz restart..."); - try { - const response = await sendCommand('restart_domoticz', {}); - if (response && response.status === 'success') { - setStatus("Domoticz restart requested. Reconnect after the service comes back online."); - } else { - alert("Restart request failed: " + (response ? response.message : "Unknown error")); - setStatus("Restart request failed."); - } - } catch (e) { - alert("Restart request failed: " + e.message); - setStatus("Restart request failed."); - } - } - // Domoticz SPA might load this multiple times or at different ready states if (document.readyState === 'complete' || document.readyState === 'interactive') { setTimeout(init, 100); From c3c84e2afa09f1996e034de87aaa183583ba8868 Mon Sep 17 00:00:00 2001 From: Patrick <81873830+MadPatrick@users.noreply.github.com> Date: Sun, 14 Jun 2026 12:39:48 +0200 Subject: [PATCH 2/5] Updated to latest version --- pypluginstore.html | 334 +++------------------------------------------ 1 file changed, 18 insertions(+), 316 deletions(-) diff --git a/pypluginstore.html b/pypluginstore.html index 851e2c3..85309d5 100644 --- a/pypluginstore.html +++ b/pypluginstore.html @@ -1,5 +1,4 @@ - - -
-
-

PyPluginStore: Plugin Store

-
Initializing...
-
- -
- -
- - -
- -
- -
- -
-
- - +/* Update button styles */ +#pypluginstore-container .btn-update-current { + background: rgba(107,130,160,.15) !important; + color: #8ea8c0 !important; + border: 1px solid rgba(107,130,160,.65) !important; +} +#pypluginstore-container .btn-update-current:hover { + background: rgba(107,130,160,.28) !important; +} +#pypluginstore-container .btn-update-available { + background: rgba(58,191,126,.15) !important; + color: var(--success) !important; + border: 1px solid rgba(58,191,126,.65) !important; +} +#pypluginstore-container .btn-update-available:hover { + background: rgba(58,191,126,.28) !important; +} From c7c74d6b8cc80764691aaffec1c66fd4df2c4452 Mon Sep 17 00:00:00 2001 From: Patrick <81873830+MadPatrick@users.noreply.github.com> Date: Sun, 14 Jun 2026 14:21:07 +0200 Subject: [PATCH 3/5] Update pypluginstore.html --- pypluginstore.html | 368 ++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 350 insertions(+), 18 deletions(-) diff --git a/pypluginstore.html b/pypluginstore.html index 85309d5..4522a89 100644 --- a/pypluginstore.html +++ b/pypluginstore.html @@ -1,4 +1,5 @@ -:root { + + +
+
+

PyPluginStore: Plugin Store

+
+ +
Initializing...
+
+
+ +
+ +
+ + +
+ +
+ +
+ +
+
+ + From a14c5930bb1070be46a9c9031500cf0b7ecb98f5 Mon Sep 17 00:00:00 2001 From: Patrick <81873830+MadPatrick@users.noreply.github.com> Date: Sun, 14 Jun 2026 14:29:37 +0200 Subject: [PATCH 4/5] change color update button on available update --- pypluginstore.html | 52 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 51 insertions(+), 1 deletion(-) diff --git a/pypluginstore.html b/pypluginstore.html index 4522a89..e656da3 100644 --- a/pypluginstore.html +++ b/pypluginstore.html @@ -1,5 +1,5 @@
From c74b515b2be38ec44d4f761b8135116085b3362b Mon Sep 17 00:00:00 2001 From: Patrick <81873830+MadPatrick@users.noreply.github.com> Date: Sun, 14 Jun 2026 14:55:34 +0200 Subject: [PATCH 5/5] Update pypluginstore.html We can always make further updates later --- pypluginstore.html | 63 +++++++++------------------------------------- 1 file changed, 12 insertions(+), 51 deletions(-) diff --git a/pypluginstore.html b/pypluginstore.html index e656da3..6befe69 100644 --- a/pypluginstore.html +++ b/pypluginstore.html @@ -1,5 +1,5 @@