修复时间错误的问题
This commit is contained in:
@@ -103,7 +103,7 @@
|
||||
|
||||
.two-col {
|
||||
display: grid;
|
||||
grid-template-columns: 1.15fr 0.85fr;
|
||||
grid-template-columns: 1fr;
|
||||
gap: 18px;
|
||||
}
|
||||
|
||||
@@ -269,18 +269,12 @@
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<article class="card panel">
|
||||
<div class="panel-head">
|
||||
<div class="panel-title">Active Sessions</div>
|
||||
<div class="badge" id="session-badge">Checking</div>
|
||||
</div>
|
||||
<div class="list" id="session-list"></div>
|
||||
</section>
|
||||
|
||||
<div class="actions">
|
||||
<button class="btn" id="reload-btn" type="button">Reload</button>
|
||||
<button class="btn secondary" id="home-btn" type="button">Back Home</button>
|
||||
</div>
|
||||
</article>
|
||||
</section>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
@@ -388,7 +382,28 @@
|
||||
|
||||
function formatTime(timestamp) {
|
||||
if (!timestamp) return '-';
|
||||
const date = new Date(timestamp * 1000);
|
||||
let date = null;
|
||||
|
||||
if (typeof timestamp === 'number') {
|
||||
date = new Date(timestamp > 9999999999 ? timestamp : timestamp * 1000);
|
||||
} else if (typeof timestamp === 'string') {
|
||||
const trimmed = timestamp.trim();
|
||||
if (!trimmed) return '-';
|
||||
|
||||
if (/^\d+$/.test(trimmed)) {
|
||||
const numeric = Number(trimmed);
|
||||
date = new Date(numeric > 9999999999 ? numeric : numeric * 1000);
|
||||
} else {
|
||||
date = new Date(trimmed);
|
||||
}
|
||||
} else {
|
||||
date = new Date(timestamp);
|
||||
}
|
||||
|
||||
if (!(date instanceof Date) || Number.isNaN(date.getTime())) {
|
||||
return '-';
|
||||
}
|
||||
|
||||
const pad = function (value) { return String(value).padStart(2, '0'); };
|
||||
return date.getFullYear() + '-' + pad(date.getMonth() + 1) + '-' + pad(date.getDate()) + ' ' + pad(date.getHours()) + ':' + pad(date.getMinutes()) + ':' + pad(date.getSeconds());
|
||||
}
|
||||
@@ -425,9 +440,7 @@
|
||||
document.getElementById('plan-name').textContent = '-';
|
||||
document.getElementById('traffic-note').textContent = '-';
|
||||
document.getElementById('refresh-badge').textContent = 'Auto Refresh';
|
||||
document.getElementById('session-badge').textContent = 'Checking';
|
||||
document.getElementById('ip-list').innerHTML = '<div class="empty">No online IP detected currently.</div>';
|
||||
document.getElementById('session-list').innerHTML = '<div class="empty">No active session entries available.</div>';
|
||||
}
|
||||
|
||||
async function getJson(url, authorization) {
|
||||
@@ -462,7 +475,6 @@
|
||||
document.getElementById('online-count').textContent = String(summary.user ? summary.user.online_count : 0);
|
||||
document.getElementById('last-online').textContent = formatTime(summary.user ? summary.user.last_online_at : null);
|
||||
document.getElementById('refresh-badge').textContent = 'Refresh every ' + ((summary.meta && summary.meta.refresh_interval_seconds) || 30) + 's';
|
||||
document.getElementById('session-badge').textContent = summary.meta && summary.meta.show_active_sessions ? 'Enabled' : 'Disabled';
|
||||
|
||||
const ipList = document.getElementById('ip-list');
|
||||
ipList.innerHTML = '';
|
||||
@@ -480,32 +492,6 @@
|
||||
ipList.appendChild(row);
|
||||
});
|
||||
}
|
||||
|
||||
const sessionList = document.getElementById('session-list');
|
||||
sessionList.innerHTML = '';
|
||||
const sessions = Array.isArray(summary.active_sessions) ? summary.active_sessions : [];
|
||||
if (!sessions.length) {
|
||||
const empty = document.createElement('div');
|
||||
empty.className = 'empty';
|
||||
empty.textContent = summary.meta && summary.meta.show_active_sessions
|
||||
? 'No active session entries available.'
|
||||
: 'Session display is disabled by plugin config.';
|
||||
sessionList.appendChild(empty);
|
||||
} else {
|
||||
sessions.forEach(function (session) {
|
||||
const row = document.createElement('div');
|
||||
row.className = 'row';
|
||||
row.innerHTML =
|
||||
'<div class=\"row-title\">' + (session.device || 'Unknown Session') + '</div>' +
|
||||
'<div class=\"row-meta\">' +
|
||||
'Session ID: ' + session.id + '<br>' +
|
||||
'Last Used: ' + formatTime(session.last_used_at) + '<br>' +
|
||||
'Created: ' + formatTime(session.created_at) + '<br>' +
|
||||
'Expires: ' + formatTime(session.expires_at) +
|
||||
'</div>';
|
||||
sessionList.appendChild(row);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
async function loadPageData() {
|
||||
|
||||
Reference in New Issue
Block a user