Merge pull request #21622 from eileenmcnaughton/test_cont
[civicrm-core.git] / Civi / Api4 / Query / SqlFunctionIF.php
1 <?php
2 /*
3 +--------------------------------------------------------------------+
4 | Copyright CiviCRM LLC. All rights reserved. |
5 | |
6 | This work is published under the GNU AGPLv3 license with some |
7 | permitted exceptions and without any warranty. For full license |
8 | and copyright information, see https://civicrm.org/licensing |
9 +--------------------------------------------------------------------+
10 */
11
12 namespace Civi\Api4\Query;
13
14 /**
15 * Sql function
16 */
17 class SqlFunctionIF extends SqlFunction {
18
19 protected static $category = self::CATEGORY_COMPARISON;
20
21 protected static $dataType = 'String';
22
23 protected static function params(): array {
24 return [
25 [
26 'optional' => FALSE,
27 'must_be' => ['SqlEquation', 'SqlField'],
28 'label' => ts('If'),
29 ],
30 [
31 'optional' => FALSE,
32 'must_be' => ['SqlField', 'SqlString', 'SqlNumber', 'SqlNull'],
33 'label' => ts('Then'),
34 ],
35 [
36 'optional' => FALSE,
37 'must_be' => ['SqlField', 'SqlString', 'SqlNumber', 'SqlNull'],
38 'label' => ts('Else'),
39 ],
40 ];
41 }
42
43 /**
44 * @return string
45 */
46 public static function getTitle(): string {
47 return ts('If/Else');
48 }
49
50 /**
51 * @return string
52 */
53 public static function getDescription(): string {
54 return ts('If the field is empty, the first value, otherwise the second.');
55 }
56
57 }