Merge pull request #22954 from JMAConsulting/booleanFields
[civicrm-core.git] / CRM / Contribute / DAO / Widget.php
1 <?php
2
3 /**
4 * @package CRM
5 * @copyright CiviCRM LLC https://civicrm.org/licensing
6 *
7 * Generated from xml/schema/CRM/Contribute/Widget.xml
8 * DO NOT EDIT. Generated by CRM_Core_CodeGen
9 * (GenCodeChecksum:8327209557468328fd4ec358866fdab0)
10 */
11
12 /**
13 * Database access object for the Widget entity.
14 */
15 class CRM_Contribute_DAO_Widget extends CRM_Core_DAO {
16 const EXT = 'civicrm';
17 const TABLE_ADDED = '2.0';
18 const COMPONENT = 'CiviContribute';
19
20 /**
21 * Static instance to hold the table name.
22 *
23 * @var string
24 */
25 public static $_tableName = 'civicrm_contribution_widget';
26
27 /**
28 * Should CiviCRM log any modifications to this table in the civicrm_log table.
29 *
30 * @var bool
31 */
32 public static $_log = TRUE;
33
34 /**
35 * Contribution ID
36 *
37 * @var int|string|null
38 * (SQL type: int unsigned)
39 * Note that values will be retrieved from the database as a string.
40 */
41 public $id;
42
43 /**
44 * The Contribution Page which triggered this contribution
45 *
46 * @var int|string|null
47 * (SQL type: int unsigned)
48 * Note that values will be retrieved from the database as a string.
49 */
50 public $contribution_page_id;
51
52 /**
53 * Is this property active?
54 *
55 * @var bool|string
56 * (SQL type: tinyint)
57 * Note that values will be retrieved from the database as a string.
58 */
59 public $is_active;
60
61 /**
62 * Widget title.
63 *
64 * @var string|null
65 * (SQL type: varchar(255))
66 * Note that values will be retrieved from the database as a string.
67 */
68 public $title;
69
70 /**
71 * URL to Widget logo
72 *
73 * @var string|null
74 * (SQL type: varchar(255))
75 * Note that values will be retrieved from the database as a string.
76 */
77 public $url_logo;
78
79 /**
80 * Button title.
81 *
82 * @var string|null
83 * (SQL type: varchar(255))
84 * Note that values will be retrieved from the database as a string.
85 */
86 public $button_title;
87
88 /**
89 * About description.
90 *
91 * @var string|null
92 * (SQL type: text)
93 * Note that values will be retrieved from the database as a string.
94 */
95 public $about;
96
97 /**
98 * URL to Homepage.
99 *
100 * @var string|null
101 * (SQL type: varchar(255))
102 * Note that values will be retrieved from the database as a string.
103 */
104 public $url_homepage;
105
106 /**
107 * @var string|null
108 * (SQL type: varchar(10))
109 * Note that values will be retrieved from the database as a string.
110 */
111 public $color_title;
112
113 /**
114 * @var string|null
115 * (SQL type: varchar(10))
116 * Note that values will be retrieved from the database as a string.
117 */
118 public $color_button;
119
120 /**
121 * @var string|null
122 * (SQL type: varchar(10))
123 * Note that values will be retrieved from the database as a string.
124 */
125 public $color_bar;
126
127 /**
128 * @var string|null
129 * (SQL type: varchar(10))
130 * Note that values will be retrieved from the database as a string.
131 */
132 public $color_main_text;
133
134 /**
135 * @var string|null
136 * (SQL type: varchar(10))
137 * Note that values will be retrieved from the database as a string.
138 */
139 public $color_main;
140
141 /**
142 * @var string|null
143 * (SQL type: varchar(10))
144 * Note that values will be retrieved from the database as a string.
145 */
146 public $color_main_bg;
147
148 /**
149 * @var string|null
150 * (SQL type: varchar(10))
151 * Note that values will be retrieved from the database as a string.
152 */
153 public $color_bg;
154
155 /**
156 * @var string|null
157 * (SQL type: varchar(10))
158 * Note that values will be retrieved from the database as a string.
159 */
160 public $color_about_link;
161
162 /**
163 * @var string|null
164 * (SQL type: varchar(10))
165 * Note that values will be retrieved from the database as a string.
166 */
167 public $color_homepage_link;
168
169 /**
170 * Class constructor.
171 */
172 public function __construct() {
173 $this->__table = 'civicrm_contribution_widget';
174 parent::__construct();
175 }
176
177 /**
178 * Returns localized title of this entity.
179 *
180 * @param bool $plural
181 * Whether to return the plural version of the title.
182 */
183 public static function getEntityTitle($plural = FALSE) {
184 return $plural ? ts('Widgets') : ts('Widget');
185 }
186
187 /**
188 * Returns foreign keys and entity references.
189 *
190 * @return array
191 * [CRM_Core_Reference_Interface]
192 */
193 public static function getReferenceColumns() {
194 if (!isset(Civi::$statics[__CLASS__]['links'])) {
195 Civi::$statics[__CLASS__]['links'] = static::createReferenceColumns(__CLASS__);
196 Civi::$statics[__CLASS__]['links'][] = new CRM_Core_Reference_Basic(self::getTableName(), 'contribution_page_id', 'civicrm_contribution_page', 'id');
197 CRM_Core_DAO_AllCoreTables::invoke(__CLASS__, 'links_callback', Civi::$statics[__CLASS__]['links']);
198 }
199 return Civi::$statics[__CLASS__]['links'];
200 }
201
202 /**
203 * Returns all the column names of this table
204 *
205 * @return array
206 */
207 public static function &fields() {
208 if (!isset(Civi::$statics[__CLASS__]['fields'])) {
209 Civi::$statics[__CLASS__]['fields'] = [
210 'id' => [
211 'name' => 'id',
212 'type' => CRM_Utils_Type::T_INT,
213 'title' => ts('Widget ID'),
214 'description' => ts('Contribution ID'),
215 'required' => TRUE,
216 'where' => 'civicrm_contribution_widget.id',
217 'table_name' => 'civicrm_contribution_widget',
218 'entity' => 'Widget',
219 'bao' => 'CRM_Contribute_BAO_Widget',
220 'localizable' => 0,
221 'html' => [
222 'type' => 'Number',
223 ],
224 'readonly' => TRUE,
225 'add' => '2.0',
226 ],
227 'contribution_page_id' => [
228 'name' => 'contribution_page_id',
229 'type' => CRM_Utils_Type::T_INT,
230 'title' => ts('Contribution Page ID'),
231 'description' => ts('The Contribution Page which triggered this contribution'),
232 'where' => 'civicrm_contribution_widget.contribution_page_id',
233 'table_name' => 'civicrm_contribution_widget',
234 'entity' => 'Widget',
235 'bao' => 'CRM_Contribute_BAO_Widget',
236 'localizable' => 0,
237 'FKClassName' => 'CRM_Contribute_DAO_ContributionPage',
238 'html' => [
239 'label' => ts("Contribution Page"),
240 ],
241 'add' => '1.5',
242 ],
243 'is_active' => [
244 'name' => 'is_active',
245 'type' => CRM_Utils_Type::T_BOOLEAN,
246 'title' => ts('Enabled?'),
247 'description' => ts('Is this property active?'),
248 'required' => TRUE,
249 'where' => 'civicrm_contribution_widget.is_active',
250 'default' => '1',
251 'table_name' => 'civicrm_contribution_widget',
252 'entity' => 'Widget',
253 'bao' => 'CRM_Contribute_BAO_Widget',
254 'localizable' => 0,
255 'add' => '2.0',
256 ],
257 'title' => [
258 'name' => 'title',
259 'type' => CRM_Utils_Type::T_STRING,
260 'title' => ts('Widget Title'),
261 'description' => ts('Widget title.'),
262 'maxlength' => 255,
263 'size' => CRM_Utils_Type::HUGE,
264 'where' => 'civicrm_contribution_widget.title',
265 'table_name' => 'civicrm_contribution_widget',
266 'entity' => 'Widget',
267 'bao' => 'CRM_Contribute_BAO_Widget',
268 'localizable' => 0,
269 'add' => '2.0',
270 ],
271 'url_logo' => [
272 'name' => 'url_logo',
273 'type' => CRM_Utils_Type::T_STRING,
274 'title' => ts('Widget Image Url'),
275 'description' => ts('URL to Widget logo'),
276 'maxlength' => 255,
277 'size' => CRM_Utils_Type::HUGE,
278 'where' => 'civicrm_contribution_widget.url_logo',
279 'table_name' => 'civicrm_contribution_widget',
280 'entity' => 'Widget',
281 'bao' => 'CRM_Contribute_BAO_Widget',
282 'localizable' => 0,
283 'add' => '2.0',
284 ],
285 'button_title' => [
286 'name' => 'button_title',
287 'type' => CRM_Utils_Type::T_STRING,
288 'title' => ts('Button Title'),
289 'description' => ts('Button title.'),
290 'maxlength' => 255,
291 'size' => CRM_Utils_Type::HUGE,
292 'where' => 'civicrm_contribution_widget.button_title',
293 'table_name' => 'civicrm_contribution_widget',
294 'entity' => 'Widget',
295 'bao' => 'CRM_Contribute_BAO_Widget',
296 'localizable' => 0,
297 'add' => '2.0',
298 ],
299 'about' => [
300 'name' => 'about',
301 'type' => CRM_Utils_Type::T_TEXT,
302 'title' => ts('Description'),
303 'description' => ts('About description.'),
304 'where' => 'civicrm_contribution_widget.about',
305 'table_name' => 'civicrm_contribution_widget',
306 'entity' => 'Widget',
307 'bao' => 'CRM_Contribute_BAO_Widget',
308 'localizable' => 0,
309 'add' => '2.0',
310 ],
311 'url_homepage' => [
312 'name' => 'url_homepage',
313 'type' => CRM_Utils_Type::T_STRING,
314 'title' => ts('Homepage Url'),
315 'description' => ts('URL to Homepage.'),
316 'maxlength' => 255,
317 'size' => CRM_Utils_Type::HUGE,
318 'where' => 'civicrm_contribution_widget.url_homepage',
319 'table_name' => 'civicrm_contribution_widget',
320 'entity' => 'Widget',
321 'bao' => 'CRM_Contribute_BAO_Widget',
322 'localizable' => 0,
323 'add' => '2.0',
324 ],
325 'color_title' => [
326 'name' => 'color_title',
327 'type' => CRM_Utils_Type::T_STRING,
328 'title' => ts('Title Color'),
329 'maxlength' => 10,
330 'size' => CRM_Utils_Type::TWELVE,
331 'where' => 'civicrm_contribution_widget.color_title',
332 'table_name' => 'civicrm_contribution_widget',
333 'entity' => 'Widget',
334 'bao' => 'CRM_Contribute_BAO_Widget',
335 'localizable' => 0,
336 'add' => '2.0',
337 ],
338 'color_button' => [
339 'name' => 'color_button',
340 'type' => CRM_Utils_Type::T_STRING,
341 'title' => ts('Button Color'),
342 'maxlength' => 10,
343 'size' => CRM_Utils_Type::TWELVE,
344 'where' => 'civicrm_contribution_widget.color_button',
345 'table_name' => 'civicrm_contribution_widget',
346 'entity' => 'Widget',
347 'bao' => 'CRM_Contribute_BAO_Widget',
348 'localizable' => 0,
349 'add' => '2.0',
350 ],
351 'color_bar' => [
352 'name' => 'color_bar',
353 'type' => CRM_Utils_Type::T_STRING,
354 'title' => ts('Bar Color'),
355 'maxlength' => 10,
356 'size' => CRM_Utils_Type::TWELVE,
357 'where' => 'civicrm_contribution_widget.color_bar',
358 'table_name' => 'civicrm_contribution_widget',
359 'entity' => 'Widget',
360 'bao' => 'CRM_Contribute_BAO_Widget',
361 'localizable' => 0,
362 'add' => '2.0',
363 ],
364 'color_main_text' => [
365 'name' => 'color_main_text',
366 'type' => CRM_Utils_Type::T_STRING,
367 'title' => ts('Main Text Color'),
368 'maxlength' => 10,
369 'size' => CRM_Utils_Type::TWELVE,
370 'where' => 'civicrm_contribution_widget.color_main_text',
371 'table_name' => 'civicrm_contribution_widget',
372 'entity' => 'Widget',
373 'bao' => 'CRM_Contribute_BAO_Widget',
374 'localizable' => 0,
375 'add' => '2.0',
376 ],
377 'color_main' => [
378 'name' => 'color_main',
379 'type' => CRM_Utils_Type::T_STRING,
380 'title' => ts('Main Color'),
381 'maxlength' => 10,
382 'size' => CRM_Utils_Type::TWELVE,
383 'where' => 'civicrm_contribution_widget.color_main',
384 'table_name' => 'civicrm_contribution_widget',
385 'entity' => 'Widget',
386 'bao' => 'CRM_Contribute_BAO_Widget',
387 'localizable' => 0,
388 'add' => '2.0',
389 ],
390 'color_main_bg' => [
391 'name' => 'color_main_bg',
392 'type' => CRM_Utils_Type::T_STRING,
393 'title' => ts('Background Color'),
394 'maxlength' => 10,
395 'size' => CRM_Utils_Type::TWELVE,
396 'where' => 'civicrm_contribution_widget.color_main_bg',
397 'table_name' => 'civicrm_contribution_widget',
398 'entity' => 'Widget',
399 'bao' => 'CRM_Contribute_BAO_Widget',
400 'localizable' => 0,
401 'add' => '2.0',
402 ],
403 'color_bg' => [
404 'name' => 'color_bg',
405 'type' => CRM_Utils_Type::T_STRING,
406 'title' => ts('Other Background Color'),
407 'maxlength' => 10,
408 'size' => CRM_Utils_Type::TWELVE,
409 'where' => 'civicrm_contribution_widget.color_bg',
410 'table_name' => 'civicrm_contribution_widget',
411 'entity' => 'Widget',
412 'bao' => 'CRM_Contribute_BAO_Widget',
413 'localizable' => 0,
414 'add' => '2.0',
415 ],
416 'color_about_link' => [
417 'name' => 'color_about_link',
418 'type' => CRM_Utils_Type::T_STRING,
419 'title' => ts('About Link Color'),
420 'maxlength' => 10,
421 'size' => CRM_Utils_Type::TWELVE,
422 'where' => 'civicrm_contribution_widget.color_about_link',
423 'table_name' => 'civicrm_contribution_widget',
424 'entity' => 'Widget',
425 'bao' => 'CRM_Contribute_BAO_Widget',
426 'localizable' => 0,
427 'add' => '2.0',
428 ],
429 'color_homepage_link' => [
430 'name' => 'color_homepage_link',
431 'type' => CRM_Utils_Type::T_STRING,
432 'title' => ts('Homepage Link Color'),
433 'maxlength' => 10,
434 'size' => CRM_Utils_Type::TWELVE,
435 'where' => 'civicrm_contribution_widget.color_homepage_link',
436 'table_name' => 'civicrm_contribution_widget',
437 'entity' => 'Widget',
438 'bao' => 'CRM_Contribute_BAO_Widget',
439 'localizable' => 0,
440 'add' => '2.0',
441 ],
442 ];
443 CRM_Core_DAO_AllCoreTables::invoke(__CLASS__, 'fields_callback', Civi::$statics[__CLASS__]['fields']);
444 }
445 return Civi::$statics[__CLASS__]['fields'];
446 }
447
448 /**
449 * Return a mapping from field-name to the corresponding key (as used in fields()).
450 *
451 * @return array
452 * Array(string $name => string $uniqueName).
453 */
454 public static function &fieldKeys() {
455 if (!isset(Civi::$statics[__CLASS__]['fieldKeys'])) {
456 Civi::$statics[__CLASS__]['fieldKeys'] = array_flip(CRM_Utils_Array::collect('name', self::fields()));
457 }
458 return Civi::$statics[__CLASS__]['fieldKeys'];
459 }
460
461 /**
462 * Returns the names of this table
463 *
464 * @return string
465 */
466 public static function getTableName() {
467 return self::$_tableName;
468 }
469
470 /**
471 * Returns if this table needs to be logged
472 *
473 * @return bool
474 */
475 public function getLog() {
476 return self::$_log;
477 }
478
479 /**
480 * Returns the list of fields that can be imported
481 *
482 * @param bool $prefix
483 *
484 * @return array
485 */
486 public static function &import($prefix = FALSE) {
487 $r = CRM_Core_DAO_AllCoreTables::getImports(__CLASS__, 'contribution_widget', $prefix, []);
488 return $r;
489 }
490
491 /**
492 * Returns the list of fields that can be exported
493 *
494 * @param bool $prefix
495 *
496 * @return array
497 */
498 public static function &export($prefix = FALSE) {
499 $r = CRM_Core_DAO_AllCoreTables::getExports(__CLASS__, 'contribution_widget', $prefix, []);
500 return $r;
501 }
502
503 /**
504 * Returns the list of indices
505 *
506 * @param bool $localize
507 *
508 * @return array
509 */
510 public static function indices($localize = TRUE) {
511 $indices = [];
512 return ($localize && !empty($indices)) ? CRM_Core_DAO_AllCoreTables::multilingualize(__CLASS__, $indices) : $indices;
513 }
514
515 }