From: Marcin Haba Date: Tue, 25 Apr 2023 14:04:39 +0000 (+0200) Subject: baculum: Add joberrors filter to objects endpoint X-Git-Tag: Release-13.0.3~52 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2d548d7a7fa3f3f63b47c56e1f3b09087d57c304;p=thirdparty%2Fbacula.git baculum: Add joberrors filter to objects endpoint --- diff --git a/gui/baculum/protected/API/Pages/API/Objects.php b/gui/baculum/protected/API/Pages/API/Objects.php index 82d9fc86a..dc393181d 100644 --- a/gui/baculum/protected/API/Pages/API/Objects.php +++ b/gui/baculum/protected/API/Pages/API/Objects.php @@ -45,6 +45,10 @@ class Objects extends BaculumAPIServer { $objectstatus = $this->Request->contains('objectstatus') && $misc->isValidState($this->Request['objectstatus']) ? $this->Request['objectstatus'] : null; $jobname = $this->Request->contains('jobname') && $misc->isValidName($this->Request['jobname']) ? $this->Request['jobname'] : null; $jobids = $this->Request->contains('jobids') && $misc->isValidIdsList($this->Request['jobids']) ? explode(',', $this->Request['jobids']) : []; + $joberrors = null; + if ($this->Request->contains('joberrors') && $misc->isValidBoolean($this->Request['joberrors'])) { + $joberrors = $misc->isValidBooleanTrue($this->Request['joberrors']) ? true : false; + } $group_by = $this->Request->contains('groupby') && $misc->isValidColumn($this->Request['groupby']) ? strtolower($this->Request['groupby']) : null; $group_limit = $this->Request->contains('group_limit') ? intval($this->Request['group_limit']) : 0; @@ -166,6 +170,20 @@ class Objects extends BaculumAPIServer { 'vals' => $jobids ]; } + if (!is_null($joberrors)) { + if ($joberrors === true) { + $params['Job.JobErrors'] = []; + $params['Job.JobErrors'][] = [ + 'operator' => '>', + 'vals' => 0 + ]; + } elseif ($joberrors === false) { + $params['Job.JobErrors'] = []; + $params['Job.JobErrors'][] = [ + 'vals' => 0 + ]; + } + } // Scheduled time range if (!empty($schedtime_from) || !empty($schedtime_to) || !empty($schedtime_from_date) || !empty($schedtime_to_date)) {