cron.html.php 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. <?php
  2. /**
  3. * The cron view file of reporttemplate module of ZenTaoPMS.
  4. * @copyright Copyright 2009-2023 禅道软件(青岛)有限公司(ZenTao Software (Qingdao) Co., Ltd. www.zentao.net)
  5. * @license ZPL(https://zpl.pub/page/zplv12.html) or AGPL(https://www.gnu.org/licenses/agpl-3.0.en.html)
  6. * @author Yidong Wang <yidong@chandao.com>
  7. * @package reporttemplate
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. $turnon = zget($cycleConfig, 'turnon', 'off');
  12. $acl = zget($cycleConfig, 'acl', 'open');
  13. $frequencyList = array();
  14. foreach($lang->reporttemplate->cronFrequencyList as $type => $name) $frequencyList[$type] = $name . ' ' . $lang->reporttemplate->cronFrequencyTips[$type];
  15. tabs
  16. (
  17. pageCSS('.unsetPosition {position: unset !important;}'),
  18. tabPane
  19. (
  20. set::key('set_cron'),
  21. set::title($lang->reporttemplate->cronTitle),
  22. set::active(true),
  23. formPanel
  24. (
  25. set::layout('grid'),
  26. set::actionsClass('unsetPosition'),
  27. set::submitBtnText($lang->save),
  28. formGroup
  29. (
  30. set::width('full'),
  31. set::label($lang->reporttemplate->cronTurnon),
  32. radioList
  33. (
  34. set::name('turnon'),
  35. set::inline(true),
  36. set::items($lang->reporttemplate->cronTurnonList),
  37. set::value($turnon),
  38. on::change('toggleCron')
  39. )
  40. ),
  41. formGroup
  42. (
  43. setID('frequencyBox'),
  44. setClass($turnon == 'off' ? 'hidden' : ''),
  45. set::width('full'),
  46. set::label($lang->reporttemplate->cronFrequency),
  47. radioList(set::name('frequency'), set::items($frequencyList), set::value(zget($cycleConfig, 'frequency', 'week')))
  48. ),
  49. formGroup
  50. (
  51. setID('aclBox'),
  52. setClass($turnon == 'off' ? 'hidden' : ''),
  53. set::width('full'),
  54. set::label($lang->reporttemplate->reportAcl),
  55. radioList
  56. (
  57. set::name('acl'),
  58. set::items($lang->doc->aclList),
  59. set::value($acl),
  60. on::change('toggleWhiteList')
  61. )
  62. ),
  63. formGroup
  64. (
  65. setID('readListBox'),
  66. setClass(($turnon == 'off' || $acl == 'open') ? 'hidden' : ''),
  67. set::width('full'),
  68. set::label($lang->doc->readonly),
  69. div
  70. (
  71. setClass('w-full check-list'),
  72. inputGroup
  73. (
  74. setClass('w-full'),
  75. $lang->doc->groupLabel,
  76. picker
  77. (
  78. set::name('readGroups[]'),
  79. set::items($groups),
  80. set::value(zget($cycleConfig, 'readGroups', '')),
  81. set::multiple(true)
  82. )
  83. ),
  84. div
  85. (
  86. setClass('w-full'),
  87. userPicker(set::label($lang->doc->userLabel), set::name('readUsers[]'), set::items($users), set::value(zget($cycleConfig, 'readUsers', '')))
  88. )
  89. )
  90. ),
  91. formGroup
  92. (
  93. setID('whiteListBox'),
  94. setClass(($turnon == 'off' || $acl == 'open') ? 'hidden' : ''),
  95. set::label($lang->doc->editable),
  96. set::width('full'),
  97. div
  98. (
  99. setClass('w-full check-list'),
  100. inputGroup
  101. (
  102. setClass('w-full'),
  103. $lang->doc->groupLabel,
  104. picker
  105. (
  106. set::name('groups'),
  107. set::items($groups),
  108. set::value(zget($cycleConfig, 'groups', '')),
  109. set::multiple(true)
  110. )
  111. ),
  112. div
  113. (
  114. setClass('w-full'),
  115. userPicker
  116. (
  117. set::label($lang->doc->userLabel),
  118. set::name('users[]'),
  119. set::items($users),
  120. set::value(zget($cycleConfig, 'users', ''))
  121. )
  122. )
  123. )
  124. )
  125. )
  126. ),
  127. tabPane
  128. (
  129. set::key('log'),
  130. set::title($lang->reporttemplate->cronLog),
  131. empty($cronLogs) ? div(setClass('dtable-empty-tip'), $lang->noData) : h::ul
  132. (
  133. setClass('list-none'),
  134. h::li(setClass('text-gray mb-1'), $lang->reporttemplate->notice->logLimit),
  135. array_map(function($log){ return h::li(html($log->date . ' ' . $log->result)); }, $cronLogs)
  136. )
  137. )
  138. );