50 lines
1.3 KiB
PHP
50 lines
1.3 KiB
PHP
<?php
|
|
|
|
include_once 'db_connect.php'; // Ensure session and DB are available
|
|
include_once 'check_allowed_ip.php';
|
|
include 'get_options.php';
|
|
|
|
$clientIP = $_SERVER['REMOTE_ADDR'];
|
|
|
|
if (!isAllowedIP($clientIP, $allowedSubnets)) {
|
|
http_response_code(403);
|
|
die("Access denied for {$clientIP}");
|
|
}
|
|
|
|
// Default per_page and allowed values
|
|
$allowed_per_page = [5, 10, 50, 100];
|
|
$default_per_page = 10;
|
|
|
|
// Get the chosen per_page from GET, default if not valid
|
|
$per_page = isset($_GET['per_page']) && in_array((int)$_GET['per_page'], $allowed_per_page)
|
|
? (int)$_GET['per_page']
|
|
: $default_per_page;
|
|
|
|
// Get the current page from GET, default to 1 if not valid
|
|
$page = isset($_GET['page']) && (int)$_GET['page'] > 0 ? (int)$_GET['page'] : 1;
|
|
|
|
// Pass these parameters to get_logs.php for the query
|
|
$_GET['per_page'] = $per_page;
|
|
$_GET['page'] = $page;
|
|
|
|
include 'get_logs.php';
|
|
include 'get_stats.php';
|
|
|
|
// Prepare data for the view
|
|
$viewData = [
|
|
'per_page' => $per_page,
|
|
'page' => $page,
|
|
'allowed_per_page' => $allowed_per_page,
|
|
'logs' => $logs,
|
|
'total_logs' => $total_logs,
|
|
'csrf_token' => $csrf_token,
|
|
'stats' => $stats,
|
|
'size_in_kilobytes' => $size_in_kilobytes,
|
|
'cache_size_mb' => $cache_size_mb,
|
|
'image_count' => $image_count,
|
|
'autoAddCompletedDate' => $autoAddCompletedDate
|
|
];
|
|
|
|
|
|
include '../tmpl/panel_view.php';
|