Merge pull request #23144 from colemanw/noMoreSaveButtonInApiExplorer
[civicrm-core.git] / CRM / Contact / DAO / DashboardContact.php
CommitLineData
e501603b 1<?php
c3fc2621 2
e501603b
TO
3/**
4 * @package CRM
ca5cec67 5 * @copyright CiviCRM LLC https://civicrm.org/licensing
e501603b
TO
6 *
7 * Generated from xml/schema/CRM/Contact/DashboardContact.xml
8 * DO NOT EDIT. Generated by CRM_Core_CodeGen
c1e814c7 9 * (GenCodeChecksum:ca2325df4ca179436e4901bbed693e20)
e501603b 10 */
c3fc2621 11
f41f0342 12/**
c3fc2621 13 * Database access object for the DashboardContact entity.
f41f0342 14 */
e501603b 15class CRM_Contact_DAO_DashboardContact extends CRM_Core_DAO {
929a1c14
CW
16 const EXT = 'civicrm';
17 const TABLE_ADDED = '3.1';
c3fc2621 18
e501603b 19 /**
f41f0342 20 * Static instance to hold the table name.
e501603b
TO
21 *
22 * @var string
23 */
fa45b5b9 24 public static $_tableName = 'civicrm_dashboard_contact';
c3fc2621 25
e501603b 26 /**
f41f0342 27 * Should CiviCRM log any modifications to this table in the civicrm_log table.
e501603b 28 *
c3fc2621 29 * @var bool
e501603b 30 */
fa45b5b9 31 public static $_log = FALSE;
c3fc2621 32
e501603b 33 /**
28979d65
CW
34 * @var int|string|null
35 * (SQL type: int unsigned)
36 * Note that values will be retrieved from the database as a string.
e501603b
TO
37 */
38 public $id;
c3fc2621 39
e501603b
TO
40 /**
41 * Dashboard ID
42 *
28979d65
CW
43 * @var int|string
44 * (SQL type: int unsigned)
45 * Note that values will be retrieved from the database as a string.
e501603b
TO
46 */
47 public $dashboard_id;
c3fc2621 48
e501603b
TO
49 /**
50 * Contact ID
51 *
28979d65
CW
52 * @var int|string
53 * (SQL type: int unsigned)
54 * Note that values will be retrieved from the database as a string.
e501603b
TO
55 */
56 public $contact_id;
c3fc2621 57
e501603b
TO
58 /**
59 * column no for this widget
60 *
28979d65
CW
61 * @var int|string|null
62 * (SQL type: int)
63 * Note that values will be retrieved from the database as a string.
e501603b
TO
64 */
65 public $column_no;
c3fc2621 66
e501603b
TO
67 /**
68 * Is this widget active?
69 *
c1e814c7 70 * @var bool|string
28979d65
CW
71 * (SQL type: tinyint)
72 * Note that values will be retrieved from the database as a string.
e501603b
TO
73 */
74 public $is_active;
c3fc2621 75
e501603b
TO
76 /**
77 * Ordering of the widgets.
78 *
28979d65
CW
79 * @var int|string|null
80 * (SQL type: int)
81 * Note that values will be retrieved from the database as a string.
e501603b
TO
82 */
83 public $weight;
c3fc2621 84
e501603b 85 /**
f41f0342 86 * Class constructor.
e501603b 87 */
c3fc2621 88 public function __construct() {
e501603b
TO
89 $this->__table = 'civicrm_dashboard_contact';
90 parent::__construct();
91 }
c3fc2621 92
449c4e6b
CW
93 /**
94 * Returns localized title of this entity.
7b66c3b5
AH
95 *
96 * @param bool $plural
97 * Whether to return the plural version of the title.
449c4e6b 98 */
7b66c3b5
AH
99 public static function getEntityTitle($plural = FALSE) {
100 return $plural ? ts('Dashboard Contacts') : ts('Dashboard Contact');
449c4e6b
CW
101 }
102
e501603b 103 /**
f41f0342 104 * Returns foreign keys and entity references.
e501603b
TO
105 *
106 * @return array
107 * [CRM_Core_Reference_Interface]
108 */
c3fc2621 109 public static function getReferenceColumns() {
346aaaba 110 if (!isset(Civi::$statics[__CLASS__]['links'])) {
fa45b5b9 111 Civi::$statics[__CLASS__]['links'] = static::createReferenceColumns(__CLASS__);
c3fc2621
CW
112 Civi::$statics[__CLASS__]['links'][] = new CRM_Core_Reference_Basic(self::getTableName(), 'dashboard_id', 'civicrm_dashboard', 'id');
113 Civi::$statics[__CLASS__]['links'][] = new CRM_Core_Reference_Basic(self::getTableName(), 'contact_id', 'civicrm_contact', 'id');
346aaaba 114 CRM_Core_DAO_AllCoreTables::invoke(__CLASS__, 'links_callback', Civi::$statics[__CLASS__]['links']);
e501603b 115 }
346aaaba 116 return Civi::$statics[__CLASS__]['links'];
e501603b 117 }
c3fc2621 118
e501603b
TO
119 /**
120 * Returns all the column names of this table
121 *
122 * @return array
123 */
c3fc2621 124 public static function &fields() {
346aaaba 125 if (!isset(Civi::$statics[__CLASS__]['fields'])) {
c3fc2621
CW
126 Civi::$statics[__CLASS__]['fields'] = [
127 'id' => [
e501603b
TO
128 'name' => 'id',
129 'type' => CRM_Utils_Type::T_INT,
c3fc2621
CW
130 'title' => ts('Dashboard Contact ID'),
131 'required' => TRUE,
a36434b9 132 'where' => 'civicrm_dashboard_contact.id',
522a26c9 133 'table_name' => 'civicrm_dashboard_contact',
134 'entity' => 'DashboardContact',
135 'bao' => 'CRM_Contact_BAO_DashboardContact',
6a7e5e5d 136 'localizable' => 0,
2cbbebe8
A
137 'html' => [
138 'type' => 'Number',
139 ],
1fe423d6 140 'readonly' => TRUE,
a9d0587b 141 'add' => '3.1',
c3fc2621
CW
142 ],
143 'dashboard_id' => [
e501603b
TO
144 'name' => 'dashboard_id',
145 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 146 'title' => ts('Dashboard ID'),
215b423e 147 'description' => ts('Dashboard ID'),
c3fc2621 148 'required' => TRUE,
a36434b9 149 'where' => 'civicrm_dashboard_contact.dashboard_id',
522a26c9 150 'table_name' => 'civicrm_dashboard_contact',
151 'entity' => 'DashboardContact',
152 'bao' => 'CRM_Contact_BAO_DashboardContact',
6a7e5e5d 153 'localizable' => 0,
e501603b 154 'FKClassName' => 'CRM_Core_DAO_Dashboard',
2cbbebe8
A
155 'html' => [
156 'label' => ts("Dashboard"),
157 ],
a9d0587b 158 'add' => '3.1',
c3fc2621
CW
159 ],
160 'contact_id' => [
e501603b
TO
161 'name' => 'contact_id',
162 'type' => CRM_Utils_Type::T_INT,
2cbbebe8 163 'title' => ts('Contact ID'),
215b423e 164 'description' => ts('Contact ID'),
c3fc2621 165 'required' => TRUE,
a36434b9 166 'where' => 'civicrm_dashboard_contact.contact_id',
522a26c9 167 'table_name' => 'civicrm_dashboard_contact',
168 'entity' => 'DashboardContact',
169 'bao' => 'CRM_Contact_BAO_DashboardContact',
6a7e5e5d 170 'localizable' => 0,
e501603b 171 'FKClassName' => 'CRM_Contact_DAO_Contact',
2cbbebe8
A
172 'html' => [
173 'label' => ts("Contact"),
174 ],
a9d0587b 175 'add' => '3.1',
c3fc2621
CW
176 ],
177 'column_no' => [
e501603b 178 'name' => 'column_no',
756d2540 179 'type' => CRM_Utils_Type::T_INT,
c3fc2621 180 'title' => ts('Column No'),
215b423e 181 'description' => ts('column no for this widget'),
a36434b9 182 'where' => 'civicrm_dashboard_contact.column_no',
45a83e42 183 'default' => '0',
522a26c9 184 'table_name' => 'civicrm_dashboard_contact',
185 'entity' => 'DashboardContact',
186 'bao' => 'CRM_Contact_BAO_DashboardContact',
6a7e5e5d 187 'localizable' => 0,
c23563e3
SL
188 'html' => [
189 'label' => ts("Column Number"),
190 ],
a9d0587b 191 'add' => '3.1',
c3fc2621
CW
192 ],
193 'is_active' => [
e501603b
TO
194 'name' => 'is_active',
195 'type' => CRM_Utils_Type::T_BOOLEAN,
c3fc2621 196 'title' => ts('Dashlet is Active?'),
215b423e 197 'description' => ts('Is this widget active?'),
c1e814c7 198 'required' => TRUE,
a36434b9 199 'where' => 'civicrm_dashboard_contact.is_active',
c1e814c7 200 'default' => '1',
522a26c9 201 'table_name' => 'civicrm_dashboard_contact',
202 'entity' => 'DashboardContact',
203 'bao' => 'CRM_Contact_BAO_DashboardContact',
6a7e5e5d 204 'localizable' => 0,
a9d0587b 205 'add' => '3.1',
c3fc2621
CW
206 ],
207 'weight' => [
e501603b
TO
208 'name' => 'weight',
209 'type' => CRM_Utils_Type::T_INT,
c3fc2621 210 'title' => ts('Order'),
215b423e 211 'description' => ts('Ordering of the widgets.'),
a36434b9 212 'where' => 'civicrm_dashboard_contact.weight',
45a83e42 213 'default' => '0',
522a26c9 214 'table_name' => 'civicrm_dashboard_contact',
215 'entity' => 'DashboardContact',
216 'bao' => 'CRM_Contact_BAO_DashboardContact',
6a7e5e5d 217 'localizable' => 0,
a9d0587b 218 'add' => '3.1',
c3fc2621
CW
219 ],
220 ];
346aaaba 221 CRM_Core_DAO_AllCoreTables::invoke(__CLASS__, 'fields_callback', Civi::$statics[__CLASS__]['fields']);
e501603b 222 }
346aaaba 223 return Civi::$statics[__CLASS__]['fields'];
e501603b 224 }
c3fc2621 225
e501603b 226 /**
bd8e0b14 227 * Return a mapping from field-name to the corresponding key (as used in fields()).
e501603b
TO
228 *
229 * @return array
bd8e0b14 230 * Array(string $name => string $uniqueName).
e501603b 231 */
c3fc2621 232 public static function &fieldKeys() {
bd8e0b14
TO
233 if (!isset(Civi::$statics[__CLASS__]['fieldKeys'])) {
234 Civi::$statics[__CLASS__]['fieldKeys'] = array_flip(CRM_Utils_Array::collect('name', self::fields()));
e501603b 235 }
bd8e0b14 236 return Civi::$statics[__CLASS__]['fieldKeys'];
e501603b 237 }
c3fc2621 238
e501603b
TO
239 /**
240 * Returns the names of this table
241 *
242 * @return string
243 */
c3fc2621 244 public static function getTableName() {
e501603b
TO
245 return self::$_tableName;
246 }
c3fc2621 247
e501603b
TO
248 /**
249 * Returns if this table needs to be logged
250 *
c3fc2621 251 * @return bool
e501603b 252 */
c3fc2621 253 public function getLog() {
e501603b
TO
254 return self::$_log;
255 }
c3fc2621 256
e501603b
TO
257 /**
258 * Returns the list of fields that can be imported
259 *
260 * @param bool $prefix
261 *
262 * @return array
263 */
c3fc2621
CW
264 public static function &import($prefix = FALSE) {
265 $r = CRM_Core_DAO_AllCoreTables::getImports(__CLASS__, 'dashboard_contact', $prefix, []);
60808919 266 return $r;
e501603b 267 }
c3fc2621 268
e501603b
TO
269 /**
270 * Returns the list of fields that can be exported
271 *
272 * @param bool $prefix
273 *
274 * @return array
275 */
c3fc2621
CW
276 public static function &export($prefix = FALSE) {
277 $r = CRM_Core_DAO_AllCoreTables::getExports(__CLASS__, 'dashboard_contact', $prefix, []);
60808919 278 return $r;
e501603b 279 }
c3fc2621 280
e7a6b91a
AS
281 /**
282 * Returns the list of indices
c3fc2621
CW
283 *
284 * @param bool $localize
285 *
286 * @return array
e7a6b91a
AS
287 */
288 public static function indices($localize = TRUE) {
c3fc2621
CW
289 $indices = [
290 'index_dashboard_id_contact_id' => [
e7a6b91a 291 'name' => 'index_dashboard_id_contact_id',
c3fc2621 292 'field' => [
e7a6b91a
AS
293 0 => 'dashboard_id',
294 1 => 'contact_id',
c3fc2621
CW
295 ],
296 'localizable' => FALSE,
297 'unique' => TRUE,
e7a6b91a 298 'sig' => 'civicrm_dashboard_contact::1::dashboard_id::contact_id',
c3fc2621
CW
299 ],
300 ];
e7a6b91a
AS
301 return ($localize && !empty($indices)) ? CRM_Core_DAO_AllCoreTables::multilingualize(__CLASS__, $indices) : $indices;
302 }
c3fc2621 303
e501603b 304}