required.html.php 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?php
  2. /**
  3. * The required view file of custom 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 Shujie Tian<tianshujie@easycorp.ltd>
  7. * @package custom
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. $requiredRows = null;
  12. $i = 0;
  13. foreach($requiredFields as $method => $requiredField)
  14. {
  15. $fields = $this->custom->getFormFields($module, $method);
  16. if(empty($fields)) continue;
  17. if($module == 'caselib' and $method == 'createcase') continue;
  18. $actionKey = $method . 'Action';
  19. $actionTitle = isset($lang->$module->$actionKey) ? $lang->$module->$actionKey : $lang->$module->$method;
  20. $requiredRows[] = formGroup
  21. (
  22. set::width('1/2'),
  23. set::label($actionTitle . $lang->custom->page),
  24. set::labelProps(array('title' => $actionTitle . $lang->custom->page)),
  25. set::labelClass('font-bold'),
  26. picker
  27. (
  28. set::name("requiredFields[{$method}][]"),
  29. set::items($fields),
  30. set::value($requiredField),
  31. set::multiple(true),
  32. set::required(true)
  33. )
  34. );
  35. }
  36. $formActions = array('submit');
  37. if(common::hasPriv('custom', 'resetRequired'))
  38. {
  39. $formActions[] = array(
  40. 'url' => inlink('resetRequired', "module=$module"),
  41. 'text' => $lang->custom->restore,
  42. 'class' => 'btn-wide ajax-submit',
  43. 'data-confirm' => $lang->custom->confirmRestore
  44. );
  45. }
  46. if(!in_array($module, array('productplan', 'release', 'testsuite', 'testreport', 'caselib', 'doc')) && (!in_array($module, array('project', 'execution')) || (in_array($module, array('project', 'execution')) && $config->vision == 'rnd'))) include 'sidebar.html.php';
  47. div
  48. (
  49. setClass('row has-sidebar-left'),
  50. isset($sidebarMenu) ? $sidebarMenu : null,
  51. formPanel
  52. (
  53. setID('requiredForm'),
  54. setClass('flex-auto'),
  55. setClass(isset($sidebarMenu) ? 'ml-0.5' : null),
  56. set::actionsClass('w-1/2'),
  57. set::actions($formActions),
  58. span
  59. (
  60. setClass('text-md font-bold'),
  61. $lang->custom->required
  62. ),
  63. $requiredRows
  64. )
  65. );
  66. /* ====== Render page ====== */
  67. render();