Header.php 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Backend\Block\Page;
  7. /**
  8. * Adminhtml header block
  9. *
  10. * @api
  11. * @author Magento Core Team <core@magentocommerce.com>
  12. * @since 100.0.2
  13. */
  14. class Header extends \Magento\Backend\Block\Template
  15. {
  16. /**
  17. * @var string
  18. */
  19. protected $_template = 'Magento_Backend::page/header.phtml';
  20. /**
  21. * Backend data
  22. *
  23. * @var \Magento\Backend\Helper\Data
  24. */
  25. protected $_backendData = null;
  26. /**
  27. * @var \Magento\Backend\Model\Auth\Session
  28. */
  29. protected $_authSession;
  30. /**
  31. * @param \Magento\Backend\Block\Template\Context $context
  32. * @param \Magento\Backend\Model\Auth\Session $authSession
  33. * @param \Magento\Backend\Helper\Data $backendData
  34. * @param array $data
  35. */
  36. public function __construct(
  37. \Magento\Backend\Block\Template\Context $context,
  38. \Magento\Backend\Model\Auth\Session $authSession,
  39. \Magento\Backend\Helper\Data $backendData,
  40. array $data = []
  41. ) {
  42. $this->_backendData = $backendData;
  43. $this->_authSession = $authSession;
  44. parent::__construct($context, $data);
  45. }
  46. /**
  47. * @return string
  48. */
  49. public function getHomeLink()
  50. {
  51. return $this->_backendData->getHomePageUrl();
  52. }
  53. /**
  54. * @return \Magento\User\Model\User|null
  55. */
  56. public function getUser()
  57. {
  58. return $this->_authSession->getUser();
  59. }
  60. /**
  61. * @return string
  62. */
  63. public function getLogoutLink()
  64. {
  65. return $this->getUrl('adminhtml/auth/logout');
  66. }
  67. /**
  68. * Check if noscript notice should be displayed
  69. *
  70. * @return boolean
  71. */
  72. public function displayNoscriptNotice()
  73. {
  74. return $this->_scopeConfig->getValue(
  75. 'web/browser_capabilities/javascript',
  76. \Magento\Store\Model\ScopeInterface::SCOPE_STORE
  77. );
  78. }
  79. }