public function get_filters() { $filters = filter::get_all(['title', 'link_mid AS link_mid', 'link_fid AS link_fid', 'order'], ['where_equals' => ['link_mid' => static::get_module_id()]]); $filters->iterate(function (filter $filter) { foreach ($this->get_fields() as $field) { if ($field->fid == $filter->link_fid) { $filter->set_field($field); return; } } throw new \RuntimeException('Filter field ' . $filter->fid . ' is linked to a field that doesn\'t belong to its module'); }); return $filters; }