Add additional checks of input parameters
[proteocache.git] / webapp / view / reportJobStatistics.jsp
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
3 <%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
4 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
5 <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
6 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
7
8 <html>
9 <jsp:include page="fragments/header.jsp" />
10 <body>
11         <div class="container">
12                 <jsp:include page="fragments/mainmenu.jsp" />
13                 <spring:url value="/stat/oneday" var="onedayquery" />
14                 <spring:url value="/stat/query?date1=${date1}&date2=${date2}&option=${option}" var="thequery" />
15
16         <ul class="nav navbar-nav navbar-right">
17                 <li>
18                 <a href="${thequery}" class="btn btn-default active">Reload</a>
19                 </li>
20         </ul>
21
22         <div class="panel panel-default">
23         <div class="panel-heading">
24                 <c:choose>
25                         <c:when test="${option == 'AllDates,off'}">
26                                 <p style="font-weight:bold;">Jobs statistics for the whole period (${ndays} days)</p>
27                         </c:when>
28                         <c:otherwise>
29                                 <p style="font-weight:bold;">
30                                 Jobs statistics for the time period: <c:out value="${date1}" /> to <c:out value="${date2}"/> (${ndays} days)
31                                 </p>
32                         </c:otherwise>
33                 </c:choose>
34         </div>
35
36         <div class="panel-body">
37                 <c:choose>
38                         <c:when test="${result == null}">
39                                 <p>No jobs for this period</p>
40                         </c:when>
41                         <c:otherwise>
42                                 <c:set var="sum" value="0" />
43                                 <c:set var="sumOK" value="0" />
44                                 <c:set var="sumStopped" value="0" />
45                                 <c:set var="sumError" value="0" />
46                                 <c:set var="sumTimeOut" value="0" />
47                                 <c:forEach items="${result}" var="res">
48                                         <c:set var="tot" value="${res.total}" />
49                                         <c:set var="sum" value="${sum + tot}" />
50                                         <c:set var="totOK" value="${res.totalOK}" />
51                                         <c:set var="sumOK" value="${sumOK + totOK}" />
52                                         <c:set var="totStopped" value="${res.totalStopped}" />
53                                         <c:set var="sumStopped" value="${sumStopped + totStopped}" />
54                                         <c:set var="totError" value="${res.totalError}" />
55                                         <c:set var="sumError" value="${sumError + totError}" />
56                                         <c:set var="totTimeOut" value="${res.totalTimeOut}" />
57                                         <c:set var="sumTimeOut" value="${sumTimeOut + totTimeOut}" />
58                                 </c:forEach>
59                                 <div class="table-responsive">
60                                 <table class="table table-striped table-hover table-bordered">
61                                         <thead>
62                                                 <tr style="text-align: center">
63                                                         <th rowspan="2" style="text-align: center">Date</th>
64                                                         <th rowspan="2" style="text-align: center">Total number<br/> of jobs</th>
65                                                         <th colspan="5" style="text-align: center">Job Statistics</th>
66                                                 </tr>
67                                                 <tr>
68                                                         <th style="text-align: center">Status "OK"</th>
69                                                         <th style="text-align: center">Status "Stopped"</th>
70                                                         <th style="text-align: center">Status "Internal Error"</th>
71                                                         <th style="text-align: center">Status "Time out"</th>
72                                                 </tr>
73                                         </thead>
74
75                                         <tbody>
76                                                 <tr style="font-weight: bolder;">
77                                                         <td style="text-align: center">Total:</td>
78                                                         <td style="text-align: right">${sum}</td>
79                                                         <td style="text-align: right">${sumOK}</td>
80                                                         <td style="text-align: right">${sumStopped}</td>
81                                                         <td style="text-align: right">${sumError}</td>
82                                                         <td style="text-align: right">${sumTimeOut}</td>
83                                                 </tr>
84                                                 <c:forEach items="${result}" var="res">
85                                                         <tr>
86                                                                 <td style="text-align: center">${res.date}</td>
87                                                                 <td style="text-align: right">${res.total}</td>
88                                                                 <td style="text-align: right"><a href="${onedayquery}?date=${res.date}">${res.totalOK}</a></td>
89                                                                 <td style="text-align: right">${res.totalStopped}</td>
90                                                                 <td style="text-align: right">${res.totalError}</td>
91                                                                 <td style="text-align: right">${res.totalTimeOut}</td>
92                                                         </tr>
93                                                 </c:forEach>
94                                         </tbody>
95                                 </table>
96                                 </div>
97                         </c:otherwise>
98                 </c:choose>
99
100         </div>
101         </div>
102
103                 <jsp:include page="fragments/footer.jsp" />
104         </div>
105 </body>
106 </html>