edit.html.php 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. <?php
  2. /**
  3. * The edit view file of release 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 Shujie Tian<tianshujie@easycorp.ltd>
  7. * @package release
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. jsVar('appList', $appList);
  12. jsVar('oldStatus', $release->status);
  13. jsVar('linkedRelease', $release->releases);
  14. jsVar('productID', zget($product, 'id', 0));
  15. jsVar('releaseBuilds', $release->build);
  16. jsVar('releaseID', $release->id);
  17. formPanel
  18. (
  19. set::title($lang->release->edit),
  20. on::change('[name=status]')->call('changeStatus'),
  21. on::change('[name=system]')->call('loadSystemBlock'),
  22. common::checkNotCN() ? set::labelWidth('160px') : null,
  23. formGroup
  24. (
  25. set::width('1/2'),
  26. set::label($lang->release->selectSystem),
  27. set::name('system'),
  28. set::control(array('type' => 'picker', 'required' => true)),
  29. set::items(array_column($appList, 'name', 'id')),
  30. set::required(!$release->isInclude),
  31. set::disabled($release->isInclude),
  32. set::value($release->system)
  33. ),
  34. formRow
  35. (
  36. formGroup
  37. (
  38. set::width('1/2'),
  39. set::name('name'),
  40. set::label($lang->release->name),
  41. set::value($release->name)
  42. ),
  43. $app->tab != 'project' || empty($product->shadow) ? formGroup
  44. (
  45. set::width('1/4'),
  46. setClass('items-center'),
  47. checkbox(
  48. set::name('marker'),
  49. set::rootClass('ml-4'),
  50. set::value(1),
  51. set::checked(!empty($release->marker)),
  52. set::text($lang->release->marker)
  53. )
  54. ) : ''
  55. ),
  56. formGroup
  57. (
  58. setClass('hidden'),
  59. setID('systemBlock'),
  60. set::required(true),
  61. set::label($lang->release->includedSystem),
  62. div(setID('systemItems'), setClass('w-full'))
  63. ),
  64. formRow
  65. (
  66. setID('buildBox'),
  67. formGroup
  68. (
  69. set::width('1/2'),
  70. set::label($lang->release->includedBuild),
  71. picker
  72. (
  73. set::name('build[]'),
  74. set::placeholder($lang->build->placeholder->multipleSelect),
  75. set::items($builds),
  76. set::value($release->build),
  77. set::multiple(true)
  78. )
  79. )
  80. ),
  81. formRow
  82. (
  83. formGroup
  84. (
  85. set::width('1/4'),
  86. set::name('status'),
  87. set::label($lang->release->status),
  88. set::control(array('control' => 'picker', 'required' => true)),
  89. set::value($release->status),
  90. set::items($lang->release->statusList)
  91. )
  92. ),
  93. formRow
  94. (
  95. formGroup
  96. (
  97. set::width('1/4'),
  98. set::name('date'),
  99. set::label($lang->release->date),
  100. set::value($release->date),
  101. set::control('date')
  102. )
  103. ),
  104. formRow
  105. (
  106. $release->status == 'wait' ? setClass('hidden') : null,
  107. formGroup
  108. (
  109. set::width('1/4'),
  110. set::name('releasedDate'),
  111. set::label($lang->release->releasedDate),
  112. set::value($release->releasedDate),
  113. set::control('date')
  114. )
  115. ),
  116. formGroup
  117. (
  118. set::label($lang->release->desc),
  119. set::required(strpos(",{$this->config->release->edit->requiredFields},", ",desc,") !== false),
  120. editor
  121. (
  122. set::name('desc'),
  123. html($release->desc),
  124. set::rows('10')
  125. )
  126. ),
  127. formGroup
  128. (
  129. set::label($lang->release->mailto),
  130. mailto(set::items($users), set::value($release->mailto))
  131. ),
  132. formGroup
  133. (
  134. set::label($lang->release->files),
  135. fileSelector($release->files ? set::defaultFiles(array_values($release->files)) : null)
  136. ),
  137. formHidden('product', $release->product)
  138. );