PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / trunk
Matomo Analytics – Powerful, Privacy-First Insights for WordPress vtrunk
5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / app / core / Settings / FieldConfig / ArrayField.php
matomo / app / core / Settings / FieldConfig Last commit date
ArrayField.php 2 years ago MultiPair.php 2 years ago
ArrayField.php
68 lines
1 <?php
2
3 /**
4 * Matomo - free/libre analytics platform
5 *
6 * @link https://matomo.org
7 * @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
8 */
9 namespace Piwik\Settings\FieldConfig;
10
11 /**
12 * Lets you configure a field for a field array.
13 *
14 * Usage:
15 *
16 * $field->uiControl = FieldConfig::UI_CONTROL_FIELD_ARRAY;
17 * $arrayField = new FieldConfig\ArrayField('Index', FieldConfig::UI_CONTROL_TEXT);
18 * $field->uiControlAttributes['field'] = $field->toArray();
19 *
20 * @api
21 */
22 class ArrayField
23 {
24 /**
25 * Describes what HTML element should be used to manipulate the setting through Piwik's UI.
26 *
27 * See {@link Piwik\Plugin\Settings} for a list of supported control types.
28 *
29 * @var string
30 */
31 public $uiControl = null;
32 /**
33 * Array like ['plugin' => 'MyPlugin', 'component' => 'MyExportedCustomFieldComponent']. For an example see
34 * "plugins/CorePluginsAdmin/vue/src/FormField/FieldText.vue"
35 *
36 * @var string[]
37 */
38 public $customFieldComponent = null;
39 /**
40 * This setting's display name, for example, `'Refresh Interval'`.
41 *
42 * Be sure to escape any user input as HTML can be used here.
43 *
44 * @var string
45 */
46 public $title = '';
47 /**
48 * The list of all available values for this setting. If null, the setting can have any value.
49 *
50 * If supplied, this field should be an array mapping available values with their prettified
51 * display value. Eg, if set to `array('nb_visits' => 'Visits', 'nb_actions' => 'Actions')`,
52 * the UI will display **Visits** and **Actions**, and when the user selects one, Piwik will
53 * set the setting to **nb_visits** or **nb_actions** respectively.
54 *
55 * @var null|array
56 */
57 public $availableValues = null;
58 public function __construct($title, $uiControl = 'text')
59 {
60 $this->title = $title;
61 $this->uiControl = $uiControl;
62 }
63 public function toArray()
64 {
65 return array('title' => $this->title, 'uiControl' => $this->uiControl, 'component' => $this->customFieldComponent, 'availableValues' => $this->availableValues);
66 }
67 }
68