PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 1.3.1
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v1.3.1
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 6 years ago MultiPair.php 6 years ago
ArrayField.php
80 lines
1 <?php
2 /**
3 * Piwik - free/libre analytics platform
4 *
5 * @link https://matomo.org
6 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
7 *
8 */
9
10 namespace Piwik\Settings\FieldConfig;
11
12 /**
13 * Lets you configure a field for a field array.
14 *
15 * Usage:
16 *
17 * $field->uiControl = FieldConfig::UI_CONTROL_FIELD_ARRAY;
18 * $arrayField = new FieldConfig\ArrayField('Index', FieldConfig::UI_CONTROL_TEXT);
19 * $field->uiControlAttributes['field'] = $field->toArray();
20 *
21 * @api
22 */
23 class ArrayField
24 {
25 /**
26 * Describes what HTML element should be used to manipulate the setting through Piwik's UI.
27 *
28 * See {@link Piwik\Plugin\Settings} for a list of supported control types.
29 *
30 * @var string
31 */
32 public $uiControl = null;
33
34 /**
35 * Defines a custom template file for a UI control. This file should render a UI control and expose the value in a
36 * "formField.value" angular model. For an example see "plugins/CorePluginsAdmin/angularjs/form-field/field-text.html"
37 *
38 * @var string
39 */
40 public $customUiControlTemplateFile = '';
41
42 /**
43 * This setting's display name, for example, `'Refresh Interval'`.
44 *
45 * Be sure to escape any user input as HTML can be used here.
46 *
47 * @var string
48 */
49 public $title = '';
50
51 /**
52 * The list of all available values for this setting. If null, the setting can have any value.
53 *
54 * If supplied, this field should be an array mapping available values with their prettified
55 * display value. Eg, if set to `array('nb_visits' => 'Visits', 'nb_actions' => 'Actions')`,
56 * the UI will display **Visits** and **Actions**, and when the user selects one, Piwik will
57 * set the setting to **nb_visits** or **nb_actions** respectively.
58 *
59 * @var null|array
60 */
61 public $availableValues = null;
62
63 public function __construct($title, $uiControl = 'text')
64 {
65 $this->title = $title;
66 $this->uiControl = $uiControl;
67 }
68
69 public function toArray()
70 {
71 return array(
72 'title' => $this->title,
73 'uiControl' => $this->uiControl,
74 'templateFile' => $this->customUiControlTemplateFile,
75 'availableValues' => $this->availableValues,
76 );
77 }
78
79 }
80