create.html.php 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. <?php
  2. /**
  3. * The create view file of user 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 Yuting Wang<wangyuting@easycorp.ltd>
  7. * @package user
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. jsVar('roleGroup', $roleGroup);
  12. formPanel
  13. (
  14. set::id('createUser'),
  15. on::change('input[name=type]', 'changeType'),
  16. on::change('input[name=role]', 'changeRole'),
  17. on::change('input[name^=visions]', 'changeVision'),
  18. on::change('#password1,#password2,#verifyPassword', 'changePassword'),
  19. on::click('button[type=submit]', 'encryptPassword'),
  20. set::title($title),
  21. formRow
  22. (
  23. formGroup
  24. (
  25. set::width('1/2'),
  26. set::label($lang->user->type),
  27. radioList
  28. (
  29. set::inline(true),
  30. set::name('type'),
  31. set::items($lang->user->typeList),
  32. set::value($type)
  33. )
  34. )
  35. ),
  36. formRow
  37. (
  38. set::id('companyBox'),
  39. $type == 'inside' ? set::className('hidden') : null,
  40. formGroup
  41. (
  42. set::width('1/2'),
  43. set::label($lang->user->company),
  44. inputGroup
  45. (
  46. picker(set::control('picker'), set::name('company'), set::items($companies)),
  47. input
  48. (
  49. set::name('newCompany'),
  50. setClass('hidden')
  51. ),
  52. checkbox
  53. (
  54. on::change('toggleNew'),
  55. set::id('new'),
  56. set::name('new'),
  57. set::value(1),
  58. set::text($lang->company->create),
  59. set::rootClass('btn'),
  60. width('96px')
  61. )
  62. )
  63. )
  64. ),
  65. formRow
  66. (
  67. $type == 'inside' ? null : setClass('hidden'),
  68. formGroup
  69. (
  70. set::width('1/2'),
  71. set::label($lang->user->dept),
  72. set::control('picker'),
  73. set::name('dept'),
  74. set::items($depts),
  75. set::value($deptID)
  76. )
  77. ),
  78. formRow
  79. (
  80. formGroup(set::width('1/2'), set::label($lang->user->account), set::name('account'))
  81. ),
  82. formRow
  83. (
  84. formGroup
  85. (
  86. set::width('1/2'),
  87. set::label($lang->user->password),
  88. set::required(true),
  89. password(set::checkStrength(true))
  90. )
  91. ),
  92. formRow
  93. (
  94. formGroup(set::width('1/2'), set::label($lang->user->abbr->password2), set::required(true), set::control('password'), set::name('password2'))
  95. ),
  96. formRow
  97. (
  98. formGroup
  99. (
  100. set::width('1/2'),
  101. set::className('flex items-center ' . (count($visions) > 1 ? '' : 'hide')),
  102. set::label($lang->user->visions),
  103. set::required(true),
  104. checkList
  105. (
  106. set::inline(true),
  107. set::name('visions[]'),
  108. set::items($visions),
  109. set::value($config->vision)
  110. )
  111. )
  112. ),
  113. formRow
  114. (
  115. formGroup(set::width('1/2'), set::label($lang->user->realname), set::name('realname'))
  116. ),
  117. formRow
  118. (
  119. $type == 'inside' ? null : setClass('hidden'),
  120. formGroup
  121. (
  122. set::width('1/2'),
  123. set::label($lang->user->join),
  124. set::control('date'),
  125. set::name('join'),
  126. set::value(date('Y-m-d'))
  127. )
  128. ),
  129. formRow
  130. (
  131. formGroup
  132. (
  133. set::width('1/2'),
  134. set::label($lang->user->role),
  135. set::control('picker'),
  136. set::name('role'),
  137. set::items($lang->user->roleList),
  138. set::placeholder($lang->user->placeholder->role)
  139. )
  140. ),
  141. common::hasPriv('group', 'managemember') ? formRow
  142. (
  143. formGroup
  144. (
  145. set::width('1/2'),
  146. set::label($lang->user->group),
  147. set::control(array("control" => "picker","multiple" => true)),
  148. set::name('group[]'),
  149. set::items($groupList),
  150. set::required(strpos($this->config->user->create->requiredFields, 'group') !== false),
  151. set::placeholder($lang->user->placeholder->group)
  152. )
  153. ) : null,
  154. formRow
  155. (
  156. formGroup(set::width('1/2'), set::label($lang->user->email), set::name('email'))
  157. ),
  158. formRow
  159. (
  160. $type == 'inside' ? null : setClass('hidden'),
  161. formGroup(set::width('1/2'), set::label($lang->user->commiter), set::name('commiter'))
  162. ),
  163. formRow
  164. (
  165. formGroup
  166. (
  167. set::width('1/2'),
  168. set::label($lang->user->gender),
  169. radioList
  170. (
  171. set::name('gender'),
  172. set::items($lang->user->genderList),
  173. set::value('m'),
  174. set::inline(true)
  175. )
  176. )
  177. ),
  178. formRow
  179. (
  180. formGroup
  181. (
  182. set::width('1/2'),
  183. set::label($lang->user->verifyPassword),
  184. set::control('password'),
  185. set::required(true),
  186. set::name('verifyPassword'),
  187. set::placeholder($lang->user->placeholder->verify)
  188. )
  189. ),
  190. formRow
  191. (
  192. setClass('hidden'),
  193. input(set::name('passwordLength'), set::value(0)),
  194. input(set::name('passwordStrength'), set::value(0))
  195. )
  196. );
  197. formHidden('verifyRand', $rand);
  198. render();