Users - List/Edit: Maintain search, order by and page values through paging and update. (Part 2)

This commit is contained in:
fusionate
2026-02-23 15:32:06 -07:00
committed by GitHub
parent e32cfa2a25
commit 00eb7f3f7d

View File

@@ -39,6 +39,12 @@
$language = new text;
$text = $language->get();
//get order and order by, page
$order_by = preg_replace('#[^a-zA-Z0-9_\-]#', '', ($_REQUEST["order_by"] ?? ''));
$order = $_REQUEST["order"] ?? 'asc';
$page = isset($_REQUEST['page']) && is_numeric($_REQUEST['page']) ? $_REQUEST['page'] : 0;
$search = $_REQUEST['search'] ?? null;
//get user uuid
if (permission_exists('user_edit') && !empty($_REQUEST["id"]) && is_uuid($_REQUEST["id"])) {
$user_uuid = $_REQUEST["id"];
@@ -60,7 +66,7 @@
if ($num_rows >= $settings->get('limit', 'users')) {
message::add($text['message-maximum_users'].' '.$settings->get('limit', 'users'), 'negative');
header('Location: users.php');
header('Location: users.php?'.(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null).(!empty($search) ? '&search='.urlencode($search) : null));
exit;
}
}
@@ -85,7 +91,7 @@
$token = new token;
if (!$token->validate($_SERVER['PHP_SELF'])) {
message::add($text['message-invalid_token'],'negative');
header("Location: users.php");
header("Location: users.php?".(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null).(!empty($search) ? '&search='.urlencode($search) : null));
exit;
}
@@ -97,7 +103,7 @@
//redirect the user
message::add($text['message-delete']);
header("Location: user_edit.php?id=".urlencode($user_uuid));
header("Location: user_edit.php?id=".urlencode($user_uuid).(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null).(!empty($search) ? '&search='.urlencode($search) : null));
exit;
}
@@ -152,7 +158,7 @@
$token = new token;
if (!$token->validate($_SERVER['PHP_SELF'])) {
message::add($text['message-invalid_token'],'negative');
header('Location: users.php');
header('Location: users.php?'.(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null).(!empty($search) ? '&search='.urlencode($search) : null));
exit;
}
@@ -261,7 +267,7 @@
if (message::count() != 0 || !empty($invalid)) {
if ($invalid) { message::add($text['message-required'].implode(', ', $invalid), 'negative', 7500); }
persistent_form_values('store', $_POST);
header("Location: user_edit.php".(permission_exists('user_edit') && $action != 'add' ? "?id=".urlencode($user_uuid) : null));
header("Location: user_edit.php".(permission_exists('user_edit') && $action != 'add' ? "?id=".urlencode($user_uuid) : null).(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null).(!empty($search) ? '&search='.urlencode($search) : null));
exit;
}
else {
@@ -610,7 +616,7 @@
else {
message::add($text['message-add'],'positive');
}
header("Location: user_edit.php?id=".urlencode($user_uuid));
header("Location: user_edit.php?id=".urlencode($user_uuid).(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null).(!empty($search) ? '&search='.urlencode($search) : null));
exit;
}
@@ -650,7 +656,7 @@
}
else {
message::add($text['message-invalid_user'], 'negative', 7500);
header("Location: user_edit.php?id=".$_SESSION['user_uuid']);
header("Location: user_edit.php?id=".$_SESSION['user_uuid'].(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null).(!empty($search) ? '&search='.urlencode($search) : null));
exit;
}
unset($sql, $parameters, $row);
@@ -727,6 +733,7 @@
}
echo "<form name='frm' id='frm' method='post'>\n";
echo "<input type='hidden' name='search' id='search' value=\"".($search ?? '')."\" />\n";
echo "<div class='action_bar' id='action_bar'>\n";
echo " <div class='heading'><b>".$text['header-user_edit']."</b></div>\n";
@@ -735,7 +742,7 @@
echo "<div class='unsaved'>".$text['message-unsaved_changes']." <i class='fas fa-exclamation-triangle'></i></div>";
}
if (permission_exists('user_add') || permission_exists('user_edit')) {
echo button::create(['type'=>'button','label'=>$text['button-back'],'icon'=>$settings->get('theme', 'button_icon_back'),'id'=>'btn_back','link'=>'users.php']);
echo button::create(['type'=>'button','label'=>$text['button-back'],'icon'=>$settings->get('theme', 'button_icon_back'),'id'=>'btn_back','link'=>'users.php?'.(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null).(!empty($search) ? '&search='.urlencode($search) : null)]);
}
$button_margin = 'margin-left: 15px;';
if (permission_exists('ticket_add') || permission_exists('ticket_edit')) {