![]() 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/magento/module-customer/Model/Customer/Source/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Customer\Model\Customer\Source; use Magento\Customer\Api\Data\GroupSearchResultsInterface; use Magento\Framework\Module\Manager as ModuleManager; use Magento\Customer\Api\Data\GroupInterface; use Magento\Customer\Api\GroupRepositoryInterface; use Magento\Framework\Api\SearchCriteriaBuilder; /** * Group. */ class Group implements GroupSourceInterface { /** * @var ModuleManager */ protected $moduleManager; /** * @var GroupRepositoryInterface */ protected $groupRepository; /** * @var SearchCriteriaBuilder */ protected $searchCriteriaBuilder; /** * @param ModuleManager $moduleManager * @param GroupRepositoryInterface $groupRepository * @param SearchCriteriaBuilder $searchCriteriaBuilder */ public function __construct( ModuleManager $moduleManager, GroupRepositoryInterface $groupRepository, SearchCriteriaBuilder $searchCriteriaBuilder ) { $this->moduleManager = $moduleManager; $this->groupRepository = $groupRepository; $this->searchCriteriaBuilder = $searchCriteriaBuilder; } /** * Return array of customer groups * * @return array */ public function toOptionArray() { if (!$this->moduleManager->isEnabled('Magento_Customer')) { return []; } $customerGroups = []; $customerGroups[] = [ 'label' => __('ALL GROUPS'), 'value' => (string)GroupInterface::CUST_GROUP_ALL, ]; /** @var GroupSearchResultsInterface $groups */ $groups = $this->groupRepository->getList($this->searchCriteriaBuilder->create()); foreach ($groups->getItems() as $group) { $customerGroups[] = [ 'label' => $group->getCode(), 'value' => $group->getId(), ]; } return $customerGroups; } }