mirror of
https://gitlab.com/ruany/litebans-php.git
synced 2025-05-23 08:29:06 +00:00
Clean up, refactor history.php
This commit is contained in:
parent
b91def3b38
commit
ae8f2c574f
54
history.php
54
history.php
@ -18,11 +18,10 @@ class History {
|
||||
|
||||
$limit = $page->settings->limit_per_page;
|
||||
|
||||
// $offset = History::get_offset($type);
|
||||
|
||||
$order = "DESC";
|
||||
if ($after > 0) {
|
||||
$order = "ASC";
|
||||
} else {
|
||||
$order = "DESC";
|
||||
}
|
||||
$st = $page->conn->prepare("SELECT $sel FROM $table WHERE $field=:uuid AND time > :after AND time < :before ORDER BY time $order LIMIT :limit");
|
||||
$st->bindParam(":uuid", $uuid, PDO::PARAM_STR);
|
||||
@ -30,8 +29,6 @@ class History {
|
||||
$st->bindParam(":before", $before, PDO::PARAM_INT);
|
||||
$st->bindParam(":after", $after, PDO::PARAM_INT);
|
||||
|
||||
// $st->bindParam(":offset", $offset, PDO::PARAM_INT);
|
||||
|
||||
if ($st->execute()) {
|
||||
while ($row = $st->fetch(PDO::FETCH_ASSOC)) {
|
||||
$row['__table__'] = $type;
|
||||
@ -42,12 +39,12 @@ class History {
|
||||
}
|
||||
|
||||
/**
|
||||
* usort() function for rows in the database
|
||||
* usort() function for rows in the database, descending order (latest first)
|
||||
* @param PDORow $a
|
||||
* @param PDORow $b
|
||||
* @return int
|
||||
*/
|
||||
static function cmp_row_date($a, $b) {
|
||||
static function cmp_row_date_desc($a, $b) {
|
||||
$a = $a['time'];
|
||||
$b = $b['time'];
|
||||
if ($a === $b) {
|
||||
@ -56,7 +53,13 @@ class History {
|
||||
return ($a < $b) ? 1 : -1;
|
||||
}
|
||||
|
||||
static function cmp_row_date_reverse($a, $b) {
|
||||
/**
|
||||
* usort() function for rows in the database, ascending order (oldest first)
|
||||
* @param PDORow $a
|
||||
* @param PDORow $b
|
||||
* @return int
|
||||
*/
|
||||
static function cmp_row_date_asc($a, $b) {
|
||||
$a = $a['time'];
|
||||
$b = $b['time'];
|
||||
if ($a === $b) {
|
||||
@ -64,16 +67,6 @@ class History {
|
||||
}
|
||||
return ($a > $b) ? 1 : -1;
|
||||
}
|
||||
|
||||
// static function get_offset($table) {
|
||||
// $v = $table[0];
|
||||
// if (isset($_GET[$v]) && is_string($_GET[$v])) {
|
||||
// if (filter_var($_GET[$v], FILTER_VALIDATE_INT)) {
|
||||
// return (int)$_GET[$v];
|
||||
// }
|
||||
// }
|
||||
// return 0;
|
||||
// }
|
||||
}
|
||||
|
||||
$page = new Page("history");
|
||||
@ -163,38 +156,26 @@ try {
|
||||
$limit = $page->settings->limit_per_page;
|
||||
|
||||
if ($after > 0) {
|
||||
usort($all, array("History", "cmp_row_date_reverse"));
|
||||
usort($all, array("History", "cmp_row_date_asc"));
|
||||
// trim all entries beyond shown, then proper sort.
|
||||
$new_all = array();
|
||||
// trim must be done in ascending order (oldest first), otherwise semantics change
|
||||
$trim = array();
|
||||
$i = 0;
|
||||
foreach ($all as $row) {
|
||||
$i++;
|
||||
if ($i > $limit) break;
|
||||
array_push($new_all, $row);
|
||||
array_push($trim, $row);
|
||||
}
|
||||
$all = $new_all;
|
||||
|
||||
$all = $trim;
|
||||
}
|
||||
usort($all, array("History", "cmp_row_date"));
|
||||
usort($all, array("History", "cmp_row_date_desc"));
|
||||
|
||||
if (!empty($all)) {
|
||||
$page->table_begin();
|
||||
|
||||
|
||||
/*$offset = 0;
|
||||
if ($page->settings->show_pager) {
|
||||
$current_page = $page->page - 1;
|
||||
$offset = ($limit * $current_page);
|
||||
$limit += $offset;
|
||||
}*/
|
||||
|
||||
$i = 0;
|
||||
foreach ($all as $row) {
|
||||
$i++;
|
||||
/*if ($page->settings->show_pager && $i < $offset) {
|
||||
continue;
|
||||
}*/
|
||||
|
||||
|
||||
if ($i > $limit) break;
|
||||
|
||||
@ -227,6 +208,7 @@ try {
|
||||
}
|
||||
|
||||
$page->table_end();
|
||||
|
||||
// print pager
|
||||
if ($page->settings->show_pager) {
|
||||
$page->name = "history";
|
||||
|
Loading…
x
Reference in New Issue
Block a user