| Index: chrome_release_test_status/war/TestingStatus-query.jsp
|
| ===================================================================
|
| --- chrome_release_test_status/war/TestingStatus-query.jsp (revision 0)
|
| +++ chrome_release_test_status/war/TestingStatus-query.jsp (revision 0)
|
| @@ -0,0 +1,586 @@
|
| +<%@ page contentType="text/html;charset=UTF-8" language="java" %>
|
| +<%@ page import="java.util.List" %>
|
| +<%@ page import="javax.jdo.PersistenceManager" %>
|
| +<%@ page import="com.google.appengine.api.users.User" %>
|
| +<%@ page import="com.google.appengine.api.users.UserService" %>
|
| +<%@ page import="com.google.appengine.api.users.UserServiceFactory" %>
|
| +<%@ page import="mydemo.BuildInfo" %>
|
| +<%@ page import="mydemo.TestStatus" %>
|
| +<%@ page import="mydemo.RegisterFeature" %>
|
| +<%@ page import="mydemo.PMF" %>
|
| +
|
| +<html>
|
| +<Head>
|
| +<style>
|
| +body
|
| +{
|
| +background-color:#d0e4fe;
|
| +font-family: tims, cursive, serif;
|
| +}
|
| +
|
| +.mytable {
|
| + border: 1px solid #CCC;
|
| + font-size: 17px;
|
| +
|
| +}
|
| +
|
| +.fitrow {
|
| +background-color:#F4F4F4;
|
| +height:20px;
|
| +}
|
| +
|
| +</style>
|
| +<style>
|
| +
|
| +
|
| +ul#list-nav li {
|
| +display:inline;
|
| +}
|
| +
|
| +ul#list-nav li a {
|
| +text-decoration:none;
|
| +padding:5px 5px 5px 5px;
|
| +background:9966ff;
|
| +color:#eee;
|
| +float:left;
|
| +text-align:center;
|
| +border-left:1px solid #fff;
|
| +}
|
| +
|
| +ul#list-nav li a:hover {
|
| +background:9999ff;
|
| +color:#000
|
| +}
|
| +
|
| +
|
| +</style>
|
| +<script>
|
| +var selected_val1 = 0;
|
| +var g_rowNo = 0;
|
| +function addRow(selected_val) {
|
| +
|
| +
|
| + var s = "/TestingStatus-query.jsp?buildn=" + selected_val ;
|
| + window.location= s;
|
| +
|
| +}
|
| +
|
| +</script>
|
| +
|
| +<script>
|
| +
|
| +var DDSPEED = 10;
|
| +var DDTIMER = 15;
|
| +
|
| +// main function to handle the mouse events //
|
| +function ddMenu(id,d){
|
| + var h = document.getElementById(id + '-ddheader');
|
| + var c = document.getElementById(id + '-ddcontent');
|
| + clearInterval(c.timer);
|
| + if(d == 1){
|
| + clearTimeout(h.timer);
|
| + if(c.maxh && c.maxh <= c.offsetHeight){return}
|
| + else if(!c.maxh){
|
| + c.style.display = 'block';
|
| + c.style.height = 'auto';
|
| + c.maxh = c.offsetHeight;
|
| + c.style.height = '0px';
|
| + }
|
| + c.timer = setInterval(function(){ddSlide(c,1)},DDTIMER);
|
| + }else{
|
| + h.timer = setTimeout(function(){ddCollapse(c)},50);
|
| + }
|
| +}
|
| +
|
| +// collapse the menu //
|
| +function ddCollapse(c){
|
| + c.timer = setInterval(function(){ddSlide(c,-1)},DDTIMER);
|
| +}
|
| +
|
| +// cancel the collapse if a user rolls over the dropdown //
|
| +function cancelHide(id){
|
| + var h = document.getElementById(id + '-ddheader');
|
| + var c = document.getElementById(id + '-ddcontent');
|
| + clearTimeout(h.timer);
|
| + clearInterval(c.timer);
|
| + if(c.offsetHeight < c.maxh){
|
| + c.timer = setInterval(function(){ddSlide(c,1)},DDTIMER);
|
| + }
|
| +}
|
| +
|
| +// incrementally expand/contract the dropdown and change the opacity //
|
| +function ddSlide(c,d){
|
| + var currh = c.offsetHeight;
|
| + var dist;
|
| + if(d == 1){
|
| + dist = (Math.round((c.maxh - currh) / DDSPEED));
|
| + }else{
|
| + dist = (Math.round(currh / DDSPEED));
|
| + }
|
| + if(dist <= 1 && d == 1){
|
| + dist = 1;
|
| + }
|
| + c.style.height = currh + (dist * d) + 'px';
|
| + c.style.opacity = currh / c.maxh;
|
| + c.style.filter = 'alpha(opacity=' + (currh * 100 / c.maxh) + ')';
|
| + if((currh < 2 && d != 1) || (currh > (c.maxh - 2) && d == 1)){
|
| + clearInterval(c.timer);
|
| + }
|
| +}
|
| +
|
| +</script>
|
| +
|
| +<style>
|
| +.menu{
|
| + width:717px;
|
| + height:65px;
|
| +
|
| +}
|
| +.links div{
|
| + float:left;}
|
| +.dropdown {
|
| +
|
| + background:9966ff;
|
| +color:#eee;
|
| + border-left:1px solid #fff;
|
| + font-family:BOOK ANTIQUA;
|
| + font-size:14px;
|
| + margin: 0;
|
| + padding:0px;}
|
| +
|
| +.dropdown dt:hover {
|
| + background:9999ff;
|
| + }
|
| +
|
| +.dropdown dt {
|
| +
|
| + cursor:pointer;}
|
| +.dropdown dd {
|
| + position:absolute;
|
| + overflow:hidden;
|
| + display:none;
|
| + background:9966ff;
|
| + z-index:1000;
|
| + opacity:.5;
|
| + margin:0 0 0 20px;
|
| + border-left:2px solid #620000;
|
| + border-right:2px solid #620000}
|
| +
|
| +.dropdown ul {
|
| + width:100px;
|
| + list-style:none;
|
| + margin:0;
|
| + padding: 0;
|
| + z-index:900;}
|
| +.dropdown li {
|
| + display:block;
|
| + width: 100px;
|
| + margin: 0;
|
| + padding: 5px;
|
| + border-bottom:2px solid #620000;}
|
| +.dropdown li a{
|
| + float:none;
|
| + width:auto;
|
| + padding: 0;
|
| + width:100px}
|
| +
|
| +.dropdown a:hover {
|
| + color:#FFFF00;}
|
| +
|
| +a{
|
| + color:blue;
|
| + font-family:BOOK ANTIQUA;
|
| + font-size:15px;
|
| + text-decoration: none;
|
| + padding-left:23px;
|
| + padding-right:23px;
|
| +}
|
| +a:hover {
|
| +background:9999ff;
|
| +color:#000
|
| +}
|
| +</style>
|
| +<body>
|
| +<div align=center class="headerMembers">
|
| +<!-- menu starts here -->
|
| +<div class="menu">
|
| +<div class="links">
|
| +<body>
|
| +<H2 align=center><font color="background:9900CC"> Chrome Release testing dashboard </font></h2>
|
| +
|
| +<div>
|
| + <dl class="dropdown">
|
| + <dt id="one-ddheader" onmouseover="ddMenu('one',1)" onmouseout="ddMenu('one',-1)"><a>Register new feature</a></dt>
|
| + <dd id="one-ddcontent" onmouseover="cancelHide('one')" onmouseout="ddMenu('one',-1)">
|
| + <ul>
|
| + <li><a href="registerfeature.jsp">Chrome</a></li>
|
| + <li><a href="">Chrome Frame</a></li>
|
| + </ul>
|
| + </dd>
|
| + </dl>
|
| +</div>
|
| +
|
| +
|
| +<div>
|
| + <dl class="dropdown">
|
| + <dt id="two-ddheader" onmouseover="ddMenu('two',1)" onmouseout="ddMenu('two',-1)"><a>Submit Status</a></dt>
|
| + <dd id="two-ddcontent" onmouseover="cancelHide('two')" onmouseout="ddMenu('two',-1)">
|
| + <ul>
|
| + <li><a href="SubmitStatus-Windows.jsp">Windows</a></li>
|
| + <li><a href="SubmitStatus-Mac.jsp">Mac</a></li>
|
| + <li><a href="SubmitStatus-Linux.jsp">Linux</a></li>
|
| + <li><a href="">Chrome Frame </a></li>
|
| + </ul>
|
| + </dd>
|
| + </dl>
|
| +</div>
|
| +
|
| +<div>
|
| + <dl class="dropdown">
|
| + <dt id="three-ddheader" onmouseover="ddMenu('three',1)" onmouseout="ddMenu('three',-1)"><a>View Status</a></dt>
|
| + <dd id="three-ddcontent" onmouseover="cancelHide('three')" onmouseout="ddMenu('three',-1)">
|
| + <ul>
|
| + <li><a href="TestingStatus-query.jsp">Windows</a></li>
|
| + <li><a href="TestingStatus-query-Mac.jsp">Mac</a></li>
|
| + <li><a href="TestingStatus-query-Linux.jsp">Linux</a></li>
|
| + <li><a href="">Chrome Frame </a></li>
|
| + </ul>
|
| + </dd>
|
| + </dl>
|
| +</div>
|
| +
|
| +<div>
|
| + <dl class="dropdown">
|
| + <dt id="four-ddheader" onmouseover="ddMenu('four',1)" onmouseout="ddMenu('four',-1)"><a>Release Blockers</a></dt>
|
| + <dd id="four-ddcontent" onmouseover="cancelHide('four')" onmouseout="ddMenu('four',-1)">
|
| + <ul>
|
| + <li><a href="Release-blockers.jsp?channel=Dev">Dev</a></li>
|
| + <li><a href="Release-blockers.jsp?channel=Beta">Beta</a></li>
|
| + <li><a href="Release-blockers.jsp?channel=Stable">Stable</a></li>
|
| + <li><a href="">ChromeFrame-Dev</a></li>
|
| + <li><a href="">ChromeFrame-Beta</a></li>
|
| + </ul>
|
| + </dd>
|
| + </dl>
|
| +</div>
|
| +<div style="background:9966ff;border-left:1px solid #fff;"><a href="calendar.jsp">Calendar</a></div>
|
| +
|
| +</body>
|
| +</div>
|
| +</div>
|
| +</div>
|
| +</html>
|
| +<BODY style="background:CCCCFF;font-family:BOOK ANTIQUA">
|
| +
|
| +
|
| +<%
|
| + PersistenceManager pm1 = PMF.get().getPersistenceManager();
|
| + String query1 = "select from " + BuildInfo.class.getName();
|
| + List<BuildInfo> build_val = (List<BuildInfo>) pm1.newQuery(query1).execute();
|
| +%>
|
| +
|
| +<div style="position:relative; width:100%; height:20px"></div>
|
| +<form id='mainForm1' action="" method="post">
|
| +
|
| + <div align=center>Pick a build: <select name="buildn" id="buildn" onChange="addRow(this.options[selectedIndex].text);">
|
| + <option value="Pick a build" selected>Pick a build
|
| + <% for (BuildInfo g : build_val) { %>
|
| + <option value=<%= g.getBuildNumber() %>><%= g.getBuildNumber() %>
|
| + <% } %>
|
| + </select>
|
| +
|
| +</form>
|
| +
|
| +<div id="status" >
|
| +<%
|
| + PersistenceManager pm3 = PMF.get().getPersistenceManager();
|
| + String query2 = "select from " + RegisterFeature.class.getName() + " where feature_type=='Frontend'";
|
| + List<RegisterFeature> feature_list = (List<RegisterFeature>) pm3.newQuery(query2).execute();
|
| +
|
| +
|
| + PersistenceManager pm = PMF.get().getPersistenceManager();
|
| + String query = "select from " + TestStatus.class.getName() + " where build_number=='" + request.getParameter("buildn") +"'" ;
|
| + List<TestStatus> windows = (List<TestStatus>) pm.newQuery(query).execute();
|
| +
|
| +
|
| +%>
|
| +
|
| +<% if (windows.isEmpty()) { %>
|
| +<p>No results to display</p>
|
| +<% } else {%>
|
| +<table align=center class="mytable" style="table-layout: fixed;">
|
| +<tr><td><b><H3>Frontend Features:</H3></b></td></tr>
|
| +<tr>
|
| +<th ><b>Featurename</b></th>
|
| +<th><b>XP</b></th>
|
| +<th><b>Tester</b></th>
|
| +<th><b>Vista</b></th>
|
| +<th><b>Tester</b></th>
|
| +<th><b>Win7</b></th>
|
| +<th><b>Tester</b></th>
|
| +<th><b>Bugs Found</b></th>
|
| + <% for (RegisterFeature f_list : feature_list) {
|
| + int found = 0;
|
| + for (TestStatus win_status : windows) {
|
| + if ((win_status.getFeatureName()).equals(f_list.getFeatureName())) {%>
|
| + <tr class ="fitrow" style="border:1px solid #CCC; Color: black; padding: 2px">
|
| + <td><%= win_status.getFeatureName() %></td>
|
| +
|
| +
|
| + <% if (win_status.getStatusXP().equals("Buggy")) {%>
|
| + <td style="background-color:#FF0000"><%= win_status.getStatusXP() %></td>
|
| + <% } else if (win_status.getStatusXP().equals("InProgress")) { %>
|
| + <td style="background-color:#FFFF00"><%= win_status.getStatusXP() %></td>
|
| + <% } else if (win_status.getStatusXP().equals("Finished")) { %>
|
| + <td style="background-color:#008000"><%= win_status.getStatusXP() %></td>
|
| + <% } else{ %>
|
| + <td style="background-color:#FFA500"><%= win_status.getStatusXP() %></td>
|
| + <%} %>
|
| +
|
| + <td><%= win_status.getXpTester()%></td>
|
| +
|
| +
|
| +
|
| +
|
| + <% if (win_status.getStatusVista().equals("Buggy")) {%>
|
| + <td style="background-color:#FF0000"><%= win_status.getStatusVista() %></td>
|
| + <% } else if (win_status.getStatusVista().equals("InProgress")) { %>
|
| + <td style="background-color:#FFFF00"><%= win_status.getStatusVista() %></td>
|
| + <% } else if (win_status.getStatusVista().equals("Finished")) { %>
|
| + <td style="background-color:#008000"><%= win_status.getStatusVista() %></td>
|
| + <% } else{ %>
|
| + <td style="background-color:#FFA500"><%= win_status.getStatusVista() %></td>
|
| + <%}%>
|
| + <td><%= win_status.getVistaTester()%></td>
|
| +
|
| +
|
| + <% if (win_status.getStatusWin7().equals("Buggy")) {%>
|
| + <td style="background-color:#FF0000"><%= win_status.getStatusWin7() %></td>
|
| + <% } else if (win_status.getStatusWin7().equals("InProgress")) { %>
|
| + <td style="background-color:#FFFF00"><%= win_status.getStatusWin7() %></td>
|
| + <% } else if (win_status.getStatusWin7().equals("Finished")) { %>
|
| + <td style="background-color:#008000"><%= win_status.getStatusWin7() %></td>
|
| + <% } else{ %>
|
| + <td style="background-color:#FFA500"><%= win_status.getStatusWin7() %></td>
|
| + <%}%>
|
| + <td><%= win_status.getWin7Tester()%></td>
|
| + <td><%= win_status.getNotes()%></td>
|
| +
|
| + </tr>
|
| + <% found=1;
|
| + break;
|
| + }
|
| + }
|
| + if (found == 0) {
|
| + if (!(f_list.getFeatureName().equals(""))) {%>
|
| + <tr class ="fitrow" style="border:1px solid #CCC; Color: black; padding:2px">
|
| + <td><%= f_list.getFeatureName() %></td>
|
| + <td style="background-color:#FFA500">Not Started</td>
|
| + <td> n/a </td>
|
| + <td style="background-color:#FFA500">Not Started</td>
|
| + <td> n/a </td>
|
| + <td style="background-color:#FFA500">Not Started</td>
|
| + <td> n/a </td>
|
| + </tr>
|
| + <%} }
|
| + %>
|
| +
|
| +
|
| +<% }
|
| +
|
| + pm.close();
|
| +
|
| +%>
|
| +
|
| +
|
| +</table>
|
| +
|
| +<%
|
| + PersistenceManager pm_frontend = PMF.get().getPersistenceManager();
|
| + String query_frontend = "select from " + RegisterFeature.class.getName() + " where feature_type=='Backend'";
|
| + List<RegisterFeature> frontend_feature_list = (List<RegisterFeature>) pm_frontend.newQuery(query_frontend).execute();
|
| +%>
|
| +<table align=center class="mytable" style="table-layout: fixed; ">
|
| +<tr><td><b><H3>Backend Features:</H3></b></td></tr>
|
| +<tr>
|
| +<th ><b>Featurename</b></th>
|
| +<th><b>XP</b></th>
|
| +<th><b>Tester</b></th>
|
| +<th><b>Vista</b></th>
|
| +<th><b>Tester</b></th>
|
| +<th><b>Win7</b></th>
|
| +<th><b>Tester</b></th>
|
| +<th><b>Bugs Found</b></th>
|
| + <% for (RegisterFeature f_list : frontend_feature_list) {
|
| + int found = 0;
|
| + for (TestStatus win_status : windows) {
|
| + if ((win_status.getFeatureName()).equals(f_list.getFeatureName())) {%>
|
| + <tr class ="fitrow" style="border:1px solid #CCC; Color: black; padding: 2px">
|
| + <td><%= win_status.getFeatureName() %></td>
|
| +
|
| +
|
| + <% if (win_status.getStatusXP().equals("Buggy")) {%>
|
| + <td style="background-color:#FF0000"><%= win_status.getStatusXP() %></td>
|
| + <% } else if (win_status.getStatusXP().equals("InProgress")) { %>
|
| + <td style="background-color:#FFFF00"><%= win_status.getStatusXP() %></td>
|
| + <% } else if (win_status.getStatusXP().equals("Finished")) { %>
|
| + <td style="background-color:#008000"><%= win_status.getStatusXP() %></td>
|
| + <% } else{ %>
|
| + <td style="background-color:#FFA500"><%= win_status.getStatusXP() %></td>
|
| + <%} %>
|
| +
|
| + <td><%= win_status.getXpTester()%></td>
|
| +
|
| +
|
| +
|
| +
|
| + <% if (win_status.getStatusVista().equals("Buggy")) {%>
|
| + <td style="background-color:#FF0000"><%= win_status.getStatusVista() %></td>
|
| + <% } else if (win_status.getStatusVista().equals("InProgress")) { %>
|
| + <td style="background-color:#FFFF00"><%= win_status.getStatusVista() %></td>
|
| + <% } else if (win_status.getStatusVista().equals("Finished")) { %>
|
| + <td style="background-color:#008000"><%= win_status.getStatusVista() %></td>
|
| + <% } else{ %>
|
| + <td style="background-color:#FFA500"><%= win_status.getStatusVista() %></td>
|
| + <%}%>
|
| + <td><%= win_status.getVistaTester()%></td>
|
| +
|
| +
|
| + <% if (win_status.getStatusWin7().equals("Buggy")) {%>
|
| + <td style="background-color:#FF0000"><%= win_status.getStatusWin7() %></td>
|
| + <% } else if (win_status.getStatusWin7().equals("InProgress")) { %>
|
| + <td style="background-color:#FFFF00"><%= win_status.getStatusWin7() %></td>
|
| + <% } else if (win_status.getStatusWin7().equals("Finished")) { %>
|
| + <td style="background-color:#008000"><%= win_status.getStatusWin7() %></td>
|
| + <% } else{ %>
|
| + <td style="background-color:#FFA500"><%= win_status.getStatusWin7() %></td>
|
| + <%}%>
|
| + <td><%= win_status.getWin7Tester()%></td>
|
| + <td><%= win_status.getNotes()%></td>
|
| +
|
| + </tr>
|
| + <% found=1;
|
| + break;
|
| + }
|
| + }
|
| + if (found == 0) {
|
| + if (!(f_list.getFeatureName().equals(""))) {%>
|
| + <tr class ="fitrow" style="border:1px solid #CCC; Color: black; padding:2px">
|
| + <td><%= f_list.getFeatureName() %></td>
|
| + <td style="background-color:#FFA500">Not Started</td>
|
| + <td> n/a </td>
|
| + <td style="background-color:#FFA500">Not Started</td>
|
| + <td> n/a </td>
|
| + <td style="background-color:#FFA500">Not Started</td>
|
| + <td> n/a </td>
|
| + </tr>
|
| + <%} }
|
| + %>
|
| +
|
| +
|
| +<% }
|
| +
|
| + pm_frontend.close();
|
| +
|
| +%>
|
| +
|
| +
|
| +</table>
|
| +<%
|
| + PersistenceManager pm_compat = PMF.get().getPersistenceManager();
|
| + String query_compat = "select from " + RegisterFeature.class.getName() + " where feature_type=='Compat'";
|
| + List<RegisterFeature> compat_feature_list = (List<RegisterFeature>) pm_compat.newQuery(query_compat).execute();
|
| +%>
|
| +
|
| +<table align=center class="mytable" width=708px style="table-layout: fixed;">
|
| +<tr><td><b><H3>Compat:</H3></b></td></tr>
|
| +<tr>
|
| +<th ><b>Featurename</b></th>
|
| +<th><b>XP</b></th>
|
| +<th><b>Tester</b></th>
|
| +<th><b>Vista</b></th>
|
| +<th><b>Tester</b></th>
|
| +<th><b>Win7</b></th>
|
| +<th><b>Tester</b></th>
|
| +<th><b>Bugs Found</b></th>
|
| + <% for (RegisterFeature f_list : compat_feature_list) {
|
| + int found = 0;
|
| + for (TestStatus win_status : windows) {
|
| + if ((win_status.getFeatureName()).equals(f_list.getFeatureName())) {%>
|
| + <tr class ="fitrow" style="border:1px solid #CCC; Color: black; padding: 2px">
|
| + <td><%= win_status.getFeatureName() %></td>
|
| +
|
| +
|
| + <% if (win_status.getStatusXP().equals("Buggy")) {%>
|
| + <td style="background-color:#FF0000"><%= win_status.getStatusXP() %></td>
|
| + <% } else if (win_status.getStatusXP().equals("InProgress")) { %>
|
| + <td style="background-color:#FFFF00"><%= win_status.getStatusXP() %></td>
|
| + <% } else if (win_status.getStatusXP().equals("Finished")) { %>
|
| + <td style="background-color:#008000"><%= win_status.getStatusXP() %></td>
|
| + <% } else{ %>
|
| + <td style="background-color:#FFA500"><%= win_status.getStatusXP() %></td>
|
| + <%} %>
|
| +
|
| + <td><%= win_status.getXpTester()%></td>
|
| +
|
| +
|
| +
|
| +
|
| + <% if (win_status.getStatusVista().equals("Buggy")) {%>
|
| + <td style="background-color:#FF0000"><%= win_status.getStatusVista() %></td>
|
| + <% } else if (win_status.getStatusVista().equals("InProgress")) { %>
|
| + <td style="background-color:#FFFF00"><%= win_status.getStatusVista() %></td>
|
| + <% } else if (win_status.getStatusVista().equals("Finished")) { %>
|
| + <td style="background-color:#008000"><%= win_status.getStatusVista() %></td>
|
| + <% } else{ %>
|
| + <td style="background-color:#FFA500"><%= win_status.getStatusVista() %></td>
|
| + <%}%>
|
| + <td><%= win_status.getVistaTester()%></td>
|
| +
|
| +
|
| + <% if (win_status.getStatusWin7().equals("Buggy")) {%>
|
| + <td style="background-color:#FF0000"><%= win_status.getStatusWin7() %></td>
|
| + <% } else if (win_status.getStatusWin7().equals("InProgress")) { %>
|
| + <td style="background-color:#FFFF00"><%= win_status.getStatusWin7() %></td>
|
| + <% } else if (win_status.getStatusWin7().equals("Finished")) { %>
|
| + <td style="background-color:#008000"><%= win_status.getStatusWin7() %></td>
|
| + <% } else{ %>
|
| + <td style="background-color:#FFA500"><%= win_status.getStatusWin7() %></td>
|
| + <%}%>
|
| + <td><%= win_status.getWin7Tester()%></td>
|
| + <td><%= win_status.getNotes()%></td>
|
| +
|
| + </tr>
|
| + <% found=1;
|
| + break;
|
| + }
|
| + }
|
| + if (found == 0) {
|
| + if (!(f_list.getFeatureName().equals(""))) {%>
|
| + <tr class ="fitrow" style="border:1px solid #CCC; Color: black; padding:2px">
|
| + <td><%= f_list.getFeatureName() %></td>
|
| + <td style="background-color:#FFA500">Not Started</td>
|
| + <td> n/a </td>
|
| + <td style="background-color:#FFA500">Not Started</td>
|
| + <td> n/a </td>
|
| + <td style="background-color:#FFA500">Not Started</td>
|
| + <td> n/a </td>
|
| + </tr>
|
| + <%} }
|
| + %>
|
| +
|
| +
|
| +<% }
|
| +
|
| + pm_compat.close();
|
| +}
|
| +
|
| +%>
|
| +
|
| +
|
| +</table>
|
| +
|
| +</div>
|
| +
|
| +</body>
|
| +</html>
|
|
|