edit.html.php 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. <?php
  2. /**
  3. * The edit view file of workflow 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 Gang Liu <liugang@chandao.com>
  7. * @package workflow
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. $isRequired = $flow->status == 'normal';
  12. $notBuiltinFlow = $flow->type == 'flow' && !$flow->buildin;
  13. $subTableSyncTips = '';
  14. if($quoteTables)
  15. {
  16. $groupName = array_column($quoteTables, 'groupName');
  17. $subTableSyncTips = sprintf($lang->workflow->tips->subTableSync, ' ' . implode(', ', $groupName). ' ');
  18. }
  19. jsVar('positionList', $lang->workflow->positionList);
  20. if($flow->positionModule == 'my') unset($lang->workflow->positionList['before']);
  21. formPanel
  22. (
  23. set::title($title),
  24. set::labelWidth(common::checkNotCN() ? '125px' : '70px'),
  25. set::submitBtnText($lang->save),
  26. on::change('[name=navigator]', 'toggleNavigator'),
  27. on::change('[name=app]', 'toggleApp'),
  28. formGroup
  29. (
  30. set::label($lang->workflow->name),
  31. set::required(),
  32. inputGroup
  33. (
  34. input
  35. (
  36. set::name('name'),
  37. set::value($flow->name),
  38. set::readonly($flow->buildin || $flow->role == 'quote')
  39. ),
  40. ($flow->type == 'flow' && !$flow->buildin) ? iconPicker
  41. (
  42. set::name('icon'),
  43. set::items($config->workflow->icons),
  44. set::value($flow->icon)
  45. ) : null
  46. )
  47. ),
  48. formGroup
  49. (
  50. set::label($lang->workflow->module),
  51. set::name('module'),
  52. set::value($flow->module),
  53. set::readonly(),
  54. set::required()
  55. ),
  56. $notBuiltinFlow && $config->vision != 'lite' ? formGroup(set::label($lang->workflow->belong), inputGroup
  57. (
  58. picker
  59. (
  60. set::disabled(!empty($groupID)),
  61. set::name('belong'),
  62. set::items($lang->workflow->belongList),
  63. set::value($flow->belong)
  64. ),
  65. div
  66. (
  67. setClass('input-group-addon'),
  68. btn
  69. (
  70. set::icon('help'),
  71. toggle::tooltip(array('placement' => 'right', 'title' => $lang->workflow->tips->belong, 'type' => 'white', 'class-name' => 'text-gray border border-light')),
  72. set::square(true),
  73. setClass('ghost h-6 mt-0.5 tooltip-btn')
  74. )
  75. )
  76. )) : null,
  77. $notBuiltinFlow && !empty($groupID) ? div(setClass('flex'), div(setStyle('width', '70px')), span(setClass('text-warning'), $lang->workflow->tips->belongDisabled)) : null,
  78. $notBuiltinFlow ? formGroup
  79. (
  80. set::label($lang->workflow->navigator),
  81. set::required($isRequired),
  82. picker
  83. (
  84. set::name('navigator'),
  85. set::items($lang->workflow->navigators),
  86. set::value($flow->navigator)
  87. )
  88. ) : null,
  89. $notBuiltinFlow ? formGroup
  90. (
  91. set::label($lang->workflow->app),
  92. set::required($isRequired),
  93. set::hidden($flow->navigator != 'secondary'),
  94. inputGroup
  95. (
  96. picker
  97. (
  98. set::name('app'),
  99. set::items($apps),
  100. set::value($flow->app)
  101. )
  102. )
  103. ) : null,
  104. $notBuiltinFlow ? formGroup
  105. (
  106. set::label($lang->workflow->position),
  107. set::required($isRequired),
  108. inputGroup
  109. (
  110. picker
  111. (
  112. on::change('[name=positionModule]', 'loadDropdownMenu'),
  113. set::name('positionModule'),
  114. set::items($menus),
  115. set::value($flow->positionModule)
  116. ),
  117. div(setID('dropMenus'), $dropMenus ? picker
  118. (
  119. setStyle(array('width' => '120px')),
  120. set::name('dropMenu'),
  121. set::items($dropMenus),
  122. set::value($flow->dropMenu)
  123. ) : null),
  124. picker
  125. (
  126. set::name('position'),
  127. set::items($lang->workflow->positionList),
  128. set::value($flow->position),
  129. set::required($isRequired)
  130. )
  131. )
  132. ) : null,
  133. formGroup
  134. (
  135. set::label($lang->workflow->desc),
  136. textarea
  137. (
  138. set::name('desc'),
  139. set::value($flow->desc),
  140. set::rows(3)
  141. )
  142. ),
  143. ($flow->role == 'custom' && $subTableSyncTips) ? div(setClass('alert warning-pale"'), div(setClass('alert-text'), $subTableSyncTips)) : null
  144. );