bugform.html.php 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. <?php
  2. /**
  3. * The bugform view file of issue module of ZenTaoPMS.
  4. * @copyright Copyright 2009-2024 禅道软件(青岛)有限公司(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 Shujie Tian <tianshujie@easycorp.ltd>
  7. * @package issue
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. form
  12. (
  13. setID('resolveForm'),
  14. set::submitBtnText($lang->issue->resolve),
  15. set::actions(array('submit')),
  16. set::url(createLink('issue', 'resolve', "issueID={$issue->id}&from={$from}")),
  17. formGroup
  18. (
  19. set::width('1/2'),
  20. set::label($lang->issue->resolution),
  21. picker
  22. (
  23. set::name('resolution'),
  24. set::items($lang->issue->resolveMethods),
  25. set::value($resolution),
  26. set::required(true),
  27. on::change('getSolutions')
  28. )
  29. ),
  30. formRow
  31. (
  32. formGroup
  33. (
  34. set::width('1/2'),
  35. set::label($lang->bug->product),
  36. inputGroup
  37. (
  38. picker
  39. (
  40. set::width('2/3'),
  41. set::name('product'),
  42. set::items($products),
  43. set::value($productID),
  44. set::required(true),
  45. on::change('loadProduct')
  46. ),
  47. $product->type != 'normal' && isset($products[$productID]) ? picker
  48. (
  49. set::width('120px'),
  50. set::name('branch'),
  51. set::items($branches),
  52. set::value($branch),
  53. set::required(true),
  54. on::change('loadBranch')
  55. ) : null
  56. )
  57. ),
  58. formGroup
  59. (
  60. set::label($lang->bug->module),
  61. set::required(strpos(",{$config->bug->create->requiredFields},", ",module,") !== false),
  62. modulePicker
  63. (
  64. set::manageLink(createLink('tree', 'browse', "rootID={$productID}&view=bug&currentModuleID=0&branch={$branch}")),
  65. set::items($moduleOptionMenu),
  66. set::value($moduleID),
  67. set::required(true),
  68. on::change('loadModuleRelated')
  69. )
  70. )
  71. ),
  72. formRow
  73. (
  74. formGroup
  75. (
  76. set::width('1/2'),
  77. set::label($lang->bug->project),
  78. set::required(strpos(",{$config->bug->create->requiredFields},", ",project,") !== false),
  79. picker
  80. (
  81. set::name('project'),
  82. set::items($projects),
  83. set::value($projectID),
  84. on::change('loadProductExecutions')
  85. )
  86. ),
  87. formGroup
  88. (
  89. set::width('1/2'),
  90. setClass(empty($project->multiple) ? 'hidden' : ''),
  91. set::label($lang->bug->execution),
  92. set::required(strpos(",{$config->bug->create->requiredFields},", ",execution,") !== false),
  93. picker
  94. (
  95. set::name('execution'),
  96. set::items($executions),
  97. on::change('loadExecutionRelated')
  98. )
  99. )
  100. ),
  101. formRow
  102. (
  103. formGroup
  104. (
  105. set::width('1/2'),
  106. set::label($lang->bug->openedBuild),
  107. set::required(true),
  108. inputGroup
  109. (
  110. picker
  111. (
  112. set::name('openedBuild[]'),
  113. set::items($builds),
  114. set::value($buildID),
  115. set::multiple(true),
  116. set::menu(array('checkbox' => true)),
  117. setData(array('items' => count($builds)))
  118. ),
  119. span
  120. (
  121. setClass('input-group-btn'),
  122. a
  123. (
  124. setClass('btn'),
  125. on::click('loadAllBuilds'),
  126. $lang->bug->loadAll
  127. )
  128. )
  129. )
  130. ),
  131. formGroup
  132. (
  133. set::label($lang->bug->browser),
  134. set::required(strpos(",{$config->bug->create->requiredFields},", ",browser,") !== false || strpos(",{$config->bug->create->requiredFields},", ",os,") !== false),
  135. inputGroup
  136. (
  137. picker
  138. (
  139. set::name('browser'),
  140. set::items($lang->bug->browserList)
  141. ),
  142. $lang->bug->os,
  143. picker
  144. (
  145. set::name('os'),
  146. set::items($lang->bug->osList)
  147. )
  148. )
  149. )
  150. ),
  151. formRow
  152. (
  153. formGroup
  154. (
  155. set::width('1/2'),
  156. set::label($lang->bug->lblAssignedTo),
  157. set::name('assignedTo'),
  158. set::items($users)
  159. ),
  160. formGroup
  161. (
  162. set::label($lang->bug->deadline),
  163. set::required(strpos(",{$config->bug->create->requiredFields},", ",deadline,") !== false),
  164. set::control('datePicker'),
  165. set::name('deadline'),
  166. set::value($issue->deadline)
  167. )
  168. ),
  169. formGroup
  170. (
  171. set::label($lang->bug->title),
  172. set::required(true),
  173. inputGroup
  174. (
  175. input
  176. (
  177. set::name('title'),
  178. set::value($issue->title)
  179. ),
  180. $lang->bug->type,
  181. picker(set::width('225px'), set::name('type'), set::items($lang->bug->typeList)),
  182. $lang->bug->pri,
  183. priPicker
  184. (
  185. set::width('180px'),
  186. set::name('pri'),
  187. set::items($lang->bug->priList),
  188. set::value($issue->pri)
  189. )
  190. )
  191. ),
  192. formGroup
  193. (
  194. set::label($lang->bug->steps),
  195. set::required(strpos(",{$config->bug->create->requiredFields},", ",steps,") !== false),
  196. set::control('editor'),
  197. set::name('steps'),
  198. set::value($issue->desc)
  199. ),
  200. formRow
  201. (
  202. formGroup
  203. (
  204. set::width('1/2'),
  205. set::label($lang->issue->resolvedBy),
  206. set::name('resolvedBy'),
  207. set::items($users),
  208. set::value($app->user->account)
  209. ),
  210. formGroup
  211. (
  212. set::label($lang->issue->resolvedDate),
  213. datePicker
  214. (
  215. set::name('resolvedDate'),
  216. set::value(date('Y-m-d'))
  217. )
  218. )
  219. )
  220. );