1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 from monitor.util import diff_time
4 from time import mktime
7 <span xmlns:py="http://purl.org/kid/ns#">
8 <span py:if="header is not None">
19 <th>Installation Date</th>
22 <span py:if="node is not None">
23 <td py:content="node.node.plc_node_stats['node_id']">node_id</td>
25 <a target="_top" href="${link('pcuview', hostname=node.node.hostname)}" py:content="node.node.hostname">your.host.org</a></td>
27 <a href="${link('pcuview', loginbase=node.node.loginbase)}">${node.node.loginbase}</a>
29 <td py:content="node.node.ping_status">ping</td>
30 <td py:content="node.node.ssh_status">ssh</td>
31 <td py:content="node.node.plc_node_stats['boot_state']">boot</td>
32 <td width="20%" nowrap='true' align='center' id="status-${node.pcu_short_status}">
34 <a class="info" py:if="'error' in node.pcu_short_status"
35 href="${link('pcuview', pcuid=node.pcu.pcu.plc_pcuid)}">
36 Error<span><pre>${node.pcu.pcu.reboot_trial_status}</pre></span></a>
37 <a py:if="'error' not in node.pcu_short_status and 'none' not in node.pcu_short_status"
38 href="${link('pcuview', pcuid=node.pcu.pcu.plc_pcuid)}"
39 py:content="node.pcu_short_status">Reboot Status</a>
40 <span py:if="'none' in node.pcu_short_status"
41 py:content="node.pcu_short_status">Reboot Status</span>
44 <td nowrap="true" py:content="node.kernel"></td>
45 <td nowrap="true" py:content="node.node.bootcd_version"></td>
46 <td nowrap="true" py:content="node.node.boot_server"></td>
47 <td nowrap="true" py:content="node.node.install_date"></td>
48 <td id="node-${node.node.observed_status}" py:content="diff_time(node.node.plc_node_stats['last_contact'])"></td>