weekly release 3.9.11+
[moodle.git] / customfield / classes / category.php
blobdd89f556bad9cbed54412d2859dbdac9cd9ec18a
1 <?php
2 // This file is part of Moodle - http://moodle.org/
3 //
4 // Moodle is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or
7 // (at your option) any later version.
8 //
9 // Moodle is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU General Public License for more details.
14 // You should have received a copy of the GNU General Public License
15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>.
17 /**
18 * Customfield category persistent class
20 * @package core_customfield
21 * @copyright 2018 Toni Barbera <toni@moodle.com>
22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
25 namespace core_customfield;
27 use core\persistent;
29 defined('MOODLE_INTERNAL') || die;
31 /**
32 * Class category
34 * @package core_customfield
35 * @copyright 2018 Toni Barbera <toni@moodle.com>
36 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
38 class category extends persistent {
39 /**
40 * Database table.
42 const TABLE = 'customfield_category';
44 /**
45 * Return the definition of the properties of this model.
47 * @return array
49 protected static function define_properties() : array {
50 return array(
51 'name' => [
52 'type' => PARAM_TEXT,
54 'description' => [
55 'type' => PARAM_RAW,
56 'optional' => true,
57 'default' => null,
58 'null' => NULL_ALLOWED
60 'descriptionformat' => [
61 'type' => PARAM_INT,
62 'default' => FORMAT_MOODLE,
63 'optional' => true
65 'component' => [
66 'type' => PARAM_COMPONENT
68 'area' => [
69 'type' => PARAM_COMPONENT
71 'itemid' => [
72 'type' => PARAM_INT,
73 'optional' => true,
74 'default' => 0
76 'contextid' => [
77 'type' => PARAM_INT,
78 'optional' => false
80 'sortorder' => [
81 'type' => PARAM_INT,
82 'optional' => true,
83 'default' => -1