batchedit.html.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. <?php
  2. /**
  3. * The todoedit view file of todo 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 Yanyi Cao<caoyanyi@easycorp.ltd>
  7. * @package todo
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. $nameItems = array();
  12. $typeItems = array('story' => 'stories', 'opportunity' => 'opportunities');
  13. foreach($lang->todo->typeList as $type => $typeName)
  14. {
  15. $itemName = zget($typeItems, $type, $type . 's');
  16. if(empty($$itemName)) continue;
  17. foreach($$itemName as $key => $value) $nameItems[$type][] = array('text' => $value, 'value' => $key);
  18. }
  19. $timeItems = array();
  20. foreach($times as $key => $value) $timeItems[] = array('text' => $value, 'value' => $key);
  21. jsVar('nameItems', $nameItems);
  22. jsVar('timeItems', $timeItems);
  23. jsVar('moduleList', $config->todo->moduleList);
  24. div
  25. (
  26. setID('cycleCellData'),
  27. setClass('hidden'),
  28. control(set::type('hidden'), set::name('type'), set::value('cycle')),
  29. div(setClass('form-control-static'), $lang->todo->cycle)
  30. );
  31. div
  32. (
  33. setID('dateCellData'),
  34. setClass('hidden'),
  35. inputGroup
  36. (
  37. div(setID('begin'), setClass('picker-box form-group-wrapper time-input')),
  38. div(setID('end'), setClass('picker-box form-group-wrapper time-input')),
  39. span
  40. (
  41. setClass('input-group-addon'),
  42. checkBox
  43. (
  44. setClass('time-check'),
  45. set::name('switchTime'),
  46. $lang->todo->periods['future']
  47. )
  48. )
  49. )
  50. );
  51. formBatchPanel
  52. (
  53. set::title($lang->todo->batchEdit),
  54. set::url(createLink('todo', 'batchEdit', "from=todoBatchEdit&type={$type}&userID={$userID}&status={$status}")),
  55. set::customFields(array('list' => $customFields, 'show' => explode(',', $showFields), 'key' => 'batchEditFields')),
  56. set::mode('edit'),
  57. set::data(array_values($editedTodos)),
  58. set::onRenderRow(jsRaw('renderRowData')),
  59. on::change('[data-name="type"]', 'changeType'),
  60. on::click('.time-check', "window.togglePending"),
  61. formBatchItem
  62. (
  63. set::name('id'),
  64. set::label($lang->idAB),
  65. set::control('hidden'),
  66. set::hidden(true)
  67. ),
  68. formBatchItem
  69. (
  70. set::name('id'),
  71. set::label($lang->idAB),
  72. set::control('index'),
  73. set::width('64px')
  74. ),
  75. formBatchItem
  76. (
  77. set::name('date'),
  78. set::label($lang->todo->date),
  79. set::width('120px'),
  80. set::control('datePicker')
  81. ),
  82. formBatchItem
  83. (
  84. set::name('type'),
  85. set::label($lang->todo->type),
  86. set::width('100px'),
  87. set::control('picker'),
  88. set::items($lang->todo->typeList)
  89. ),
  90. formBatchItem
  91. (
  92. set::name('pri'),
  93. set::label($lang->todo->pri),
  94. set::width('80px'),
  95. set::control('priPicker'),
  96. set::items($lang->todo->priList)
  97. ),
  98. formBatchItem
  99. (
  100. set::name('name'),
  101. set::label($lang->todo->name)
  102. ),
  103. formBatchItem
  104. (
  105. set::name('assignedTo'),
  106. set::label($lang->todo->assignedTo),
  107. set::width('120px'),
  108. set::control('picker'),
  109. set::items($users)
  110. ),
  111. formBatchItem
  112. (
  113. set::name('beginAndEnd'),
  114. set::label($lang->todo->beginAndEnd),
  115. set::width('260px'),
  116. set::control('inputGroup'),
  117. inputGroup
  118. (
  119. picker(set::name('begin'), set::items($times)),
  120. picker(set::name('end'), set::items($times))
  121. )
  122. ),
  123. formBatchItem
  124. (
  125. set::name('status'),
  126. set::label($lang->todo->status),
  127. set::width('100px'),
  128. set::control('picker'),
  129. set::items($lang->todo->statusList)
  130. )
  131. );
  132. /* ====== Render page ====== */
  133. render();