<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Analytics\Model\Config\Source; /** * A source model for verticals configuration. * * Prepares and provides options for a selector of verticals which is located * in the corresponding configuration menu of the Admin area. */ class Vertical implements \Magento\Framework\Option\ArrayInterface { /** * The list of possible verticals. * * This list is configured via di.xml and may be extended or changed * in any module if it is needed. * * It is supposed that the list may be changed in each Magento release. * * @var array */ private $verticals; /** * @param array $verticals */ public function __construct(array $verticals) { $this->verticals = $verticals; } /** * {@inheritdoc} */ public function toOptionArray() { $result = [ ['value' => '', 'label' => __('--Please Select--')] ]; foreach ($this->verticals as $vertical) { $result[] = ['value' => $vertical, 'label' => __($vertical)]; } return $result; } }