mirror of
https://github.com/bdnugget/magento2.git
synced 2026-11-07 09:17:35 +00:00
- replaced release version with package version in @since and @depreacated tags - removed @since tag from private properties/methods and non @api classes
39 lines
1.1 KiB
PHP
39 lines
1.1 KiB
PHP
<?php
|
|
/**
|
|
* Copyright © Magento, Inc. All rights reserved.
|
|
* See COPYING.txt for license details.
|
|
*/
|
|
namespace Magento\Store\Model\Config;
|
|
|
|
use Magento\Framework\App\DeploymentConfig\ValidatorInterface;
|
|
use Magento\Store\Model\ScopeInterface;
|
|
|
|
/**
|
|
* Validates that scopes data contain correct values
|
|
*/
|
|
class Validator implements ValidatorInterface
|
|
{
|
|
/**
|
|
* Checks that scopes data contain at least one not admin website, group and store
|
|
*
|
|
* {@inheritdoc}
|
|
*/
|
|
public function validate(array $data)
|
|
{
|
|
$errorMessage = ['Scopes data should have at least one not admin website, group and store.'];
|
|
//list of scope names and their identifier for admin scopes in $data.
|
|
$entities = [
|
|
ScopeInterface::SCOPE_GROUPS => 0,
|
|
ScopeInterface::SCOPE_STORES => 'admin',
|
|
ScopeInterface::SCOPE_WEBSITES => 'admin'
|
|
];
|
|
foreach ($entities as $scopeName => $key) {
|
|
if (empty($data[$scopeName])
|
|
|| (count($data[$scopeName]) == 1 && isset($data[$scopeName][$key]))) {
|
|
return $errorMessage;
|
|
}
|
|
}
|
|
return [];
|
|
}
|
|
}
|