File: /home/petsclubcc/magento/vendor/magento/module-store/Model/StoreResolver/Website.php
<?php
/**
* Copyright © 2016 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Store\Model\StoreResolver;
class Website implements ReaderInterface
{
/**
* @var \Magento\Store\Api\WebsiteRepositoryInterface
*/
protected $websiteRepository;
/**
* @var \Magento\Store\Api\GroupRepositoryInterface
*/
protected $groupRepository;
/**
* @var \Magento\Store\Api\StoreRepositoryInterface
*/
protected $storeRepository;
/**
* @param \Magento\Store\Api\StoreRepositoryInterface $storeRepository
* @param \Magento\Store\Api\WebsiteRepositoryInterface $websiteRepository
* @param \Magento\Store\Api\GroupRepositoryInterface $groupRepository
*/
public function __construct(
\Magento\Store\Api\StoreRepositoryInterface $storeRepository,
\Magento\Store\Api\WebsiteRepositoryInterface $websiteRepository,
\Magento\Store\Api\GroupRepositoryInterface $groupRepository
) {
$this->websiteRepository = $websiteRepository;
$this->groupRepository = $groupRepository;
$this->storeRepository = $storeRepository;
}
/**
* {@inheritdoc}
*/
public function getAllowedStoreIds($scopeCode)
{
$stores = [];
$website = $scopeCode ? $this->websiteRepository->get($scopeCode) : $this->websiteRepository->getDefault();
foreach ($this->storeRepository->getList() as $store) {
if ($store->isActive() && $store->getWebsiteId() == $website->getId()) {
$stores[] = $store->getId();
}
}
return $stores;
}
/**
* {@inheritdoc}
*/
public function getDefaultStoreId($scopeCode)
{
$website = $scopeCode ? $this->websiteRepository->get($scopeCode) : $this->websiteRepository->getDefault();
return $this->groupRepository->get($website->getDefaultGroupId())->getDefaultStoreId();
}
}