From: Marcin Haba Date: Mon, 10 Jul 2023 12:34:56 +0000 (+0200) Subject: Add sorting by objectcategory in objects overview endpoint X-Git-Tag: Release-13.0.4~40 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=405585ca3754faa14f15db9eebcc80d37b7be001;p=thirdparty%2Fbacula.git Add sorting by objectcategory in objects overview endpoint --- diff --git a/gui/baculum/protected/API/Modules/ObjectManager.php b/gui/baculum/protected/API/Modules/ObjectManager.php index 0a66af6ff..ed9b0f5fd 100644 --- a/gui/baculum/protected/API/Modules/ObjectManager.php +++ b/gui/baculum/protected/API/Modules/ObjectManager.php @@ -39,7 +39,7 @@ class ObjectManager extends APIModule * Allowed order columns for object overview. */ public static $overview_order_columns = [ - 'object' => ['objectname', 'client', 'jobstatus', 'endtime'], + 'object' => ['objectname', 'objectcategory', 'client', 'jobstatus', 'endtime'], 'file' => ['client', 'jobstatus', 'endtime', 'fileset'] ]; @@ -433,10 +433,15 @@ LEFT JOIN Client USING (ClientId) ' $statement = Database::runQuery($sql); $items = $statement->fetchAll(PDO::FETCH_ASSOC); } else { + $order_by = ['ObjectType', 'ObjectSource']; + if ($sort_col_i !== 'objectcategory') { + $order_by[] = 'ObjectCategory'; + } $sql = 'SELECT * FROM ' . $objects_tname1 . ' WHERE ObjectType = \'' . $object_count[$i]['objecttype'] . '\' - ORDER BY ObjectType, ObjectSource, ObjectCategory ' . (in_array($sort_col_i, self::$overview_order_columns['object']) ? ',' . $order : '') . $limit . $offset; + ORDER BY ' . implode(',', $order_by) + . (in_array($sort_col_i, self::$overview_order_columns['object']) ? ',' . $order : '') . $limit . $offset; $statement = Database::runQuery($sql); $items = $statement->fetchAll(PDO::FETCH_ASSOC); }