123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- <?php
- /**
- * Abstract Google Experiment Tab
- *
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\GoogleOptimizer\Block\Adminhtml;
- abstract class AbstractTab extends \Magento\Backend\Block\Widget\Form implements
- \Magento\Backend\Block\Widget\Tab\TabInterface
- {
- /**
- * @var \Magento\GoogleOptimizer\Helper\Data
- */
- protected $_helperData;
- /**
- * @var \Magento\Framework\Registry
- */
- protected $_registry;
- /**
- * @var \Magento\GoogleOptimizer\Helper\Code
- */
- protected $_codeHelper;
- /**
- * @var \Magento\GoogleOptimizer\Helper\Form
- */
- protected $_formHelper;
- /**
- * @param \Magento\Backend\Block\Template\Context $context
- * @param \Magento\GoogleOptimizer\Helper\Data $helperData
- * @param \Magento\Framework\Registry $registry
- * @param \Magento\GoogleOptimizer\Helper\Code $codeHelper
- * @param \Magento\GoogleOptimizer\Helper\Form $formHelper
- * @param \Magento\Framework\Data\FormFactory $formFactory
- * @param array $data
- */
- public function __construct(
- \Magento\Backend\Block\Template\Context $context,
- \Magento\GoogleOptimizer\Helper\Data $helperData,
- \Magento\Framework\Registry $registry,
- \Magento\GoogleOptimizer\Helper\Code $codeHelper,
- \Magento\GoogleOptimizer\Helper\Form $formHelper,
- \Magento\Framework\Data\FormFactory $formFactory,
- array $data = []
- ) {
- parent::__construct($context, $data);
- $this->_helperData = $helperData;
- $this->_registry = $registry;
- $this->_codeHelper = $codeHelper;
- $this->_formHelper = $formHelper;
- $this->setForm($formFactory->create());
- }
- /**
- * Prepare form before rendering HTML
- *
- * @return \Magento\Backend\Block\Widget\Form
- */
- protected function _prepareForm()
- {
- $this->_formHelper->addGoogleoptimizerFields($this->getForm(), $this->_getGoogleExperiment());
- return parent::_prepareForm();
- }
- /**
- * Get google experiment code model
- *
- * @return \Magento\GoogleOptimizer\Model\Code|null
- */
- protected function _getGoogleExperiment()
- {
- $entity = $this->_getEntity();
- if ($entity->getId()) {
- return $this->_codeHelper->getCodeObjectByEntity($entity);
- }
- return null;
- }
- /**
- * Get Entity model
- *
- * @return \Magento\Catalog\Model\AbstractModel
- */
- abstract protected function _getEntity();
- /**
- * Can show tab in tabs
- *
- * @return bool
- */
- public function canShowTab()
- {
- return $this->_helperData->isGoogleExperimentActive();
- }
- /**
- * Tab is hidden
- *
- * @return bool
- */
- public function isHidden()
- {
- return false;
- }
- }
|