report.html.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <?php
  2. /**
  3. * The report view file of testcase 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 Zemei Wang <wangzemei@easycorp.ltd>
  7. * @package testcase
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. $moduleList = array();
  12. foreach($lang->testcase->report->typeList as $code => $module)
  13. {
  14. $moduleList[$code] = (object)array(
  15. 'key' => $code,
  16. 'id' => $code,
  17. 'name' => $module,
  18. 'parent' => 0,
  19. 'url' => createLink('testcase', "report", "executionID=$projectID&type=$code")
  20. );
  21. }
  22. detailHeader
  23. (
  24. set::backUrl(createLink($app->tab, 'testcase', "executionID=$projectID") . "#app={$app->tab}"),
  25. to::title
  26. (
  27. div
  28. (
  29. setClass('clip'),
  30. span
  31. (
  32. setClass('text-base'),
  33. sprintf($lang->testcase->report->subtitle, $lang->testcase->common)
  34. )
  35. )
  36. )
  37. );
  38. $staticData->editCanvasConfig->theme = 'light';
  39. $staticData->editCanvasConfig->previewScaleType = 'top';
  40. $staticDataJson = str_replace(array('&quot;', '&#039;'), array("\\\&quot;", "\&#039;"), json_encode($staticData));
  41. div
  42. (
  43. setClass('flex flex-nowrap report-view'),
  44. setStyle(array('height' => 'calc(100vh - 8rem)')),
  45. cell
  46. (
  47. set::width('200'),
  48. moduleMenu
  49. (
  50. set::moduleName($app->tab),
  51. set::title($lang->testcase->report->notice),
  52. set::modules($moduleList),
  53. set::showDisplay(false),
  54. set::toggleSidebar(false),
  55. set::activeKey($type),
  56. set::closeLink('')
  57. )
  58. ),
  59. cell
  60. (
  61. setID('chartContainer'),
  62. set::flex('1'),
  63. setClass('ml-4 bg-white px-2 py-2'),
  64. h4(setClass('mt-2 ml-1'), zget($lang->testcase->report->typeList, $type)),
  65. h::iframe
  66. (
  67. setID('staticScreen'),
  68. set('width', '100%'),
  69. set('height', '95%'),
  70. set('scrolling', 'no'),
  71. set('frameborder', '0'),
  72. set('marginheight', '0'),
  73. set('src', createLink('screen', 'staticDataOld')),
  74. on::init()->do(<<<JS
  75. const iframe = document.getElementById('staticScreen');
  76. iframe.onload = function() {iframe.contentWindow.setStaticData('{$staticDataJson}', {width: iframe.offsetWidth});};
  77. JS
  78. )
  79. )
  80. )
  81. );