<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ ?> <?php /** * Template for \Magento\Backend\Block\Widget\Grid * * getId() * getCollection() * getColumns() * getPagerVisibility() * getVarNamePage() * */ /* @var $block \Magento\Backend\Block\Widget\Grid */ /** @var \Magento\Framework\View\Helper\SecureHtmlRenderer $secureRenderer */ $numColumns = $block->getColumns() !== null ? count($block->getColumns()): 0; ?> <?php if ($block->getCollection()): ?> <?php if ($block->canDisplayContainer()): ?> <div id="<?= $block->escapeHtml($block->getId()) ?>" data-grid-id="<?= $block->escapeHtml($block->getId()) ?>"><?php else: ?> <?= $block->getLayout()->getMessagesBlock()->getGroupedHtml() ?> <?php endif; ?> <div class="admin__data-grid-header admin__data-grid-toolbar"><?php $massActionAvailable = $block->getChildBlock('grid.massaction') && $block->getChildBlock('grid.massaction')->isAvailable() ?> <?php if ($block->getPagerVisibility() || $block->getExportTypes() || $block->getChildBlock('grid.columnSet')->getFilterVisibility() || $massActionAvailable): ?> <div class="admin__data-grid-header-row"><?php if ($massActionAvailable): ?> <?= $block->getMainButtonsHtml() ? '<div class="admin__filter-actions">' . $block->getMainButtonsHtml() . '</div>' : '' ?> <?php endif; ?> <?php if ($block->getChildBlock('grid.export')): ?> <?= $block->getChildHtml('grid.export') ?> <?php endif; ?></div><?php endif; ?> <div class="<?php if ($massActionAvailable) { echo '_massaction ';} ?>admin__data-grid-header-row"><?php if ($massActionAvailable): ?> <?= $block->getChildHtml('grid.massaction') ?> <?php else: ?> <?= $block->getMainButtonsHtml() ? '<div class="admin__filter-actions">' . $block->getMainButtonsHtml() . '</div>' : '' ?> <?php endif; ?> <?php $countRecords = $block->getCollection()->getSize(); ?> <div class="admin__control-support-text"><span id="<?= $block->escapeHtml($block->getHtmlId()) ?>-total-count" <?= /* @noEscape */ $block->getUiId('total-count') ?>><?= /* @noEscape */ $countRecords ?></span> <?= $block->escapeHtml(__('records found')) ?> <span id="<?= $block->escapeHtml($block->getHtmlId()) ?>_massaction-count" class="mass-select-info _empty"><strong data-role="counter">0</strong> <span><?= $block->escapeHtml(__('selected')) ?></span></span></div><?php if ($block->getPagerVisibility()): ?> <div class="admin__data-grid-pager-wrap"><select name="<?= $block->escapeHtmlAttr($block->getVarNameLimit()) ?>" id="<?= $block->escapeHtml($block->getHtmlId()) ?>_page-limit" onchange="<?= /* @noEscape */ $block->getJsObjectName() ?>.loadByElement(this)" <?= /* @noEscape */ $block->getUiId('per-page') ?> class="admin__control-select"><option value="20"<?php if ($block->getCollection()->getPageSize() == 20): ?> selected="selected"<?php endif; ?>>20</option><option value="30"<?php if ($block->getCollection()->getPageSize() == 30): ?> selected="selected"<?php endif; ?>>30</option><option value="50"<?php if ($block->getCollection()->getPageSize() == 50): ?> selected="selected"<?php endif; ?>>50</option><option value="100"<?php if ($block->getCollection()->getPageSize() == 100): ?> selected="selected"<?php endif; ?>>100</option><option value="200"<?php if ($block->getCollection()->getPageSize() == 200): ?> selected="selected"<?php endif; ?>>200</option></select> <label for="<?= $block->escapeHtml($block->getHtmlId()) ?>_page-limit" class="admin__control-support-text"><?= $block->escapeHtml(__('per page')) ?></label> <div class="admin__data-grid-pager"><?php $_curPage = $block->getCollection()->getCurPage() ?> <?php $_lastPage = $block->getCollection()->getLastPageNumber() ?> <?php if ($_curPage > 1): ?> <button class="action-previous" type="button"><span><?= $block->escapeHtml(__('Previous page')) ?></span></button> <?= /* @noEscape */ $secureRenderer->renderEventListenerAsTag( 'onclick', /* @noEscape */ $block->getJsObjectName() . '.setPage(\'' . /* @noEscape */ ($_curPage - 1) . '\');event.preventDefault();', 'div#' . $block->escapeJs($block->getId()) . ' .admin__data-grid-pager button.action-previous:not(.disabled)' ) ?> <?php else: ?> <button type="button" class="action-previous disabled"><span><?= $block->escapeHtml(__('Previous page')) ?></span></button> <?php endif; ?> <input type="text" id="<?= $block->escapeHtml($block->getHtmlId()) ?>_page-current" name="<?= $block->escapeHtmlAttr($block->getVarNamePage()) ?>" value="<?= $block->escapeHtmlAttr($_curPage) ?>" class="admin__control-text" <?= /* @noEscape */ $block->getUiId('current-page') ?> /><?= /* @noEscape */ $secureRenderer->renderEventListenerAsTag( 'onkeypress', /* @noEscape */ $block->getJsObjectName() . '.inputPage(event, \'' . /* @noEscape */ $_lastPage . '\')', '#' . $block->escapeHtml($block->getHtmlId()) . '_page-current' ) ?> <label class="admin__control-support-text" for="<?= $block->escapeHtml($block->getHtmlId()) ?>_page-current"><?= /* @noEscape */ __('of %1', '<span>' . $block->getCollection()->getLastPageNumber() . '</span>') ?></label> <?php if ($_curPage < $_lastPage): ?> <button type="button" title="<?= $block->escapeHtmlAttr(__('Next page')) ?>" class="action-next"><span><?= $block->escapeHtml(__('Next page')) ?></span></button> <?= /* @noEscape */ $secureRenderer->renderEventListenerAsTag( 'onclick', /* @noEscape */ $block->getJsObjectName() . '.setPage(\'' . /* @noEscape */ ($_curPage + 1) . '\');event.preventDefault();', 'div#' . $block->escapeJs($block->getId()) . ' .admin__data-grid-pager button.action-next:not(.disabled)' ) ?> <?php else: ?> <button type="button" class="action-next disabled"><span><?= $block->escapeHtml(__('Next page')) ?></span></button> <?php endif; ?></div></div><?php endif ?></div></div><div class="admin__data-grid-wrap admin__data-grid-wrap-static"><?php if ($block->getGridCssClass()): ?> <table class="<?= $block->escapeHtmlAttr($block->getGridCssClass()) ?> data-grid" id="<?= $block->escapeHtml($block->getId()) ?>_table"><!-- Rendering column set --><?= $block->getChildHtml('grid.columnSet') ?></table><?php else: ?> <table class="data-grid" id="<?= $block->escapeHtml($block->getId()) ?>_table"><!-- Rendering column set --><?= $block->getChildHtml('grid.columnSet') ?></table><?php if ($block->getChildBlock('grid.bottom.links')): ?> <?= $block->getChildHtml('grid.bottom.links') ?> <?php endif; ?> <?php endif ?></div><?php if ($block->canDisplayContainer()): ?></div><?php $scriptString = 'var deps = [];' . PHP_EOL; if ($block->getDependencyJsObject()) { $scriptString .= 'deps.push(\'uiRegistry\');' . PHP_EOL; } if (strpos($block->getRowClickCallback(), 'order.') !== false) { $scriptString .= 'deps.push(\'Magento_Sales/order/create/form\');' . PHP_EOL; $scriptString .= 'deps.push(\'jquery\');' . PHP_EOL; } $scriptString .= 'deps.push(\'mage/adminhtml/grid\');' . PHP_EOL; $scriptString .= ' require(deps, function('. ($block->getDependencyJsObject() ? 'registry' : '') .'){' . PHP_EOL; if ($block->getDependencyJsObject()) { $scriptString .= 'registry.get(\'' . $block->escapeJs($block->getDependencyJsObject()) . '\', function ('. $block->escapeJs($block->getDependencyJsObject()) . ') {' . PHP_EOL; } $scriptString .= $block->escapeJs($block->getJsObjectName()) . ' = new varienGrid(\'' . $block->escapeJs($block->getId()) . '\', \'' . $block->escapeJs($block->getGridUrl()) . '\', \'' . $block->escapeJs($block->getVarNamePage()) .'\', \'' . $block->escapeJs($block->getVarNameSort()) . '\', \'' . $block->escapeJs($block->getVarNameDir()) . '\', \'' . $block->escapeJs($block->getVarNameFilter()) .'\'); ' . PHP_EOL; $scriptString .= $block->escapeJs($block->getJsObjectName()) . '.useAjax = ' . (/* @noEscape */ $block->escapeJs($block->getUseAjax()) ? 'true' : 'false') . ';' . PHP_EOL; if ($block->getRowClickCallback()) { $scriptString .= $block->escapeJs($block->getJsObjectName()) . '.rowClickCallback = ' . /* @noEscape */ $block->getRowClickCallback() . ';' . PHP_EOL; } if ($block->getCheckboxCheckCallback()) { $scriptString .= $block->escapeJs($block->getJsObjectName()) . '.checkboxCheckCallback = ' . /* @noEscape */ $block->getCheckboxCheckCallback() . ';' . PHP_EOL; } if ($block->getSortableUpdateCallback()) { $scriptString .= $block->escapeJs($block->getJsObjectName()) . '.sortableUpdateCallback = ' . /* @noEscape */ $block->getSortableUpdateCallback() . ';' . PHP_EOL; } if ($block->getFilterKeyPressCallback()) { $scriptString .= $block->escapeJs($block->getJsObjectName()) . '.filterKeyPressCallback = ' . /* @noEscape */ $block->getFilterKeyPressCallback() . ';' . PHP_EOL; } $scriptString .= $block->escapeJs($block->getJsObjectName()) . '.bindSortable();' . PHP_EOL; if ($block->getRowInitCallback()) { $scriptString .= $block->escapeJs($block->getJsObjectName()) . '.initRowCallback = ' . /* @noEscape */ $block->getRowInitCallback() . ';' . PHP_EOL; $scriptString .= $block->escapeJs($block->getJsObjectName()) . '..initGridRows();' . PHP_EOL; } if ($block->getChildBlock('grid.massaction') && $block->getChildBlock('grid.massaction')->isAvailable()) { $scriptString .= /* @noEscape */ $block->getChildBlock('grid.massaction')->getJavaScript() . PHP_EOL; } $scriptString .= /* @noEscape */ $block->getAdditionalJavaScript() . PHP_EOL; if ($block->getDependencyJsObject()) { $scriptString .= '});' . PHP_EOL; } $scriptString .= '});' . PHP_EOL; echo /* @noEscape */ $secureRenderer->renderTag('script', [], $scriptString, false); ?> <?php endif; ?> <?php if ($block->getChildBlock('grid.js')): ?> <?= $block->getChildHtml('grid.js') ?> <?php endif; ?> <?php endif ?>