execQuery($query, null); } public function addRule(string $uid, string $name, string $descr, array $attr, bool $validated): void { $params = [ ':validated' => $validated, ':uid' => $uid, ':name' => $name, ':descr' => $descr, ':attributes' => json_encode($attr), ]; $query = ( 'INSERT INTO dshb_rules (uid, name, descr, validated, attributes) VALUES (:uid, :name, :descr, :validated, :attributes) ON CONFLICT (uid) DO UPDATE SET name = EXCLUDED.name, descr = EXCLUDED.descr, validated = EXCLUDED.validated, attributes = EXCLUDED.attributes, updated = now(), missing = null' ); $this->execQuery($query, $params); } public function setInvalidByUid(string $uid): void { $params = [ ':uid' => $uid, ]; $query = ( 'UPDATE dshb_rules SET validated = false, updated = now() WHERE dshb_rules.uid = :uid' ); $this->execQuery($query, $params); } public function setMissingByUid(string $uid): void { $params = [ ':uid' => $uid, ]; $query = ( 'UPDATE dshb_rules SET missing = true, updated = now() WHERE dshb_rules.uid = :uid' ); $this->execQuery($query, $params); } public function deleteByUid(string $uid): void { $params = [ ':uid' => $uid, ]; $query = ( 'DELETE FROM dshb_rules WHERE uid = :uid' ); $this->execQuery($query, $params); } }