create.html.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. <?php
  2. namespace zin;
  3. jsVar('groupID', $groupID);
  4. jsVar('designModule', $designModule);
  5. unset($stageList['lifecycle']);
  6. formGridPanel
  7. (
  8. set::title($lang->deliverable->createTitle),
  9. set::modeSwitcher(false),
  10. on::click('.btn-add', 'addRow'),
  11. on::click('.btn-delete', 'deleteRow'),
  12. on::change('[name^="stage"]', 'disableItems'),
  13. on::change('[name="activity"]', 'changeActivity'),
  14. on::change('[name="trimmable"]', 'changeTrimmable'),
  15. on::change('[name="module"]', 'changeModule'),
  16. formGroup
  17. (
  18. set::width('1/2'),
  19. set::label($lang->deliverable->module),
  20. picker
  21. (
  22. set::name('module'),
  23. set::items($modules),
  24. set::value($moduleID)
  25. )
  26. ),
  27. formGroup(set::width('1/2')),
  28. formGroup
  29. (
  30. set::width('1/2'),
  31. set::label($lang->deliverable->name),
  32. set::name('name')
  33. ),
  34. formGroup(set::width('1/2')),
  35. formGroup
  36. (
  37. set::width('full'),
  38. set::label($lang->deliverable->desc),
  39. editor
  40. (
  41. set::name('desc')
  42. )
  43. ),
  44. formGroup
  45. (
  46. set::label($lang->deliverable->template),
  47. set::width('full'),
  48. deliverable
  49. (
  50. set::formName('template'),
  51. set::items(array(array('category' => $this->lang->other))),
  52. set::extraCategory($lang->other),
  53. set::isTemplate(true)
  54. )
  55. ),
  56. formGroup
  57. (
  58. set::width('1/2'),
  59. set::label($lang->deliverable->activity),
  60. $hasProcess ? '' : set::hidden(true),
  61. inputGroup
  62. (
  63. picker
  64. (
  65. set::name('activity'),
  66. set::items($activities),
  67. !$hasProcess ? set::value($otherActivity->id) : null
  68. ),
  69. common::hasPriv('activity', 'create') ? btnGroup(item(set(array
  70. (
  71. 'text' => $lang->deliverable->addActivity,
  72. 'icon' => 'plus',
  73. 'data-toggle' => 'modal',
  74. 'url' => createLink('activity', 'create', "groupID=$groupID&processID=0&from=deliverable"),
  75. 'class' => 'primary-pale btn ml-1'
  76. )))) : null
  77. )
  78. ),
  79. formGroup
  80. (
  81. set::width('full'),
  82. set::label($lang->deliverable->trimmable),
  83. set::labelHint($lang->deliverable->trimableNotice),
  84. $hasProcess ? '' : set::hidden(true),
  85. radioList
  86. (
  87. set::name('trimmable'),
  88. set::value($hasProcess ? '0' : $otherActivity->optional),
  89. set::items($lang->deliverable->trimmableList)
  90. ),
  91. input(setClass('hidden'), set::name('trimmable'), set::id('trimmable'), set::value('1'), set::disabled(true))
  92. ),
  93. formGroup
  94. (
  95. set::width('full'),
  96. set::label($lang->deliverable->trimRule),
  97. $hasProcess ? '' : set::hidden(true),
  98. input
  99. (
  100. set::name('trimRule'),
  101. set::disabled(true)
  102. )
  103. ),
  104. formGroup
  105. (
  106. set::width('1/2'),
  107. set::label($lang->deliverable->when),
  108. set::required(true),
  109. set::id('stage1'),
  110. picker
  111. (
  112. set::name('stage[]'),
  113. set::items($stageList),
  114. set::value('project')
  115. )
  116. ),
  117. formGroup
  118. (
  119. set::width('1/2'),
  120. set::label($lang->deliverable->required),
  121. set::id('required1'),
  122. picker
  123. (
  124. set::required(true),
  125. set::name('required[]'),
  126. set::value('1'),
  127. set::items($lang->deliverable->requiredList)
  128. ),
  129. btnGroup(setClass('flex self-center'), item(set(array
  130. (
  131. 'icon' => 'plus',
  132. 'class' => 'ghost btn-add'
  133. ))), item(set(array
  134. (
  135. 'icon' => 'trash',
  136. 'class' => 'ghost invisible btn-delete'
  137. ))))
  138. )
  139. );