|
1 <%@ taglib uri = "http://java.sun.com/jsp/jstl/functions" prefix = "fn" %> |
|
2 |
|
3 <table class="datatable"> |
|
4 <c:if test="${statsHideZeros}"> |
|
5 <c:set var="visibleColumns" value="0"/> |
|
6 <c:forEach var="idx" begin="0" end="${fn:length(issueStatusEnum)-1}"> |
|
7 <c:set var="visibleColumns" value="${visibleColumns + (stats.columnTotals[idx] eq 0 ? 0 :1)}"/> |
|
8 </c:forEach> |
|
9 </c:if> |
|
10 <c:if test="${not statsHideZeros}"> |
|
11 <c:set var="visibleColumns" value="${fn:length(issueStatusEnum)}" /> |
|
12 </c:if> |
|
13 <c:set var="colwidth"><fmt:formatNumber value="${100/(visibleColumns+2)}" maxFractionDigits="0" /></c:set> |
|
14 <colgroup> |
|
15 <c:forEach var="idx" begin="1" end="${visibleColumns+2}"> |
|
16 <col width="${colwidth}%"> |
|
17 </c:forEach> |
|
18 </colgroup> |
|
19 <thead> |
|
20 <tr> |
|
21 <th></th> |
|
22 <c:forEach var="issueStatus" items="${issueStatusEnum}" varStatus="statusIter"> |
|
23 <c:if test="${not statsHideZeros or stats.columnTotals[statusIter.index] gt 0}"> |
|
24 <th class="hcenter"><fmt:message key="issue.status.${issueStatus}"/></th> |
|
25 </c:if> |
|
26 </c:forEach> |
|
27 <th class="hcenter"><fmt:message key="version.statistics.total"/> </th> |
|
28 </tr> |
|
29 </thead> |
|
30 <tbody> |
|
31 <c:forEach var="issueCategory" items="${issueCategoryEnum}" varStatus="categoryIter"> |
|
32 <c:if test="${not statsHideZeros or stats.rowTotals[categoryIter.index] gt 0}"> |
|
33 <tr> |
|
34 <th><fmt:message key="issue.category.${issueCategory}" /></th> |
|
35 <c:forEach var="issueStatus" items="${issueStatusEnum}" varStatus="statusIter"> |
|
36 <c:if test="${not statsHideZeros or stats.columnTotals[statusIter.index] gt 0}"> |
|
37 <td>${stats.issueCount[categoryIter.index][statusIter.index]}</td> |
|
38 </c:if> |
|
39 </c:forEach> |
|
40 <td>${stats.rowTotals[categoryIter.index]}</td> |
|
41 </tr> |
|
42 </c:if> |
|
43 </c:forEach> |
|
44 <tr> |
|
45 <th><fmt:message key="version.statistics.total"/> </th> |
|
46 <c:forEach var="issueStatus" items="${issueStatusEnum}" varStatus="statusIter"> |
|
47 <c:if test="${not statsHideZeros or stats.columnTotals[statusIter.index] gt 0}"> |
|
48 <td>${stats.columnTotals[statusIter.index]}</td> |
|
49 </c:if> |
|
50 </c:forEach> |
|
51 <td>${stats.total}</td> |
|
52 </tr> |
|
53 </tbody> |
|
54 </table> |