modified findbad and findbadpcu to use scanapi. need to combine these files.
[monitor.git] / web / MonitorWeb / monitorweb / templates / pculist.kid
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <?python
3 layout_params['page_title'] = "Monitor PCU List"
4 from pcucontrol.reboot import pcu_name, model_to_object
5 from monitor import config
6 from links import *
7 ?>
8 <html py:layout="'sitemenu.kid'"
9       xmlns:py="http://purl.org/kid/ns#"
10           xmlns:mochi="http://www.mochi.org">
11
12   <div py:match="item.tag == 'content'">
13         <table id="sub-table" width="100%">
14                 <thead>
15                         <tr>
16                                 <th><a href="${link('pcu', filter='ok')}">Ok(${fc['ok']})</a></th>
17                                 <th><a href="${link('pcu', filter='Not_Run')}">Misconfigured(${fc['Not_Run']})</a></th>
18                                 <th><a href="${link('pcu', filter='NetDown')}">Offline(${fc['NetDown']})</a></th>
19                                 <th><a href="${link('pcu', filter='pending')}">Runtime Error(${fc['pending']})</a></th>
20                                 <th><a href="${link('pcu', filter='all')}">All</a></th>
21                         </tr>
22                 </thead>
23                 <tbody>
24                 <tr>
25                 <td colspan="5">
26                 <table id="sortable_table" class="datagrid" border="1" width="100%">
27                         <thead>
28                                 <tr>
29                                         <th mochi:format="int"></th>
30                                         <th mochi:format="str">Site</th>
31                                         <th>PCU Name</th>
32                                         <th nowrap='true' >Port Status</th>
33                                         <th nowrap='true' width="80%">Test Results</th>
34                                         <th>Model</th>
35                                         <th>Nodes</th>
36                                 </tr>
37                         </thead>
38                         <tbody>
39                                 <tr py:for="i,node in enumerate(query)" class="${i%2 and 'odd' or 'even'}" >
40                                         <td></td>
41                                         <td nowrap='true'>
42                                                 <div class='oneline'>
43                                                 <a class='left' href="${link('pcuview', loginbase=node.loginbase)}">${node.loginbase}</a>
44                                                 <a class='right' href="${plc_site_uri(node.loginbase)}">
45                                                         <img style='display: inline' border='0' src="static/images/extlink.gif" align='right'/></a>
46                                                 </div>
47                                         </td>
48                                         <td nowrap='true'>
49                                                 <div class='oneline'>
50                                                 <a class='left' href="${link('pcuview', pcuid=node.plc_pcuid)}">${pcu_name(node.plc_pcu_stats)}</a>
51                                                 <a class='right' href="${plc_pcu_uri_id(node.plc_pcu_stats['pcu_id'])}">
52                                                         <img style='display: inline' border='0' src="static/images/extlink.gif" align='right'/></a>
53                                                 </div>
54                                         </td>
55                                         <td nowrap='true'>
56                                                 <span py:for="port,state in node.ports" 
57                                                 id="port${state}" py:content="'%s, ' % port">80</span>
58                                         </td>
59                                         <td width="20%" nowrap='true' align='center' id="status-${node.status}">
60                                                 <div id="links">
61                                                 <a class="info" py:if="'error' in node.status" 
62                                                         href="${link('pcuview', pcuid=node.plc_pcuid)}">
63                                                         Error<span><pre>${node.reboot_trial_status}</pre></span></a>
64                                                 <a py:if="'error' not in node.status" 
65                                                         href="${link('pcuview', pcuid=node.plc_pcuid)}"
66                                                         py:content="node.status">Reboot Status</a>
67                                                 </div>
68                                         </td>
69                                         <td py:content="node.plc_pcu_stats['model']"></td>
70                                         <td py:content="len(node.plc_pcu_stats['node_ids'])"></td>
71                                 </tr>
72                         </tbody>
73                 </table>
74                 </td>
75                 </tr>
76                 </tbody>
77         </table>
78   </div>
79
80 </html>