<?php /** * Produces HTML for use in the interface. */ //require_once("config.php"); class GroupNodeTable { function GroupNodeTable() {} /** * @return A string containing the HTML for the header of the table. */ function insertGroupTableHeader() { echo <<<EOS <table border="0" cellspacing="1" cellpadding=1> <tr class=TableHeader> <td width="88" align=left><input type="checkbox" name="chk_node_all" id="chk_node_all">Groups</td> <td>HW Type</td><td>OS</td><td>Mode</td><td>Status</td><td>HW Ctrl Pt</td><td>Comment</td> </tr> EOS; return; } function insertGroupTableFooter() { echo "</table>"; return; } /** * @param String nodeGroupName The name of the node group. */ function getToggleString($nodeGroupName) { global $TOPDIR; //$colTxt = "Click to collapse section"; $exTxt = "Click to expand section"; //$bulgif = "$TOPDIR/images/h3bg_new.gif"; //$minusgif = "$TOPDIR/images/minus-sign.gif"; $plusgif = "$TOPDIR/images/plus-sign.gif"; $html = <<<EOS <span title="$exTxt" id="img_gr_$nodeGroupName" onclick="XCATui.updateNodeList('$nodeGroupName')" ondblclick="toggleSection(this,'div_$nodeGroupName')"> <img src="$plusgif" id="div_$nodeGroupName-im" name="div_$nodeGroupName-im"> EOS; return $html; } /** * @param String nodeGroup The group. */ function insertGroupTableRow($nodeGroup) { $nodeGroupName = $nodeGroup->getName(); $img_string = XCATNodeGroupUtil::getImageString($nodeGroup->getStatus()); //echo '<tr bgcolor="#FFCC00"><td align=left>'; echo '<tr class=TableRow><td align=left>'; echo GroupNodeTable::getToggleString($nodeGroupName); echo <<<EOE <input type="checkbox" name="chk_node_group_$nodeGroupName" id="chk_node_group_$nodeGroupName"><b>$nodeGroupName</b></span> </td> <td> </td> <td> </td> <td> </td> <td>$img_string</td> <td> </td> <td> </td> </tr> <tr style="display:none"><td colspan=7><div id=div_$nodeGroupName style="display:none"></div></td></tr> EOE; return; } /** * @param XCATNodeGroup nodeGroup The node group for which we want to generate the html. * returns the table that contains all the nodes information of that group */ function getXCATNodeGroupSection($nodeGroup) { $imagedir = 'images'; $right_arrow_gif = $imagedir . "/grey_arrow_r.gif"; $left_arrow_gif = $imagedir . "/grey_arrow_l.gif"; $html .= <<<EOS <table id=" EOS; $html .= $nodeGroup->getName(); $html .= <<<EOS " width='100%' cellpadding=0 cellspacing=1 border=0> EOS; $nodes = $nodeGroup->getNodes(); foreach($nodes as $nodeName => $node) { $html .= GroupNodeTable::getXCATNodeTableRow($node); } $html .= "<TR bgcolor=\"#FFFF66\"><TD colspan=9 align=\"right\"><image src=\"$left_arrow_gif\" alt=\"Previous page\"> <image src=\"$right_arrow_gif\" alt=\"Next page\"> </TD></TR>"; $html .= <<<EOS </table> EOS; return $html; } /** * @param XCATNode node The node for which we want to generate the html. */ function getXCATNodeTableRow($node) { $imagedir = 'images'; //echo $node->getName(); $html = "<tr bgcolor=\"#FFFF66\" class=\"indent\"> <td width=89><input type=\"checkbox\" name=\"node_" .$node->getName(). "\" />" .$node->getName(). "</td>" . "<td width=38><div align=center>" . $node->getHwType(). "</div></td>". "<td width=22><div align=center>" . $node->getOs(). "</div></td>". "<td width=43><div align=center>" . $node->getMode(). "</div></td>"; $stat = $node->getStatus(); $img_string = XCATNodeGroupUtil::getImageString($stat); $html .= "<td width=43><div align=center>" . $img_string . "</div></td>". "<td width=85><div align=center>" . $node->getHwCtrlPt(). "</div></td>". "<td width=71><div align=center>" . $node->getComment(). "</div></td></tr>"; EOS; return $html; } } ?>