From 3660f3379923bcc51f6d4f644e044932cf45c748 Mon Sep 17 00:00:00 2001 From: Thomas Peterson Date: Thu, 17 Jul 2025 14:00:44 +0200 Subject: [PATCH] Fixes --- cobertura.xml | 138 ++++++++++++++++++++----------------- src/Option/Type/Select.php | 75 +++++++++++--------- 2 files changed, 116 insertions(+), 97 deletions(-) diff --git a/cobertura.xml b/cobertura.xml index 2900cf4..3600d3f 100644 --- a/cobertura.xml +++ b/cobertura.xml @@ -1,6 +1,6 @@ - + /home/thomas/projekte/calc/src @@ -7900,9 +7900,9 @@ - + - + @@ -7923,109 +7923,115 @@ + - + - + - - + - + - + - + - + - + - + - + - + + - + - - + - + + - + - + - + - - - - - - + + + + + + + + + + + - - - - - - + - + + + + + + @@ -8035,28 +8041,29 @@ + - + - + - - - - - - - - - + + + + + + + + + - + - - - + + + @@ -8065,27 +8072,32 @@ - + - + - - - - - - + + + + + + + + - - - - + + - + + + + + + diff --git a/src/Option/Type/Select.php b/src/Option/Type/Select.php index dcb8937..c1e7346 100644 --- a/src/Option/Type/Select.php +++ b/src/Option/Type/Select.php @@ -1,18 +1,18 @@ options = new \ArrayIterator($options); } - /** * Verarbeitet das Value */ public function processValue() { - $option = $this->getSelectedOptions()[0]??null; - if($option) { + $option = $this->getSelectedOptions()[0] ?? null; + if ($option) { $this->setValue($option->getLabel()); $this->setRawValue($option->getId()); } @@ -107,19 +106,19 @@ class Select extends Base return $this->selectedOptions; } - public function getSelectedOption(): ?Opt + public function getSelectedOption(): null|Opt { - return $this->selectedOptions[0]?? null; + return $this->selectedOptions[0] ?? null; } - public function addSelectedOption(?Opt $opt): void + public function addSelectedOption(null|Opt $opt): void { - if(!$this->multiSelect) { + if (!$this->multiSelect) { $this->selectedOptions = new \ArrayIterator([$opt]); return; } - foreach($this->selectedOptions as $sel) { - if($sel->getId() === $opt->getId()) { + foreach ($this->selectedOptions as $sel) { + if ($sel->getId() === $opt->getId()) { return; } } @@ -130,8 +129,9 @@ class Select extends Base { $tmp = []; /** @var Opt $opt */ - foreach($this->getOptions() as $opt) { - if($opt->isValid()) $tmp[] = $opt; + foreach ($this->getOptions() as $opt) { + if ($opt->isValid()) + $tmp[] = $opt; } return $tmp; @@ -139,41 +139,48 @@ class Select extends Base public function generateXML(): array { - $options = $this->options; - $tmp = ['opt' => function () use ($options) { - $xml_options = []; - foreach ($options as $option) { - $xml_options[] = $option->generateXML(); - } + if ($this->container == '') { + $options = $this->options; + $tmp = ['opt' => function () use ($options) { + $xml_options = []; + foreach ($options as $option) { + $xml_options[] = $option->generateXML(); + } - return $xml_options; - }]; + return $xml_options; + }]; + } else { + $tmp = []; + } - if($this->isRequire()) { + if ($this->isRequire()) { $tmp['_attributes'] = [ - 'require' => $this->isRequire()?'true':'false' + 'require' => $this->isRequire() ? 'true' : 'false', ]; } - return array_merge_recursive([ - '_attributes' => [ - 'default' => $this->getDefault(), - ] - ] - , parent::generateXML(), $tmp); + return array_merge_recursive( + [ + '_attributes' => [ + 'default' => $this->getDefault(), + ], + ], + parent::generateXML(), + $tmp, + ); } public function generateJson(): \stdClass { $obj = parent::generateJson(); - if($this->isRequire()) { + if ($this->isRequire()) { $obj->required = $this->isRequire(); } $obj->type = 3; $obj->options = []; $obj->mode = 'normal'; - foreach($this->options as $opt) { + foreach ($this->options as $opt) { $obj->options[] = $opt->generateJson(); }