![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/extmag/shiplab/Model/Source/ |
<?php /** * Copyright © Extmag. All rights reserved. */ namespace Extmag\Shiplab\Model\Source; use Magento\Framework\Data\OptionSourceInterface; class Generic implements OptionSourceInterface { /** * @var DataSet */ public $dataSet; /** * Carrier code * * @var string */ public $code = ''; /** * @param DataSet $dataSet */ public function __construct(DataSet $dataSet) { $this->dataSet = $dataSet; } /** * Returns array to be used in multiselect on back-end * * @return array */ public function toOptionArray() { $configData = $this->dataSet->getCode($this->code); $arr = []; foreach ($configData as $code => $title) { if (!is_array($title)) { $arr[] = ['value' => $code, 'label' => $title]; } else { $subCode = []; foreach ($title as $key => $item) { $subCode[] = ['value' => $key, 'label' => $item]; } $arr[] = ['value' => $subCode, 'label' => $code]; } } return $arr; } /** * To Array * * @return array */ public function toArray() { $configData = $this->dataSet->getCode($this->code); $arr = []; foreach ($configData as $code => $title) { $arr[$code] = $title; } return $arr; } }