'Unauthorized: Admin access required']); exit; } $page = max(1, (int) filterRequest('page')); $limit = 50; $offset = ($page - 1) * $limit; $sql = "SELECT * FROM `tokens` LIMIT :lim OFFSET :off"; $stmt = $con->prepare($sql); $stmt->bindValue(':lim', $limit, PDO::PARAM_INT); $stmt->bindValue(':off', $offset, PDO::PARAM_INT); $stmt->execute(); $data = $stmt->fetchAll(PDO::FETCH_ASSOC); $countStmt = $con->query("SELECT COUNT(*) FROM `tokens`"); $total = $countStmt->fetchColumn(); if ($data) { foreach ($data as &$item) { $item['token'] = $encryptionHelper->decryptData($item['token']); } echo json_encode([ 'status' => 'success', 'data' => $data, 'total' => (int) $total, 'page' => $page, 'pages' => (int) ceil($total / $limit), ]); } else { jsonError("No token records found"); } ?>