".
"Node $node_id";
#
# Admin users can look at any node, but normal users can only control
# nodes in their own experiments.
#
if (! $isadmin &&
! TBNodeAccessCheck($uid, $node_id, $TB_NODEACCESS_MODIFYINFO)) {
SHOWNODE($node_id, SHOWNODE_NOPERM);
PAGEFOOTER();
return;
}
$query_result =
DBQueryFatal("select r.vname,r.pid,r.eid from nodes as n ".
"left join reserved as r on n.node_id=r.node_id ".
"where n.node_id='$node_id'");
if (! mysql_num_rows($query_result) != 0) {
TBERROR("Node $node id does not have a nodes table entry!", 1);
}
$row = mysql_fetch_array($query_result);
$vname = $row[vname];
$pid = $row[pid];
$eid = $row[eid];
if (isset($pid) && $vname != "") {
echo " (".
" $vname.".
" $eid.".
" $pid.".
" $OURDOMAIN".
" )";
}
echo "
\n";
SUBPAGESTART();
SUBMENUSTART("Node Options");
#
# Tip to node option
#
if (TBHasSerialConsole($node_id)) {
WRITESUBMENUBUTTON("Connect to Serial Line " .
"(howto)",
"nodetipacl.php3?node_id=$node_id");
}
#
# SSH to option.
#
if (isset($pid)) {
WRITESUBMENUBUTTON("SSH to node ".
"".
"(howto)", "nodessh.php3?node_id=$node_id");
}
#
# Edit option
#
WRITESUBMENUBUTTON("Edit Node Info",
"nodecontrol_form.php3?node_id=$node_id");
if ($isadmin || TBNodeAccessCheck($uid, $node_id, $TB_NODEACCESS_REBOOT)) {
if (isset($pid)) {
WRITESUBMENUBUTTON("Update Node",
"updateaccounts.php3?pid=$pid&eid=$eid".
"&nodeid=$node_id");
}
WRITESUBMENUBUTTON("Reboot Node",
"boot.php3?node_id=$node_id");
WRITESUBMENUBUTTON("Show Boot Log",
"bootlog.php3?node_id=$node_id");
}
if (TBNodeAccessCheck($uid, $node_id, $TB_NODEACCESS_LOADIMAGE)) {
WRITESUBMENUBUTTON("Create a Disk Image",
"newimageid_ez.php3?formfields[node]=$node_id");
}
if (($isadmin || TBNodeAccessCheck($uid, $node_id, $TB_NODEACCESS_READINFO)) &&
(TBNodeClass($node_id) == "robot")) {
WRITESUBMENUBUTTON("Show Telemetry",
"telemetry.php3?node=$node_id",
"telemetry");
}
if ($isadmin) {
WRITESUBMENUBUTTON("Show Node Log",
"shownodelog.php3?node_id=$node_id");
WRITESUBMENUBUTTON("Show Node History",
"shownodehistory.php3?node_id=$node_id");
WRITESUBMENUBUTTON("Free Node",
"freenode.php3?node_id=$node_id");
WRITESUBMENUBUTTON("Set Node Location",
"setnodeloc.php3?node_id=$node_id");
WRITESUBMENUBUTTON("Update Power State",
"powertime.php3?node_id=$node_id");
}
SUBMENUEND();
#
# Dump record.
#
SHOWNODE($node_id);
SUBPAGEEND();
#
# Standard Testbed Footer
#
PAGEFOOTER();
?>