linkbug.html.php 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. /**
  3. * The linkBug view file of relase 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 Yanyi Cao <caoyanyi@easycorp.ltd>
  7. * @package release
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. $buildModule = $app->rawModule == 'projectrelease' ? 'projectrelease' : 'release';
  12. $cols = array();
  13. foreach($config->release->dtable->defaultFields['linkBug'][$type] as $field)
  14. {
  15. $cols[$field] = zget($config->bug->dtable->fieldList, $field, array());
  16. if($field == 'title')
  17. {
  18. $cols['title']['data-toggle'] = 'modal';
  19. $cols['title']['data-size'] = 'lg';
  20. }
  21. }
  22. $cols = array_map(function($col){$col['show'] = true; return $col;}, $cols);
  23. searchForm
  24. (
  25. set('zui-key', 'searchForm'),
  26. set::module('bug'),
  27. set::simple(true),
  28. set::show(true),
  29. set::onSearch(jsRaw("window.onSearchLinks.bind(null, '{$type}')"))
  30. );
  31. $checkedRows = array_values(array_filter(array_map(function($bug) use($type) {return ($type == 'leftBug' or $bug->status == 'resolved' or $bug->status == 'closed') ? $bug->id : 0;}, $allBugs)));
  32. dtable
  33. (
  34. set::id($type == 'leftBug' ? 'linkLeftBugList': 'linkBugList'),
  35. set::userMap($users),
  36. set::checkable(true),
  37. set::cols($cols),
  38. set::data($allBugs),
  39. set::checkedRows($checkedRows),
  40. set::loadPartial(true),
  41. set::footToolbar(array
  42. (
  43. 'items' => array(array
  44. (
  45. 'text' => $lang->release->linkBug,
  46. 'btnType' => 'primary',
  47. 'className' => 'size-sm linkObjectBtn',
  48. 'data-type' => 'bug',
  49. 'data-url' => createLink($buildModule, 'linkBug', "releaseID={$release->id}&browseType={$browseType}&param={$param}&type={$type}"),
  50. 'zui-on-click' => 'handleLinkObjectClick($target)'
  51. ))
  52. )),
  53. set::extraHeight('+144'),
  54. set::footer(array('checkbox', 'toolbar', array('html' => html::a(createLink($buildModule, 'view', "releaseID=$release->id&type=$type"), $lang->goback, '', "class='btn size-sm'")), 'flex', 'pager')),
  55. set::footPager(usePager())
  56. );
  57. render();