create.html.php 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. <?php
  2. /**
  3. * The create view file of job 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 Zeng Gang<zenggang@easycorp.ltd>
  7. * @package job
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. jsVar('frameList', $lang->job->frameList);
  12. jsVar('triggerList', $lang->job->triggerTypeList);
  13. jsVar('repoList', $repoList);
  14. jsVar('pageRepoID', $repoID);
  15. $engine = key($lang->job->engineList);
  16. if($repo)
  17. {
  18. dropmenu(set::objectID($repoID), set::text($repo->name), set::tab('repo'));
  19. if(isset($lang->job->engineList[strtolower($repo->SCM)]))
  20. {
  21. $engine = strtolower($repo->SCM);
  22. }
  23. else
  24. {
  25. $engine = 'gitlab';
  26. }
  27. }
  28. formPanel
  29. (
  30. set::title($lang->job->create),
  31. setClass('job-form'),
  32. set::labelWidth('10em'),
  33. on::click('.add-param', 'addItem'),
  34. on::click('.delete-param', 'deleteItem'),
  35. on::click('.custom', 'setValueInput'),
  36. on::click('select.paramValue', 'changeCustomField'),
  37. on::change('[name=sonarqubeServer]')->call('window.changeSonarqubeServer'),
  38. set::actionsClass('w-2/3'),
  39. formGroup
  40. (
  41. set::name('name'),
  42. set::label($lang->job->name),
  43. set::required(true),
  44. set::width('1/2')
  45. ),
  46. formRow
  47. (
  48. formGroup
  49. (
  50. set::name('engine'),
  51. set::width('1/2'),
  52. set::label($lang->job->engine),
  53. set::required(true),
  54. set::items($lang->job->engineList),
  55. set::value($engine),
  56. on::change('window.changeEngine')
  57. ),
  58. h::span
  59. (
  60. set::id('gitlabServerTR'),
  61. setClass('hidden leading-8 ml-2'),
  62. html($lang->job->engineTips->success)
  63. )
  64. ),
  65. formRow
  66. (
  67. formGroup
  68. (
  69. set::label($lang->job->repo),
  70. set::required(true),
  71. set::name('repo'),
  72. set::items(array()),
  73. set::width('1/2'),
  74. on::change('window.changeRepo')
  75. ),
  76. formGroup
  77. (
  78. setClass('reference hidden'),
  79. set::labelWidth('5em'),
  80. set::label($lang->job->branch),
  81. set::required(true),
  82. set::name('reference'),
  83. set::width('1/2'),
  84. set::items(array())
  85. )
  86. ),
  87. formGroup
  88. (
  89. set::id('productBox'),
  90. set::name('product'),
  91. set::label($lang->job->product),
  92. set::width('1/2'),
  93. set::items(array())
  94. ),
  95. formGroup
  96. (
  97. set::name('frame'),
  98. set::label($lang->job->frame),
  99. set::items(array()),
  100. set::width('1/2'),
  101. on::change('changeFrame')
  102. ),
  103. formRow
  104. (
  105. setClass('hidden'),
  106. set::id('jenkinsServerTR'),
  107. formGroup
  108. (
  109. set::label($lang->job->jkHost),
  110. set::required(true),
  111. set::width('1/2'),
  112. inputGroup
  113. (
  114. picker
  115. (
  116. set::name('jkServer'),
  117. set::items($jenkinsServerList),
  118. on::change('changeJenkinsServer')
  119. ),
  120. $lang->job->pipeline,
  121. input
  122. (
  123. set::name('jkTask'),
  124. set::type('hidden')
  125. ),
  126. dropmenu
  127. (
  128. setStyle('width', '150px'),
  129. set::id('pipelineDropmenu'),
  130. set::popPlacement('top'),
  131. set::text($lang->job->selectPipeline),
  132. set::url($this->createLink('jenkins', 'ajaxGetJenkinsTasks'))
  133. )
  134. )
  135. )
  136. ),
  137. formRow
  138. (
  139. setClass('sonarqube hidden'),
  140. formGroup(set::name('sonarqubeServer'), set::label($lang->job->sonarqubeServer), set::width('1/2'), set::items($sonarqubeServerList), set::required(true))
  141. ),
  142. formRow
  143. (
  144. set::id('sonarProject'),
  145. setClass('sonarqube hidden'),
  146. formGroup
  147. (
  148. set::name('projectKey'),
  149. set::label($lang->job->projectKey),
  150. set::width('1/2'),
  151. set::items(array()),
  152. set::required(true)
  153. )
  154. )
  155. );