From f52d047e2ffd3a334fe4a1ac7f344fd22c2190a3 Mon Sep 17 00:00:00 2001 From: Paul Donald Date: Tue, 28 Oct 2025 20:36:09 +0100 Subject: [PATCH] luci-proto-wireguard: Display times which account for the timezone also Signed-off-by: Paul Donald --- .../resources/view/wireguard/status.js | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/protocols/luci-proto-wireguard/htdocs/luci-static/resources/view/wireguard/status.js b/protocols/luci-proto-wireguard/htdocs/luci-static/resources/view/wireguard/status.js index ff6756f051..d6a8742fa1 100644 --- a/protocols/luci-proto-wireguard/htdocs/luci-static/resources/view/wireguard/status.js +++ b/protocols/luci-proto-wireguard/htdocs/luci-static/resources/view/wireguard/status.js @@ -3,6 +3,7 @@ 'require rpc'; 'require poll'; 'require dom'; +'require uci'; 'require ui'; @@ -27,7 +28,15 @@ function timestampToStr(timestamp) { else ago = _('over a day ago'); - return (new Date(timestamp * 1000)).toUTCString() + ' (' + ago + ')'; + const date = new Date(timestamp * 1000); + const sys = uci.get('system', '@system[0]'); + + return new Intl.DateTimeFormat(undefined, { + dateStyle: 'medium', + timeStyle: (!sys?.clock_timestyle) ? 'long' : 'full', + hourCycle: (!sys?.clock_hourcycle) ? undefined : sys.clock_hourcycle, + timeZone: sys?.zonename?.replaceAll(' ', '_') || 'UTC', + }).format(date) + ' (' + ago + ')'; } function handleInterfaceDetails(iface) { @@ -115,6 +124,12 @@ function renderPeerTable(instanceName, peers) { } return view.extend({ + load() { + return Promise.all([ + uci.load('system'), + ]) + }, + renderIfaces: function(ifaces) { var res = [ E('h2', [ _('WireGuard Status') ]) -- 2.30.2