setmodule.html.php 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. namespace zin;
  3. jsVar('changeLang', $lang->admin->setModule->change);
  4. jsVar('deliverableLang', $lang->admin->setModule->deliverable);
  5. jsVar('cmLang', $lang->admin->setModule->cm);
  6. jsVar('openDependFeature', $lang->admin->notice->openDependFeature);
  7. jsVar('closeDependFeature', $lang->admin->notice->closeDependFeature);
  8. $model = in_array($group->projectModel, array('scrum', 'agileplus')) ? 'scrum' : 'waterfall';
  9. $disabledFeatures = !empty($group->disabledFeatures) ? explode(',', $group->disabledFeatures) : array();
  10. $cards = [];
  11. $i = 0;
  12. foreach($config->workflowgroup->featureGroup[$model] as $feature)
  13. {
  14. if(!helper::hasFeature("project_{$feature}")) continue;
  15. $isDisabled = in_array($feature, $disabledFeatures);
  16. $cards[] = div
  17. (
  18. setClass('col flex-none w-1/3'),
  19. h::label
  20. (
  21. div
  22. (
  23. setClass('border py-2 pl-4 ml-4 mt-4 h-20'),
  24. div
  25. (
  26. setClass('flex items-center'),
  27. h::input
  28. (
  29. set::type('checkbox'),
  30. set::id("feature-{$feature}"),
  31. set::name("features[]"),
  32. set::value($feature),
  33. set::checked(!$isDisabled),
  34. on::change('changeModule')
  35. ),
  36. h4(setClass('font-bold text-gray-800 ml-2 text-md'), $lang->workflowgroup->featureList[$feature]['name'])
  37. ),
  38. div(setClass('ml-5 pr-2.5'), p(setClass('text-gray-600 leading-relaxed break-words m-0'), $lang->workflowgroup->featureList[$feature]['desc']))
  39. )
  40. )
  41. );
  42. $i ++;
  43. }
  44. if(empty($cards))
  45. {
  46. div
  47. (
  48. setClass('dtable-empty-tip bg-white rounded-lg p-4'),
  49. div
  50. (
  51. setClass('row gap-4 items-center'),
  52. div
  53. (
  54. setClass('text-gray'),
  55. $lang->workflowgroup->notice->allFeatureClosed
  56. )
  57. )
  58. );
  59. }
  60. else
  61. {
  62. formPanel
  63. (
  64. set::actions(array('submit')),
  65. h4( $lang->workflowgroup->setModule),
  66. div
  67. (
  68. setClass('flex flex-wrap'),
  69. $cards
  70. )
  71. );
  72. }
  73. h::css('div.col label {cursor: pointer;}');