@@ -8,26 +8,37 @@ | |||
</head> | |||
<body> | |||
<?php foreach (array_reverse ($log_data) as $record): ?> | |||
<div class="mb-4"> | |||
<div> | |||
<?= $record['date_time'] ?> | |||
</div> | |||
<div class="container container-max-width mt-5"> | |||
<?php require 'pagination.cmp.php' ?> | |||
<div> | |||
<img src="<?= $record['chat_icon'] ?>" /> | |||
<?= $record['chat_name'] ?> | |||
</div> | |||
<?php foreach (array_slice ($log_data, | |||
($page - 1) * $length, | |||
$length, | |||
true) as $record): ?> | |||
<div class="mb-4"> | |||
<div> | |||
<?= $record['date_time'] ?> | |||
</div> | |||
<div style="color: blue"> | |||
> <span style="font-style: italic"><?= $record['chat_message'] ?></span> | |||
</div> | |||
<div> | |||
<img src="<?= $record['chat_icon'] ?>" /> | |||
<?= $record['chat_name'] ?> | |||
</div> | |||
<div> | |||
<?= $record['answer'] ?> | |||
<div style="color: blue"> | |||
> <span style="font-style: italic"><?= $record['chat_message'] ?></span> | |||
</div> | |||
<div> | |||
<?= $record['answer'] ?> | |||
</div> | |||
</div> | |||
<?php endforeach ?> | |||
</div> | |||
<?php require 'pagination.cmp.php' ?> | |||
</div> | |||
<?php endforeach ?> | |||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-C6RzsynM9kWDrMNeT87bh95OGNyZPhcTNXj1NW7RuBCsyN/o0jlpcV8Qyq46cDfL" crossorigin="anonymous"></script> | |||
</body> | |||
@@ -4,6 +4,10 @@ const LOG_PATH = './log.txt'; | |||
$log_data = []; | |||
$page = (int) ($_GET['p'] ?? 1); | |||
$length = (int) ($_GET['max'] ?? 20); | |||
$asc = ($_GET['asc'] ?? 0) != 0; | |||
$f = fopen (LOG_PATH, 'r'); | |||
if ($f !== false) | |||
@@ -25,5 +29,10 @@ fclose ($f); | |||
unset ($f); | |||
$pages_max = (int) (count ($log_data) / $length); | |||
if (!($asc)) | |||
$log_data = array_reverse ($log_data); | |||
require_once './index.frm.php'; | |||
@@ -0,0 +1,42 @@ | |||
<div class="my-3"> | |||
<nav class="d-flex justify-content-center" aria-label="..."> | |||
<ul class="pagination"> | |||
<?php if ($page > 1): ?> | |||
<li class="page-item"> | |||
<a class="page-link" href="?p=1">|<</a> | |||
</li> | |||
<?php else: ?> | |||
<li class="page-item disabled"> | |||
<span class="page-link">|<</span> | |||
</li> | |||
<?php endif ?> | |||
<?php for ($i = max (min ($page + 5, $pages_max) - 10, 1); $i < $page; ++$i): ?> | |||
<li class="page-item"> | |||
<a class="page-link" href="?p=<?= $i ?>"> <?= $i ?></a> | |||
</li> | |||
<?php endfor ?> | |||
<li class="page-item active" aria-current="page"> | |||
<span class="page-link"><?= $page ?></span> | |||
</li> | |||
<?php for ($i = $page + 1; $i <= min (max ($page - 5, 1) + 10, $pages_max); ++$i): ?> | |||
<li class="pages-item"> | |||
<a class="page-link" href="?p=<?= $i ?>"> <?= $i ?></a> | |||
</li> | |||
<?php endfor ?> | |||
<?php if ($page < $pages_max): ?> | |||
<li class="page-item"> | |||
<a class="page-link" href="?p=<?= $pages_max ?>">>|</a> | |||
</li> | |||
<?php else: ?> | |||
<li class="page-item disabled"> | |||
<span class="page-link">>|</span> | |||
</li> | |||
<?php endif ?> | |||
</ul> | |||
</nav> | |||
</div> | |||
@@ -0,0 +1,21 @@ | |||
.container-max-width | |||
{ | |||
max-width: 1600px; | |||
} | |||
.no-wrap | |||
{ | |||
display: inline-block; | |||
float: none; | |||
} | |||
.custom-width | |||
{ | |||
max-width: 1ex; | |||
} | |||
.row-width | |||
{ | |||
max-width: 6px; | |||
} | |||