PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.13.2
GiveWP – Donation Plugin and Fundraising Platform v2.13.2
4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / FormAPI / Form / Group.php
give / src / FormAPI / Form Last commit date
Colorpicker.php 6 years ago Field.php 5 years ago File.php 6 years ago Group.php 5 years ago Media.php 6 years ago Radio.php 6 years ago Text.php 6 years ago Textarea.php 6 years ago Wysiwyg.php 6 years ago
Group.php
93 lines
1 <?php
2
3 namespace Give\FormAPI\Form;
4
5 use Give\Framework\Exceptions\Primitives\InvalidArgumentException;
6
7 class Group extends Field {
8 /**
9 * Field options.
10 * Note: Allow to update repeater aka group field frontend output.
11 *
12 * @since 2.7.0
13 * @var array
14 */
15 public $options = [];
16
17 /**
18 * Sub fields
19 *
20 * Note: Allow developer to add sub fields to group.
21 *
22 * @since 2.7.0
23 * @var array
24 */
25 public $fields = [];
26
27 /**
28 * @inheritDoc
29 */
30 public function parse( $array ) {
31 parent::parse( $array );
32
33 $defaultOptions = [
34 'header_title' => esc_attr__( 'Group', 'give' ),
35 'add_button' => esc_html__( 'Add Row', 'give' ),
36 'group_numbering' => 0,
37 'close_tabs' => 0,
38 ];
39
40 $this->options = isset( $array['options'] ) ?
41 array_merge( $defaultOptions, $array['options'] ) :
42 $defaultOptions;
43
44 $this->fields = isset( $array['fields'] ) ?
45 $array['fields'] :
46 [];
47 }
48
49 /**
50 * @inheritDoc
51 */
52 public function toArray() {
53 return array_merge(
54 parent::toArray(),
55 [
56 'options' => $this->options,
57 'fields' => $this->fields,
58 ]
59 );
60 }
61
62
63 /**
64 * Get sub fields.
65 *
66 * @since 2.7.0
67 * @param string $fieldId
68 * @return array
69 */
70 public function getFieldArguments( $fieldId ) {
71 $field = current(
72 array_filter(
73 $this->fields,
74 static function( $field ) use ( $fieldId ) {
75 return $fieldId === $field['id'];
76 }
77 )
78 );
79
80 // Validate field.
81 if ( ! $field ) {
82 throw new InvalidArgumentException(
83 sprintf(
84 __( 'Field with %1$s Id does not exist in group.', 'give' ),
85 $fieldId
86 )
87 );
88 }
89
90 return $field;
91 }
92 }
93