DesignLoader.php 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Framework\View;
  7. class DesignLoader
  8. {
  9. /**
  10. * Request
  11. *
  12. * @var \Magento\Framework\App\RequestInterface
  13. */
  14. protected $_request;
  15. /**
  16. * Application
  17. *
  18. * @var \Magento\Framework\App\AreaList
  19. */
  20. protected $_areaList;
  21. /**
  22. * Layout
  23. *
  24. * @var \Magento\Framework\App\State
  25. */
  26. protected $appState;
  27. /**
  28. * @param \Magento\Framework\App\RequestInterface $request
  29. * @param \Magento\Framework\App\AreaList $areaList
  30. * @param \Magento\Framework\App\State $appState
  31. */
  32. public function __construct(
  33. \Magento\Framework\App\RequestInterface $request,
  34. \Magento\Framework\App\AreaList $areaList,
  35. \Magento\Framework\App\State $appState
  36. ) {
  37. $this->_request = $request;
  38. $this->_areaList = $areaList;
  39. $this->appState = $appState;
  40. }
  41. /**
  42. * Load design
  43. *
  44. * @return void
  45. */
  46. public function load()
  47. {
  48. $area = $this->_areaList->getArea($this->appState->getAreaCode());
  49. $area->load(\Magento\Framework\App\Area::PART_DESIGN);
  50. $area->load(\Magento\Framework\App\Area::PART_TRANSLATE);
  51. $area->detectDesign($this->_request);
  52. }
  53. }