|
| __construct (\Magento\Store\Model\StoreManagerInterface $storeManager, \Magento\Framework\View\DesignInterface $viewDesign, \Magento\Framework\App\DesignInterface $design, \Magento\Framework\TranslateInterface $translate, \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig, ConfigInterface $inlineConfig, \Magento\Framework\Translate\Inline\StateInterface $inlineTranslation, \Magento\Framework\Locale\ResolverInterface $localeResolver, \Psr\Log\LoggerInterface $logger, array $data=[]) |
|
| startEnvironmentEmulation ( $storeId, $area=\Magento\Framework\App\Area::AREA_FRONTEND, $force=false) |
|
| stopEnvironmentEmulation () |
|
| storeCurrentEnvironmentInfo () |
|
| __construct (array $data=[]) |
|
| addData (array $arr) |
|
| setData ($key, $value=null) |
|
| unsetData ($key=null) |
|
| getData ($key='', $index=null) |
|
| getDataByPath ($path) |
|
| getDataByKey ($key) |
|
| setDataUsingMethod ($key, $args=[]) |
|
| getDataUsingMethod ($key, $args=null) |
|
| hasData ($key='') |
|
| toArray (array $keys=[]) |
|
| convertToArray (array $keys=[]) |
|
| toXml (array $keys=[], $rootName='item', $addOpenTag=false, $addCdata=true) |
|
| convertToXml (array $arrAttributes=[], $rootName='item', $addOpenTag=false, $addCdata=true) |
|
| toJson (array $keys=[]) |
|
| convertToJson (array $keys=[]) |
|
| toString ($format='') |
|
| __call ($method, $args) |
|
| isEmpty () |
|
| serialize ($keys=[], $valueSeparator='=', $fieldSeparator=' ', $quote='"') |
|
| debug ($data=null, &$objects=[]) |
|
| offsetSet ($offset, $value) |
|
| offsetExists ($offset) |
|
| offsetUnset ($offset) |
|
| offsetGet ($offset) |
|
@api
- Since
- 100.0.2
Definition at line 18 of file Emulation.php.
◆ __construct()
- Parameters
-
\Magento\Store\Model\StoreManagerInterface | $storeManager | |
\Magento\Framework\View\DesignInterface | $viewDesign | |
\Magento\Framework\App\DesignInterface | $design | |
\Magento\Framework\TranslateInterface | $translate | |
\Magento\Framework\App\Config\ScopeConfigInterface | $scopeConfig | |
ConfigInterface | $inlineConfig | |
\Magento\Framework\Translate\Inline\StateInterface | $inlineTranslation | |
\Magento\Framework\Locale\ResolverInterface | $localeResolver | |
\Psr\Log\LoggerInterface | $logger | |
array | $data | @SuppressWarnings(PHPMD.ExcessiveParameterList) |
Definition at line 82 of file Emulation.php.
94 $this->_localeResolver = $localeResolver;
95 parent::__construct(
$data);
97 $this->_viewDesign = $viewDesign;
98 $this->_design = $design;
99 $this->_translate = $translate;
100 $this->_scopeConfig = $scopeConfig;
103 $this->logger = $logger;
◆ _restoreInitialDesign()
_restoreInitialDesign |
( |
array |
$initialDesign | ) |
|
|
protected |
Restore design of the initial store
- Parameters
-
- Returns
- $this
Definition at line 225 of file Emulation.php.
227 $this->_viewDesign->setDesignTheme($initialDesign[
'theme'], $initialDesign[
'area']);
◆ _restoreInitialInlineTranslation()
_restoreInitialInlineTranslation |
( |
|
$initialTranslate | ) |
|
|
protected |
Restore initial inline translation state
- Parameters
-
- Returns
- $this
Definition at line 213 of file Emulation.php.
215 $this->inlineTranslation->resume($initialTranslate);
◆ _restoreInitialLocale()
Restore locale of the initial store
- Parameters
-
string | $initialLocaleCode | |
string | $initialArea | |
- Returns
- $this
Definition at line 238 of file Emulation.php.
242 $this->_localeResolver->setLocale($initialLocaleCode);
243 $this->_translate->setLocale($initialLocaleCode);
244 $this->_translate->loadData($initialArea);
◆ startEnvironmentEmulation()
Start environment emulation of the specified store
Function returns information about initial store environment and emulates environment of another store
- Parameters
-
integer | $storeId | |
string | $area | |
bool | $force | A true value will ensure that environment is always emulated, regardless of current store |
- Returns
- void
Definition at line 116 of file Emulation.php.
122 if ($this->initialEnvironmentInfo !==
null) {
123 $this->logger->error(
__(
'Environment emulation nesting is not allowed.'));
127 if (
$storeId == $this->_storeManager->getStore()->getStoreId() && !$force) {
133 $this->inlineTranslation->suspend($this->inlineConfig->isActive(
$storeId));
136 $storeTheme = $this->_viewDesign->getConfigurationDesignTheme($area, [
'store' =>
$storeId]);
137 $this->_viewDesign->setDesignTheme($storeTheme, $area);
139 if ($area == \
Magento\Framework\
App\Area::AREA_FRONTEND) {
140 $designChange = $this->_design->loadChange(
$storeId);
141 if ($designChange->getData()) {
142 $this->_viewDesign->setDesignTheme($designChange->getDesign(), $area);
147 $this->_storeManager->setCurrentStore(
$storeId);
150 $newLocaleCode = $this->_scopeConfig->getValue(
151 $this->_localeResolver->getDefaultLocalePath(),
155 $this->_localeResolver->setLocale($newLocaleCode);
156 $this->_translate->setLocale($newLocaleCode);
157 $this->_translate->loadData($area);
storeCurrentEnvironmentInfo()
◆ stopEnvironmentEmulation()
stopEnvironmentEmulation |
( |
| ) |
|
Stop environment emulation
Function restores initial store environment
- Returns
- \Magento\Store\Model\App\Emulation
Definition at line 169 of file Emulation.php.
171 if ($this->initialEnvironmentInfo ===
null) {
176 $initialDesign = $this->initialEnvironmentInfo->getInitialDesign();
179 $this->_storeManager->setCurrentStore($initialDesign[
'store']);
180 $this->
_restoreInitialLocale($this->initialEnvironmentInfo->getInitialLocaleCode(), $initialDesign[
'area']);
182 $this->initialEnvironmentInfo =
null;
_restoreInitialDesign(array $initialDesign)
_restoreInitialLocale( $initialLocaleCode, $initialArea=\Magento\Framework\App\Area::AREA_ADMINHTML)
_restoreInitialInlineTranslation($initialTranslate)
◆ storeCurrentEnvironmentInfo()
storeCurrentEnvironmentInfo |
( |
| ) |
|
Stores current environment info
- Returns
- void
Definition at line 191 of file Emulation.php.
193 $this->initialEnvironmentInfo = new \Magento\Framework\DataObject();
194 $this->initialEnvironmentInfo->setInitialTranslateInline(
195 $this->inlineTranslation->isEnabled()
198 'area' => $this->_viewDesign->getArea(),
199 'theme' => $this->_viewDesign->getDesignTheme(),
200 'store' => $this->_storeManager->getStore()->getStoreId(),
202 )->setInitialLocaleCode(
203 $this->_localeResolver->getLocale()
◆ $_design
◆ $_localeResolver
◆ $_scopeConfig
◆ $_storeManager
◆ $_translate
◆ $inlineConfig
◆ $inlineTranslation
The documentation for this class was generated from the following file: