. /** * Participants table filterset. * * @package core * @category table * @copyright 2020 Andrew Nicols * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ declare(strict_types=1); namespace core_user\table; use core_table\local\filter\boolean_filter; use core_table\local\filter\filterset; use core_table\local\filter\integer_filter; use core_table\local\filter\string_filter; /** * Participants table filterset. * * @package core * @copyright 2020 Andrew Nicols * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class participants_filterset extends filterset { /** * Get the required filters. * * The only required filter is the courseid filter. * * @return array. */ public function get_required_filters(): array { return [ 'courseid' => integer_filter::class, ]; } /** * Get the optional filters. * * These are: * - accesssince; * - enrolments; * - groups; * - keywords; * - roles; and * - status. * * @return array */ public function get_optional_filters(): array { return [ 'accesssince' => integer_filter::class, 'enrolments' => integer_filter::class, 'groups' => integer_filter::class, 'keywords' => string_filter::class, 'roles' => integer_filter::class, 'status' => integer_filter::class, ]; } }