progress.html.php 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php include $app->getModuleRoot() . 'common/view/header.html.php'?>
  2. <style>
  3. ul.timeline + ul.timeline {margin-top: 20px;}
  4. ul.timeline > li.reviewer:before{width:0px; height:7px; left:-13px; border:none; border-left:1px solid #eee;}
  5. ul.timeline > li.node:before{width:10px; height:10px; background-color:unset;left:-18px;}
  6. ul.timeline > li.node.pass:before {width:0px; height:0px; background-color:unset;left:-13px;border:none}
  7. ul.timeline > li.node.pass > div:before{position: absolute; content: "\e92f"; color:#00D293; left:-22px; top:5px; font-size:18px; font-family: ZentaoIcon;z-index:50}
  8. ul.timeline > li.node.reverted:before {width:0px; height:0px; background-color:unset;left:-13px;border:none}
  9. ul.timeline > li.node.reverted > div:before{position: absolute; content: "\e9d3"; color:#313c52; left:-22px; top:5px; font-size:18px; font-family: ZentaoIcon;z-index:50}
  10. ul.timeline > li.node.doing:before {width:18px; height:18px; background-color:#00B3FF;left:-21px;top:5px;border-color:#00B3FF}
  11. ul.timeline > li.node.doing > div:before{position: absolute; content: "..."; color:#FFF; left:-19px; top:0px; font-size:18px; font-family: ZentaoIcon;z-index:50}
  12. ul.timeline > li.node.fail:before {width:18px; height:18px; background-color:#FF4550;left:-21px;top:5px;border-color:#FF4550}
  13. ul.timeline > li.node.fail > div:before{position: absolute; content: "\e936"; color:#FFF; left:-18px; top:3px; font-size:12px; font-family: ZentaoIcon;z-index:50}
  14. ul.timeline > li .timeline-text .result.reviewing {color:#00B3FF; padding-left:3px; font-weight:bolder;}
  15. ul.timeline > li .timeline-text .result.pass {color:#00D293; padding-left:3px; font-weight:bolder;}
  16. ul.timeline > li .timeline-text .result.fail {color:#FF4550; padding-left:3px; font-weight:bolder;}
  17. ul.timeline > li .opinion {padding: 8px; background-color:#F5F5F5;}
  18. .approvalNotice {padding-left: 8px;}
  19. </style>
  20. <div id='mainContent' class='main-content'>
  21. <div class='center-block'>
  22. <div class='main-header'>
  23. <span class="text"><?php echo $title;?></span>
  24. </div>
  25. <?php $i = 1;?>
  26. <?php foreach($nodeGroup as $approvalID => $nodes):?>
  27. <ul class='timeline timeline-tag-right'>
  28. <?php
  29. foreach($nodes as $node)
  30. {
  31. if(empty($node->id)) continue;
  32. if(($node->type == 'start' || $node->type == 'end') && $i == 1)
  33. {
  34. echo $this->approval->buildReviewDesc($node, array('users' => $users, 'approval' => $approval));
  35. }
  36. elseif($node->type == 'branch')
  37. {
  38. foreach($node->branches as $branchNodes)
  39. {
  40. foreach($branchNodes->nodes as $branchNode)
  41. {
  42. echo $this->approval->buildReviewDesc($branchNode, array('users' => $users, 'allReviewers' => $reviewerGroup[$approvalID], 'reviewers' => zget($reviewerGroup[$approvalID], $branchNode->id, array())), $nodePairs);
  43. }
  44. }
  45. }
  46. elseif(isset($reviewerGroup[$approvalID][$node->id]))
  47. {
  48. echo $this->approval->buildReviewDesc($node, array('users' => $users, 'reviewers' => $reviewerGroup[$approvalID][$node->id]), $nodePairs);
  49. }
  50. elseif(!empty($node->reviewers))
  51. {
  52. echo $this->approval->buildReviewDesc($node, array(), $nodePairs);
  53. }
  54. }
  55. ?>
  56. </ul>
  57. <hr>
  58. <?php $i++;?>
  59. <?php endforeach;?>
  60. </div>
  61. </div>
  62. <?php include $app->getModuleRoot() . 'common/view/footer.html.php';?>