No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
 
 
 
 
 
 

201 líneas
10 KiB

  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. ?>
  7. <?php
  8. /**
  9. * @var $block \Magento\Reports\Block\Adminhtml\Grid
  10. * @var \Magento\Framework\View\Helper\SecureHtmlRenderer $secureRenderer
  11. */
  12. ?>
  13. <?php if ($block->getCollection()): ?>
  14. <?php if ($block->canDisplayContainer()): ?>
  15. <div id="<?= $block->escapeHtmlAttr($block->getId()) ?>">
  16. <?php else: ?>
  17. <?= $block->getLayout()->getMessagesBlock()->getGroupedHtml() ?>
  18. <?php endif; ?>
  19. <?php if ($block->getStoreSwitcherVisibility() || $block->getDateFilterVisibility()): ?>
  20. <div class="admin__data-grid-header admin__data-grid-toolbar">
  21. <div class="admin__data-grid-header-row">
  22. <?php if ($block->getDateFilterVisibility()): ?>
  23. <div class="admin__filter-actions" data-role="filter-form"
  24. id="<?= $block->escapeHtmlAttr($block->getSuffixId('period_date_range')) ?>">
  25. <span class="field-row">
  26. <label for="<?= $block->escapeHtmlAttr($block->getSuffixId('period_date_from')) ?>"
  27. class="admin__control-support-text">
  28. <span><?= $block->escapeHtml(__('From')) ?>:</span>
  29. </label>
  30. <input class="input-text no-changes required-entry admin__control-text"
  31. type="text"
  32. id="<?= $block->escapeHtmlAttr($block->getSuffixId('period_date_from')) ?>"
  33. name="report_from"
  34. value="<?= $block->escapeHtmlAttr($block->getFilter('report_from')) ?>">
  35. <span id="<?= $block->escapeHtmlAttr($block->getSuffixId('period_date_from_advice'))?>">
  36. </span>
  37. </span>
  38. <span class="field-row">
  39. <label for="<?= $block->escapeHtmlAttr($block->getSuffixId('period_date_to')) ?>"
  40. class="admin__control-support-text">
  41. <span><?= $block->escapeHtml(__('To')) ?>:</span>
  42. </label>
  43. <input class="input-text no-changes required-entry admin__control-text"
  44. type="text"
  45. id="<?= $block->escapeHtmlAttr($block->getSuffixId('period_date_to')) ?>"
  46. name="report_to"
  47. value="<?= $block->escapeHtmlAttr($block->getFilter('report_to')) ?>"/>
  48. <span id="<?= $block->escapeHtmlAttr($block->getSuffixId('period_date_to_advice')) ?>">
  49. </span>
  50. </span>
  51. <span class="field-row admin__control-filter">
  52. <label for="<?= $block->escapeHtmlAttr($block->getSuffixId('report_period')) ?>"
  53. class="admin__control-support-text">
  54. <span><?= $block->escapeHtml(__('Show By')) ?>:</span>
  55. </label>
  56. <select name="report_period"
  57. id="<?= $block->escapeHtmlAttr($block->getSuffixId('report_period')) ?>"
  58. class="admin__control-select">
  59. <?php foreach ($block->getPeriods() as $_value => $_label): ?>
  60. <option value="<?= $block->escapeHtmlAttr($_value) ?>"
  61. <?php if ($block->getFilter('report_period') == $_value):
  62. ?> selected<?php endif; ?>><?= $block->escapeHtml($_label) ?>
  63. </option>
  64. <?php endforeach; ?>
  65. </select>
  66. <?= $block->getRefreshButtonHtml() ?>
  67. </span>
  68. <?php $scriptString = <<<script
  69. require([
  70. "jquery",
  71. "mage/calendar"
  72. ], function($){
  73. $("#{$block->escapeJs($block->getSuffixId('period_date_range'))}").dateRange({
  74. dateFormat:"{$block->escapeJs($block->getDateFormat())}",
  75. buttonText:"{$block->escapeJs(__('Select Date'))}",
  76. from:{
  77. id:"{$block->escapeJs($block->getSuffixId('period_date_from'))}"
  78. },
  79. to:{
  80. id:"{$block->escapeJs($block->getSuffixId('period_date_to'))}"
  81. }
  82. });
  83. });
  84. script;
  85. ?>
  86. <?= /* @noEscape */ $secureRenderer->renderTag('script', [], $scriptString, false) ?>
  87. </div>
  88. <?php endif; ?>
  89. <?php if ($block->getChildBlock('grid.export')): ?>
  90. <?= $block->getChildHtml('grid.export') ?>
  91. <?php endif; ?>
  92. </div>
  93. </div>
  94. <?php endif; ?>
  95. <div class="admin__data-grid-wrap admin__data-grid-wrap-static">
  96. <table class="data-grid" id="<?= $block->escapeHtmlAttr($block->getId()) ?>_table">
  97. <?= $block->getChildHtml('grid.columnSet') ?>
  98. </table>
  99. </div>
  100. </div>
  101. <?php if ($block->canDisplayContainer()): ?>
  102. <?php $useAjax = '';
  103. if ($block->getUseAjax()):
  104. $useAjax = $block->escapeJs($block->getUseAjax());
  105. endif;
  106. $scriptString = <<<script
  107. require([
  108. "jquery",
  109. "validation",
  110. "mage/mage",
  111. "mage/adminhtml/grid"
  112. ], function(jQuery){
  113. //<![CDATA[
  114. {$block->escapeJs($block->getJsObjectName())} = new varienGrid('{$block->escapeJs($block->getId())}',
  115. '{$block->escapeJs($block->getGridUrl())}', '{$block->escapeJs($block->getVarNamePage())}',
  116. '{$block->escapeJs($block->getVarNameSort())}', '{$block->escapeJs($block->getVarNameDir())}',
  117. '{$block->escapeJs($block->getVarNameFilter())}');
  118. {$block->escapeJs($block->getJsObjectName())}.useAjax = '{$useAjax}';
  119. script;
  120. ?>
  121. <?php if ($block->getDateFilterVisibility()): ?>
  122. <?php $scriptString .= <<<script
  123. {$block->escapeJs($block->getJsObjectName())}.doFilterCallback = validateFilterDate;
  124. var period_date_from = $('{$block->escapeJs($block->getSuffixId('period_date_from'))}');
  125. var period_date_to = $('{$block->escapeJs($block->getSuffixId('period_date_to'))}');
  126. period_date_from.adviceContainer =
  127. $('{$block->escapeJs($block->getSuffixId('period_date_from_advice'))}');
  128. period_date_to.adviceContainer =
  129. $('{$block->escapeJs($block->getSuffixId('period_date_to_advice'))}');
  130. var validateFilterDate = function() {
  131. if (period_date_from && period_date_to) {
  132. var valid = true;
  133. jQuery(period_date_from).add(period_date_to).each(function() {
  134. valid = Validation.validate(this) && valid;
  135. });
  136. return valid;
  137. }
  138. else {
  139. return true;
  140. }
  141. }
  142. script;
  143. ?>
  144. <?php endif;?>
  145. <?php if ($block->getStoreSwitcherVisibility()): ?>
  146. <?php $scriptString .= <<<script
  147. /* Overwrite function from switcher.phtml widget*/
  148. switchStore = function(obj) {
  149. if (obj.options[obj.selectedIndex].getAttribute('website') == 'true') {
  150. var selectionType = 'website';
  151. } else if (obj.options[obj.selectedIndex].getAttribute('group') == 'true') {
  152. var selectionType = 'group';
  153. } else {
  154. var selectionType = 'store';
  155. }
  156. var storeParam = obj.value ? selectionType + '/' + obj.value + '/' : '';
  157. if (obj.switchParams) {
  158. storeParam += obj.switchParams;
  159. }
  160. var formParam = new Array('{$block->escapeJs($block->getSuffixId('period_date_from'))}',
  161. '{$block->escapeJs($block->getSuffixId('period_date_to'))}',
  162. '{$block->escapeJs($block->getSuffixId('report_period'))}');
  163. var paramURL = '';
  164. var switchURL = '{$block->escapeJs($block->getAbsoluteGridUrl(['_current' => false]))}'
  165. .replace(/(store|group|website)\/\d+\//, '');
  166. for (var i = 0; i < formParam.length; i++) {
  167. if ($(formParam[i]).value && $(formParam[i]).name) {
  168. paramURL += $(formParam[i]).name + '=' + escape($(formParam[i]).value) + '&';
  169. }
  170. }
  171. setLocation(switchURL + storeParam + '?' + paramURL);
  172. }
  173. script;
  174. ?>
  175. <?php endif; ?>
  176. <?php $scriptString .= <<<script
  177. //]]>
  178. });
  179. script;
  180. ?>
  181. <?= /* @noEscape */ $secureRenderer->renderTag('script', [], $scriptString, false) ?>
  182. <?php endif; ?>
  183. <?php endif; ?>