Server IP : 172.24.0.40 / Your IP : 216.73.216.10 Web Server : Apache System : Linux dbweb26.ust.edu.ph 4.18.0-513.5.1.el8_9.x86_64 #1 SMP Fri Sep 29 05:21:10 EDT 2023 x86_64 User : apache ( 48) PHP Version : 8.2.18 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/ajels/public_html/wp-content/plugins/ninja-forms/includes/Entities/ |
Upload File : |
<?php namespace NinjaForms\Includes\Entities; use NinjaForms\Includes\Entities\SimpleEntity; /** * Entity holding title and label/value/styling output for metaboxes */ class MetaboxOutputEntity extends SimpleEntity { /** * Metabox title * * @var string */ protected $title = ''; /** * Collection of label/value/styling pairs for output * * @var array */ protected $labelValueCollection = []; /** * Construct entity from associative array * * @param array $items * @return SingleSubmission */ public static function fromArray(array $items): MetaboxOutputEntity { $obj = new static(); foreach ($items as $property => $value) { // Pass field value through entity to validate, then add, keyed on slug if ('labelValueCollection' === $property) { foreach ($value as $labelValueElement) { if (!isset($labelValueElement['label']) || !isset($labelValueElement['value'])) { continue; } $styling = isset($labelValueElement['styling'])?$labelValueElement['styling']:''; $obj->labelValueCollection[] = [ 'label' => $labelValueElement['label'], 'value' => $labelValueElement['value'], 'styling'=>$styling ]; } } else { $obj = $obj->__set($property, $value); } } return $obj; } /** * Constructs an array representation */ public function toArray(): array { $vars = get_object_vars($this); $array = ['labelValueCollection' => []]; foreach ($vars as $property => $value) { if('labelValueCollection'===$property){ $value = $this->validateLabelValueCollection($value); } $array[$property] = $value; } return $array; } protected function validateLabelValueCollection( $incomingLabelValueCollection): array { $return = []; if(!\is_array($incomingLabelValueCollection)){ return $return; } foreach($incomingLabelValueCollection as $incomingLabelValue){ if (!isset($incomingLabelValue['label']) || !isset($incomingLabelValue['value'])) { continue; } $styling = isset($incomingLabelValue['styling'])?$incomingLabelValue['styling']:''; $return[]=[ 'label' => $incomingLabelValue['label'], 'value' => $incomingLabelValue['value'], 'styling'=>$styling ]; } return $return; } /** * Get metabox title * * @return string */ public function getTitle(): string { return $this->title; } /** * Set metabox title * * @param string $title Metabox title * * @return MetaboxOutputEntity */ public function setTitle(string $title): MetaboxOutputEntity { $this->title = $title; return $this; } /** * Get the value of labelValueCollection */ public function getLabelValueCollection(): array { return $this->labelValueCollection; } /** * Set the value of labelValueCollection * * @return MetaboxOutputEntity */ public function setLabelValueCollection($labelValueCollection): MetaboxOutputEntity { $this->labelValueCollection = $labelValueCollection; return $this; } }