From: Marcin Haba Date: Wed, 28 Jun 2023 09:04:32 +0000 (+0200) Subject: baculum: Add default sorting by endtime to objects overview endpoint X-Git-Tag: Release-13.0.4~54 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1f2cf79d579ae8ca7e8d322a261717e5b640da0e;p=thirdparty%2Fbacula.git baculum: Add default sorting by endtime to objects overview endpoint --- diff --git a/gui/baculum/protected/API/Modules/ObjectManager.php b/gui/baculum/protected/API/Modules/ObjectManager.php index fea93c81a..f3b45a507 100644 --- a/gui/baculum/protected/API/Modules/ObjectManager.php +++ b/gui/baculum/protected/API/Modules/ObjectManager.php @@ -169,7 +169,7 @@ LEFT JOIN Client USING (ClientId) ' * @param string $sort_order sort order (asc - ascending, desc - descending) * @return array object record list or empty list if no object found */ - public function getObjectsOverview($general_criteria = [], $object_criteria = [], $limit_val = null, $offset_val = 0, $sort_col = null, $sort_order = 'DESC') { + public function getObjectsOverview($general_criteria = [], $object_criteria = [], $limit_val = null, $offset_val = 0, $sort_col = 'endtime', $sort_order = 'DESC') { $connection = ObjectRecord::finder()->getDbConnection(); $connection->setActive(true); $pdo = $connection->getPdoInstance(); @@ -188,11 +188,13 @@ LEFT JOIN Client USING (ClientId) ' ObjectName, ObjectUUID, Client.Name, - Job.Name '; + Job.Name, + JobTDate DESC '; $file_order = ' ORDER BY FileSet.FileSet, Job.Name, - Client.Name '; + Client.Name, + JobTDate DESC '; if (empty($sort_col)) { $sort_col = 'JobTDate'; diff --git a/gui/baculum/protected/API/Pages/API/ObjectsOverview.php b/gui/baculum/protected/API/Pages/API/ObjectsOverview.php index 5bb32df13..ccce2eeaf 100644 --- a/gui/baculum/protected/API/Pages/API/ObjectsOverview.php +++ b/gui/baculum/protected/API/Pages/API/ObjectsOverview.php @@ -77,7 +77,7 @@ class ObjectsOverview extends BaculumAPIServer { $realendtime_to_date = $this->Request->contains('realendtime_to_date') && $misc->isValidBDateAndTime($this->Request['realendtime_to_date']) ? $this->Request['realendtime_to_date'] : null; $age = $this->Request->contains('age') && $misc->isValidInteger($this->Request['age']) ? (int)$this->Request['age'] : null; - $order_by = $this->Request->contains('order_by') && $misc->isValidColumn($this->Request['order_by']) ? $this->Request['order_by']: ''; + $order_by = $this->Request->contains('order_by') && $misc->isValidColumn($this->Request['order_by']) ? $this->Request['order_by']: 'endtime'; $order_direction = $this->Request->contains('order_direction') && $misc->isValidOrderDirection($this->Request['order_direction']) ? $this->Request['order_direction']: 'DESC'; if (!empty($order_by)) { diff --git a/gui/baculum/protected/API/openapi_baculum.json b/gui/baculum/protected/API/openapi_baculum.json index 89b4464cd..6f5d05a89 100644 --- a/gui/baculum/protected/API/openapi_baculum.json +++ b/gui/baculum/protected/API/openapi_baculum.json @@ -8913,7 +8913,7 @@ "name": "order_by", "in": "query", "required": false, - "description": "Sort by selected object property (default jobtdate). There can be one from the following properties: objectname, client, jobstatus, endtime.", + "description": "Sort by selected object property (default endtime). There can be one from the following properties: objectname, client, jobstatus, endtime.", "schema": { "type": "string" }