Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Template.php
Go to the documentation of this file.
1 <?php
13 
18 class Template extends \Magento\Backend\Block\Template implements \Magento\Backend\Block\Widget\ContainerInterface
19 {
25  protected $_template = 'Magento_Email::template/list.phtml';
26 
30  protected $buttonList;
31 
35  protected $toolbar;
36 
43  public function __construct(
44  \Magento\Backend\Block\Template\Context $context,
45  \Magento\Backend\Block\Widget\Button\ButtonList $buttonList,
46  \Magento\Backend\Block\Widget\Button\ToolbarInterface $toolbar,
47  array $data = []
48  ) {
49  $this->buttonList = $buttonList;
50  $this->toolbar = $toolbar;
51  parent::__construct($context, $data);
52  }
53 
57  public function updateButton($buttonId, $key, $data)
58  {
59  $this->buttonList->update($buttonId, $key, $data);
60  return $this;
61  }
62 
68  protected function _prepareLayout()
69  {
70  $this->buttonList->add(
71  'add',
72  [
73  'label' => __('Add New Template'),
74  'onclick' => "window.location='" . $this->getCreateUrl() . "'",
75  'class' => 'add primary add-template'
76  ]
77  );
78  $this->toolbar->pushButtons($this, $this->buttonList);
79  return parent::_prepareLayout();
80  }
81 
87  public function getCreateUrl()
88  {
89  return $this->getUrl('adminhtml/*/new');
90  }
91 
95  public function addButton($buttonId, $data, $level = 0, $sortOrder = 0, $region = 'toolbar')
96  {
97  $this->buttonList->add($buttonId, $data, $level, $sortOrder, $region);
98  return $this;
99  }
100 
106  public function getHeaderText()
107  {
108  return __('Transactional Emails');
109  }
110 
114  public function removeButton($buttonId)
115  {
116  $this->buttonList->remove($buttonId);
117  return $this;
118  }
119 
125  protected function getAddButtonHtml()
126  {
127  $out = '';
128  foreach ($this->buttonList->getItems() as $buttons) {
130  foreach ($buttons as $item) {
131  $out .= $this->getChildHtml($item->getButtonKey());
132  }
133  }
134  return $out;
135  }
136 
140  public function canRender(\Magento\Backend\Block\Widget\Button\Item $item)
141  {
142  return !$item->isDeleted();
143  }
144 }
addButton($buttonId, $data, $level=0, $sortOrder=0, $region='toolbar')
Definition: Template.php:95
canRender(\Magento\Backend\Block\Widget\Button\Item $item)
Definition: Template.php:140
__()
Definition: __.php:13
__construct(\Magento\Backend\Block\Template\Context $context, \Magento\Backend\Block\Widget\Button\ButtonList $buttonList, \Magento\Backend\Block\Widget\Button\ToolbarInterface $toolbar, array $data=[])
Definition: Template.php:43
updateButton($buttonId, $key, $data)
Definition: Template.php:57