Fix #2
+12
-11
@@ -8,6 +8,7 @@ import json
|
||||
import threading
|
||||
from datetime import datetime
|
||||
from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer
|
||||
import os
|
||||
|
||||
VERSION = "1.1.0"
|
||||
|
||||
@@ -245,7 +246,7 @@ def generate_html():
|
||||
function setGlobalLoad(b) {
|
||||
refreshInProgress = b;
|
||||
var elem = document.getElementById("global-loading");
|
||||
elem.innerHTML = b ? "<span class=\"loading-spinner\"></span>" : "";
|
||||
elem.innerHTML = b ? '<span class="loading-spinner"></span>' : '';
|
||||
}
|
||||
|
||||
function render() {
|
||||
@@ -262,7 +263,7 @@ def generate_html():
|
||||
const pi = c.url ? c.host + ":" + c.port + c.url : c.host + ":" + c.port;
|
||||
|
||||
h += "<div class=\"card " + bc + "\">";
|
||||
h += "<button class=\"refresh-btn\" onclick=\"refreshService('" + id + "')\" title=\"Refresh\">🔄</button>";
|
||||
h += "<button class=\"refresh-btn\" onclick=\"refreshService(event, '" + id + "')\" title=\"Refresh\">🔄</button>";
|
||||
h += "<div class=\"header\"><div class=\"name\">" + c.name + "</div><span class=\"type\">" + c.type + "</span></div>";
|
||||
h += "<span class=\"badge " + bc + "\">" + s.replace(/_/g, " ") + "</span>";
|
||||
h += "<div class=\"details\">" + pi + "</div>";
|
||||
@@ -273,8 +274,7 @@ def generate_html():
|
||||
if (hist) h += "<div class=\"history-note\">" + hist + "</div>";
|
||||
h += "</div>";
|
||||
}
|
||||
|
||||
document.getElementById("grid").innerHTML = h || "<p style=\"color:#64748b;text-align:center;\">No services to display</p>";
|
||||
document.getElementById("grid").innerHTML = h || "<p style='color:#64748b;text-align:center;'>No services to display</p>";
|
||||
document.getElementById("total").textContent = t;
|
||||
document.getElementById("ok").textContent = ok;
|
||||
document.getElementById("ko").textContent = ko;
|
||||
@@ -282,10 +282,10 @@ def generate_html():
|
||||
document.getElementById("ts").textContent = "Updated: " + new Date().toLocaleTimeString();
|
||||
}
|
||||
|
||||
function refreshService(sid) {
|
||||
const btn = event.target;
|
||||
function refreshService(event, sid) {
|
||||
const btn = event.currentTarget || event.target;
|
||||
btn.disabled = true;
|
||||
btn.innerHTML = "<span class=\"loading-spinner\"></span>";
|
||||
btn.innerHTML = '<span class="loading-spinner"></span>';
|
||||
fetch("/api/check/" + encodeURIComponent(sid))
|
||||
.then(r => r.json())
|
||||
.then(d => {
|
||||
@@ -304,7 +304,7 @@ def generate_html():
|
||||
const btn = document.querySelector(".refresh-all");
|
||||
setGlobalLoad(true);
|
||||
btn.disabled = true;
|
||||
btn.innerHTML = "<span class=\"loading-spinner\"></span> Refreshing...";
|
||||
btn.innerHTML = '<span class="loading-spinner"></span> Refreshing...';
|
||||
fetch("/api/refresh")
|
||||
.then(r => r.json())
|
||||
.then(d => {
|
||||
@@ -414,10 +414,11 @@ class Handler(BaseHTTPRequestHandler):
|
||||
|
||||
def main():
|
||||
"""Main entry point."""
|
||||
print(f"Starting Status Monitor v{VERSION}")
|
||||
port = int(os.environ.get('PORT', '80'))
|
||||
print(f"Starting Status Monitor v{VERSION} (port {port})")
|
||||
check_all()
|
||||
server = ThreadingHTTPServer(('', 80), Handler)
|
||||
print(f'Status Monitor v{VERSION} running on port 80')
|
||||
server = ThreadingHTTPServer(('', port), Handler)
|
||||
print(f'Status Monitor v{VERSION} running on port {port}')
|
||||
server.serve_forever()
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user