Trial.php 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. namespace Dotdigitalgroup\Email\Block\Adminhtml\Config;
  3. class Trial extends \Magento\Config\Block\System\Config\Form\Fieldset
  4. {
  5. const TRIAL_EXTERNAL_URL = 'https://www.dotmailer.com/trial/';
  6. /**
  7. * @var \Dotdigitalgroup\Email\Helper\Data
  8. */
  9. public $helper;
  10. /**
  11. * Trial constructor.
  12. *
  13. * @param \Magento\Backend\Block\Context $context
  14. * @param \Magento\Backend\Model\Auth\Session $authSession
  15. * @param \Magento\Framework\View\Helper\Js $jsHelper
  16. * @param \Dotdigitalgroup\Email\Helper\Data $helper
  17. * @param array $data
  18. */
  19. public function __construct(
  20. \Magento\Backend\Block\Context $context,
  21. \Magento\Backend\Model\Auth\Session $authSession,
  22. \Magento\Framework\View\Helper\Js $jsHelper,
  23. \Dotdigitalgroup\Email\Helper\Data $helper,
  24. array $data = []
  25. ) {
  26. $this->helper = $helper;
  27. parent::__construct($context, $authSession, $jsHelper, $data);
  28. }
  29. /**
  30. * @param \Magento\Framework\Data\Form\Element\AbstractElement $element
  31. *
  32. * @return string
  33. * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  34. */
  35. public function render(\Magento\Framework\Data\Form\Element\AbstractElement $element)
  36. {
  37. if (! $this->helper->isFrontEndAdminSecure()) {
  38. $html = '<a href=' .
  39. self::TRIAL_EXTERNAL_URL .
  40. ' target="_blank"><img style="margin-bottom:15px;" src=' .
  41. $this->getViewFileUrl('Dotdigitalgroup_Email::images/banner.png') .
  42. ' alt="Open Trial Account"></a>';
  43. } else {
  44. $internalUrl = $this->getUrl('dotdigitalgroup_email/connector/trial');
  45. $html = '<a class="ddg-fancyBox fancybox.iframe" data-fancybox-type="iframe" href=' .
  46. $this->escapeUrl($internalUrl) . '><img style="margin-bottom:15px;" src=' .
  47. $this->getViewFileUrl('Dotdigitalgroup_Email::images/banner.png') .
  48. ' alt="Open Trial Account"></a>';
  49. }
  50. return $html;
  51. }
  52. }