blob: b51ad04315579d7f20e7cc86515a30aba210907d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:py="http://genshi.edgewall.org/"
xmlns:xi="http://www.w3.org/2001/XInclude">
<xi:include href="master.html" />
<head>
<meta content="text/html; charset=UTF-8" http-equiv="content-type" py:replace="''"/>
<title>Is Rawhide Broken?</title>
</head>
<?python
def rclass(r):
if r is None: return None
return r.result and 'pass' or 'fail'
results = {}
for tree in trees:
rdict = dict([(t.id, None) for t in tests])
for r in tree.results:
rdict[r.testID] = r
results[tree.id] = rdict
?>
<body>
<table id="results">
<th>Rawhide compose ${c}</th>
<th py:for="tree in trees">${tree.arch}</th>
<tr py:for="test in tests">
<td><a href="${test.uri}">${test.name}</a></td>
<td py:for="tree in trees" py:with="r=results[tree.id][test.id]"
class="${rclass(r)}">
<py:choose>
<!--! TODO FIXME form target -->
<!--! TODO FIXME FOR REAL nice widget to do this ajaxfully -->
<form py:when="in_qa and r is None and test.id == 8 or test.id == 9">
<select name="result">
<option>none</option>
<option value="1">pass</option>
<option value="0">fail</option>
</select>
<input type="hidden" name="testid" value="${test.id}"/>
<input type="hidden" name="treeid" value="${tree.id}"/>
</form>
<span py:otherwise="">${rclass(r) or 'none'}</span>
</py:choose>
<span py:if="admin and r is not None">
<a href="${tg.url('/delete_result?id='+str(r.id))}">x</a>
</span>
</td>
</tr>
</table>
</body>
</html>
|