fix cf access login
This commit is contained in:
@@ -10,15 +10,21 @@ const csrfToken = '<?php echo generateCSRFToken(); ?>';
|
||||
|
||||
// Initialize
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
// Only run on index page (has entries table)
|
||||
if (document.getElementById('entriesTableBody')) {
|
||||
loadEntries();
|
||||
loadStats();
|
||||
}
|
||||
loadClientLogos();
|
||||
loadAndApplyWhitelabel();
|
||||
|
||||
// Enable clear all button when "DELETE" is typed
|
||||
document.getElementById('confirmClearInput').addEventListener('input', (e) => {
|
||||
const confirmClearInput = document.getElementById('confirmClearInput');
|
||||
if (confirmClearInput) {
|
||||
confirmClearInput.addEventListener('input', (e) => {
|
||||
document.getElementById('confirmClearBtn').disabled = e.target.value !== 'DELETE';
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// Load and apply whitelabel settings on page load
|
||||
@@ -149,10 +155,14 @@ async function loadClientLogos() {
|
||||
|
||||
// Load entries
|
||||
async function loadEntries(page = 1) {
|
||||
currentPage = page;
|
||||
const searchQuery = document.getElementById('searchInput').value;
|
||||
const tableContent = document.getElementById('tableContent');
|
||||
const searchInput = document.getElementById('searchInput');
|
||||
if (!tableContent) return; // Not on index page
|
||||
|
||||
document.getElementById('tableContent').innerHTML = '<div class="loading"><div class="spinner"></div></div>';
|
||||
currentPage = page;
|
||||
const searchQuery = searchInput ? searchInput.value : '';
|
||||
|
||||
tableContent.innerHTML = '<div class="loading"><div class="spinner"></div></div>';
|
||||
|
||||
try {
|
||||
const result = await api('list', { page, search: searchQuery });
|
||||
@@ -303,11 +313,14 @@ function renderTable(entries, pagination) {
|
||||
|
||||
// Load stats
|
||||
async function loadStats() {
|
||||
const statTotal = document.getElementById('statTotal');
|
||||
if (!statTotal) return; // Not on index page
|
||||
|
||||
try {
|
||||
const result = await api('stats');
|
||||
|
||||
if (result.success) {
|
||||
document.getElementById('statTotal').textContent = result.data.total_entries.toLocaleString();
|
||||
statTotal.textContent = result.data.total_entries.toLocaleString();
|
||||
document.getElementById('statIPv4').textContent = (result.data.ip_versions?.ipv4 || 0).toLocaleString();
|
||||
document.getElementById('statIPv6').textContent = (result.data.ip_versions?.ipv6 || 0).toLocaleString();
|
||||
document.getElementById('statCountries').textContent = result.data.by_country?.length || 0;
|
||||
@@ -321,6 +334,8 @@ async function loadStats() {
|
||||
async function loadAuditLog(page = 1) {
|
||||
auditPage = page;
|
||||
const container = document.getElementById('auditLogContainer');
|
||||
if (!container) return;
|
||||
|
||||
container.innerHTML = '<div class="loading"><div class="spinner"></div></div>';
|
||||
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user