diff --git a/app/extensions/extension_copy.php b/app/extensions/extension_copy.php index 0aeca685a4..17c11fa391 100644 --- a/app/extensions/extension_copy.php +++ b/app/extensions/extension_copy.php @@ -45,6 +45,11 @@ $language = new text; $text = $language->get(); +//get order and order by, page + $order_by = preg_replace('#[^a-zA-Z0-9_\-]#', '', ($_REQUEST["order_by"] ?? 'extension')); + $order = $_REQUEST["order"] ?? 'asc'; + $page = isset($_REQUEST['page']) && is_numeric($_REQUEST['page']) ? $_REQUEST['page'] : 0; + //set the http get/post variable(s) to a php variable if (is_uuid($_REQUEST["id"]) && $_REQUEST["ext"] != '') { $extension_uuid = $_REQUEST["id"]; @@ -59,7 +64,7 @@ $extension = new extension; if ($extension->exists($_SESSION['domain_uuid'], $extension_new)) { message::add($text['message-duplicate'], 'negative'); - header("Location: extensions.php".(is_numeric($page) ? '?page='.$page : null)); + header("Location: extensions.php?".(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(is_numeric($page) ? '&page='.$page : null)); exit; } @@ -193,7 +198,7 @@ //redirect the user message::add($text['message-copy']); - header("Location: extensions.php".(is_numeric($page) ? '?page='.$page : null)); + header("Location: extensions.php?".(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(is_numeric($page) ? '&page='.$page : null)); exit; ?> \ No newline at end of file diff --git a/app/extensions/extension_edit.php b/app/extensions/extension_edit.php index 7ad970934e..0a5041c346 100644 --- a/app/extensions/extension_edit.php +++ b/app/extensions/extension_edit.php @@ -47,6 +47,11 @@ $language = new text; $text = $language->get(); +//get order and order by, page + $order_by = preg_replace('#[^a-zA-Z0-9_\-]#', '', ($_REQUEST["order_by"] ?? 'extension')); + $order = $_REQUEST["order"] ?? 'asc'; + $page = isset($_REQUEST['page']) && is_numeric($_REQUEST['page']) ? $_REQUEST['page'] : 0; + //return the first item if data type = array, returns value if data type = text function get_first_item($value) { return is_array($value) ? $value[0] : $value; @@ -96,7 +101,6 @@ if (!empty($_REQUEST["id"]) && is_uuid($_REQUEST["id"])) { $action = "update"; $extension_uuid = $_REQUEST["id"]; - $page = $_REQUEST['page'] ?? null; } else { $action = "add"; @@ -114,7 +118,7 @@ if ($total_extensions >= $limit_extensions) { message::add($text['message-maximum_extensions'].' '.$limit_extensions, 'negative'); - header('Location: extensions.php'.(isset($page) && is_numeric($page) ? '?page='.$page : null)); + header('Location: extensions.php?'.(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null)); exit; } } @@ -320,7 +324,7 @@ $p->delete('extension_user_delete', 'temp'); //redirect - header("Location: extension_edit.php?id=".$extension_uuid); + header("Location: extension_edit.php?id=".$extension_uuid.(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null)); exit; } @@ -347,7 +351,7 @@ $p->delete('device_line_delete', 'temp'); //redirect - header("Location: extension_edit.php?id=".$extension_uuid); + header("Location: extension_edit.php?id=".$extension_uuid.(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null)); exit; } } @@ -890,10 +894,10 @@ message::add($text['message-update']); } if ($range > 1) { - header("Location: extensions.php"); + header("Location: extensions.php?".(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null)); } else { - header("Location: extension_edit.php?id=".$extension_uuid.(isset($page) && is_numeric($page) ? '&page='.$page : null)); + header("Location: extension_edit.php?id=".$extension_uuid.(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(isset($page) && is_numeric($page) ? '&page='.$page : null)); } exit; } @@ -1144,13 +1148,13 @@ echo " var new_ext = prompt('".$text['message-extension']."');\n"; echo " if (new_ext != null) {\n"; echo " if (!isNaN(new_ext)) {\n"; - echo " document.location.href='extension_copy.php?id=".escape($extension_uuid ?? '')."&ext=' + new_ext".(!empty($page) && is_numeric($page) ? " + '&page=".$page."'" : null).";\n"; + echo " document.location.href='extension_copy.php?id=".escape($extension_uuid ?? '')."&ext=' + new_ext + '".(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(!empty($page) && is_numeric($page) ? '&page='.$page : null)."';\n"; echo " }\n"; echo " else {\n"; echo " var new_number_alias = prompt('".$text['message-number_alias']."');\n"; echo " if (new_number_alias != null) {\n"; echo " if (!isNaN(new_number_alias)) {\n"; - echo " document.location.href='extension_copy.php?id=".escape($extension_uuid ?? '')."&ext=' + new_ext + '&alias=' + new_number_alias".(!empty($page) && is_numeric($page) ? " + '&page=".$page."'" : null).";\n"; + echo " document.location.href='extension_copy.php?id=".escape($extension_uuid ?? '')."&ext=' + new_ext + '&alias=' + new_number_alias + '".(!empty($order_by) ? '&order_by='.$order_by.'&order='.$order : null).(!empty($page) && is_numeric($page) ? '&page='.$page : null)."';\n"; echo " }\n"; echo " }\n"; echo " }\n"; @@ -1170,7 +1174,7 @@ } echo "\n"; echo "