Server IP : 192.158.238.246 / Your IP : 3.142.135.246 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/4082427/root/home/jenniferflocom/www/wp-content/plugins/give/src/FormAPI/Form/ |
Upload File : |
<?php namespace Give\FormAPI\Form; use Give\Framework\Exceptions\Primitives\InvalidArgumentException; class Group extends Field { /** * Field options. * Note: Allow to update repeater aka group field frontend output. * * @since 2.7.0 * @var array */ public $options = []; /** * Sub fields * * Note: Allow developer to add sub fields to group. * * @since 2.7.0 * @var array */ public $fields = []; /** * @inheritDoc */ public function parse($array) { parent::parse($array); $defaultOptions = [ 'header_title' => esc_attr__('Group', 'give'), 'add_button' => esc_html__('Add Row', 'give'), 'group_numbering' => 0, 'close_tabs' => 0, ]; $this->options = isset($array['options']) ? array_merge($defaultOptions, $array['options']) : $defaultOptions; $this->fields = isset($array['fields']) ? $array['fields'] : []; } /** * @inheritDoc */ public function toArray() { return array_merge( parent::toArray(), [ 'options' => $this->options, 'fields' => $this->fields, ] ); } /** * Get sub fields. * * @since 2.7.0 * * @param string $fieldId * * @return array */ public function getFieldArguments($fieldId) { $field = current( array_filter( $this->fields, static function ($field) use ($fieldId) { return $fieldId === $field['id']; } ) ); // Validate field. if ( ! $field) { throw new InvalidArgumentException( sprintf( __('Field with %1$s Id does not exist in group.', 'give'), $fieldId ) ); } return $field; } }