protected function isModerator() { if ($this->rights === false) { $this->rights = (int) $this->db->join('slack_user', 'u.id = su.user_id')->get_field('user', 'rights', 'su.slack_id = ?', $this->user); } return $this->rights > 0; }
/** * @param DatabaseInstance $sql * @return mixed */ protected function fetch_data(DatabaseInstance $sql) { $condition = ''; $params = array(); $id = (int) $this->get('id'); $name = (string) $this->get('name'); $filter = (string) $this->get('filter'); if ($id) { $condition = 'at.id = ?'; $params[] = $id; } elseif ($name) { $condition = 'at.name = ? or atv.name = ?'; $name = trim($name); $params[] = $name; $params[] = $name; } elseif ($filter) { $condition = 'at.name like ? or atv.name like ?'; $filter = '%' . str_replace('\\', '\\\\', trim($filter)) . '%'; $params[] = $filter; $params[] = $filter; } $sql->join('art_tag_variant', 'atv.id_tag = at.id'); $sql->group('at.id'); return $sql->get_table($this->table, $this->fields, $condition, $params); }