function getNavMenu($inclogout, $inchome, $homeurl = HOMEURL) { global $user, $docreaders, $authed, $mode; if ($authed && $mode != 'expiredemouser') { $computermetadata = getUserComputerMetaData(); $requests = getUserRequests("all", $user["id"]); } else { $computermetadata = array("platforms" => array(), "schedules" => array()); } $rt = ''; if ($inchome) { $rt .= menulistLI('home'); $rt .= "<a href=\"{$homeurl}\">" . i("HOME") . "</a></li>\n"; } $rt .= menulistLI('reservations'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=viewRequests\">"; $rt .= i("Reservations") . "</a></li>\n"; #$rt .= menulistLI('config'); #$rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=config\">"; #$rt .= i("Manage Configs") . "</a></li>\n"; $rt .= menulistLI('blockAllocations'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=blockAllocations\">"; $rt .= i("Block Allocations") . "</a></li>\n"; $rt .= menulistLI('userPreferences'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=userpreferences\">"; $rt .= i("User Preferences") . "</a></li>\n"; if (in_array("groupAdmin", $user["privileges"])) { $rt .= menulistLI('manageGroups'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=viewGroups\">"; $rt .= i("Manage Groups") . "</a></li>\n"; } if (in_array("imageAdmin", $user["privileges"])) { $rt .= menulistLI('image'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=image\">"; $rt .= i("Manage Images") . "</a></li>\n"; } if (in_array("scheduleAdmin", $user["privileges"])) { $rt .= menulistLI('schedule'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=schedule\">"; $rt .= i("Manage Schedules") . "</a></li>\n"; } if (in_array("computerAdmin", $user["privileges"])) { $rt .= menulistLI('computer'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=computer\">"; $rt .= i("Manage Computers") . "</a></li>\n"; } if (in_array("mgmtNodeAdmin", $user["privileges"])) { $rt .= menulistLI('managementnode'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=managementnode\">"; $rt .= i("Management Nodes") . "</a></li>\n"; } if (in_array("serverProfileAdmin", $user["privileges"]) || in_array("serverCheckOut", $user["privileges"])) { $rt .= menulistLI('serverProfiles'); $rt .= "<a href=\"" . BASEURL . SCRIPT; $rt .= "?mode=serverProfiles\">" . i("Server Profiles") . "</a></li>\n"; } if (count($computermetadata["platforms"]) && count($computermetadata["schedules"])) { $rt .= menulistLI('timeTable'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=pickTimeTable\">"; $rt .= i("View Time Table") . "</a></li>\n"; } if (in_array("userGrant", $user["privileges"]) || in_array("resourceGrant", $user["privileges"]) || in_array("nodeAdmin", $user["privileges"])) { $rt .= menulistLI('privileges'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=viewNodes\">"; $rt .= i("Privileges") . "</a></li>\n"; } if (checkUserHasPerm('User Lookup (global)') || checkUserHasPerm('User Lookup (affiliation only)')) { $rt .= menulistLI('userLookup'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=userLookup\">"; $rt .= i("User Lookup") . "</a></li>\n"; } if (in_array("computerAdmin", $user["privileges"])) { $rt .= menulistLI('vm'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=editVMInfo\">"; $rt .= i("Virtual Hosts") . "</a></li>\n"; } if (checkUserHasPerm('Schedule Site Maintenance')) { $rt .= menulistLI('sitemaintenance'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=siteMaintenance\">"; $rt .= i("Site Maintenance") . "</a></li>\n"; } $rt .= menulistLI('statistics'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=selectstats\">"; $rt .= i("Statistics") . "</a></li>\n"; if (checkUserHasPerm('View Dashboard (global)') || checkUserHasPerm('View Dashboard (affiliation only)')) { $rt .= menulistLI('dashboard'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=dashboard\">"; $rt .= i("Dashboard") . "</a></li>\n"; } if (checkUserHasPerm('Site Configuration (global)') || checkUserHasPerm('Site Configuration (affiliation only)')) { $rt .= menulistLI('siteconfig'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=siteconfig\">"; $rt .= i("Site Configuration") . "</a></li>\n"; } $rt .= menulistLI('codeDocumentation'); $rt .= "<a href=\"" . DOCUMENTATIONURL . "\">"; $rt .= i("Documentation") . "</a></li>\n"; if ($inclogout) { $rt .= menulistLI('authentication'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=logout\">"; $rt .= i("Logout") . "</a></li>\n"; } return $rt; }
function getNavMenu($inclogout, $inchome, $homeurl = HOMEURL) { global $user, $viewmode, $docreaders, $authed, $userlookupUsers, $skin; global $mode; if ($authed && $mode != 'expiredemouser') { $computermetadata = getUserComputerMetaData(); } else { $computermetadata = array("platforms" => array(), "schedules" => array()); } $rt = ''; if ($inchome) { $rt .= menulistLI('home'); $rt .= "<a href=\"{$homeurl}\">HOME</a></li>\n"; } $rt .= menulistLI('newReservations'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=newRequest\">"; $rt .= "New Reservation</a></li>\n"; if (in_array("imageCheckOut", $user["privileges"]) || in_array("imageAdmin", $user["privileges"])) { $rt .= menulistLI('currentReservations'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=viewRequests\">"; $rt .= "Current Reservations</a></li>\n"; } if ($viewmode == ADMIN_DEVELOPER) { $rt .= menulistLI('blockReservations'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=blockRequest\">"; $rt .= "Block Reservations</a></li>\n"; } $rt .= menulistLI('userPreferences'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=userpreferences\">"; $rt .= "User Preferences</a></li>\n"; if (in_array("groupAdmin", $user["privileges"])) { $rt .= menulistLI('manageGroups'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=viewGroups\">"; $rt .= "Manage Groups</a></li>\n"; } if (in_array("imageAdmin", $user["privileges"])) { $rt .= menulistLI('manageImages'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=selectImageOption\">"; $rt .= "Manage Images</a></li>\n"; } if (in_array("scheduleAdmin", $user["privileges"])) { $rt .= menulistLI('manageSchedules'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=viewSchedules\">"; $rt .= "Manage Schedules</a></li>\n"; } if (in_array("computerAdmin", $user["privileges"])) { $rt .= menulistLI('manageComputers'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=selectComputers\">"; $rt .= "Manage Computers</a></li>\n"; } if (in_array("mgmtNodeAdmin", $user["privileges"])) { $rt .= menulistLI('managementNodes'); $rt .= "<a href=\"" . BASEURL . SCRIPT; $rt .= "?mode=selectMgmtnodeOption\">Management Nodes</a></li>\n"; } if (count($computermetadata["platforms"]) && count($computermetadata["schedules"])) { $rt .= menulistLI('timeTable'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=pickTimeTable\">"; $rt .= "View Time Table</a></li>\n"; } if (in_array("userGrant", $user["privileges"]) || in_array("resourceGrant", $user["privileges"]) || in_array("nodeAdmin", $user["privileges"])) { $rt .= menulistLI('privileges'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=viewNodes\">"; $rt .= "Privileges</a></li>\n"; } if ($viewmode == ADMIN_DEVELOPER || in_array($user['id'], $userlookupUsers)) { $rt .= menulistLI('userLookup'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=userLookup\">"; $rt .= "User Lookup</a></li>\n"; } if (in_array("computerAdmin", $user["privileges"])) { $rt .= menulistLI('vm'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=editVMInfo\">"; $rt .= "Virtual Hosts</a></li>\n"; } $rt .= menulistLI('statistics'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=selectstats\">"; $rt .= "Statistics</a></li>\n"; if ($skin != 'ecu') { $rt .= menulistLI('help'); $rt .= "<a href=\"" . HELPURL . "\">Help</a></li>\n"; } if ($skin == 'ecu') { $rt .= "<li><a href=\"http://www.ecu.edu/cs-itcs/vcl/connect.cfm\">Requirements</a></li>\n"; $rt .= "<li><a href=\"http://www.ecu.edu/cs-itcs/vcl/save.cfm\">File Saving</a></li>\n"; $rt .= "<li><a href=\"http://www.ecu.edu/cs-itcs/vcl/faqs.cfm\">Help</a></li>\n"; } if (in_array("userGrant", $user["privileges"]) || in_array("resourceGrant", $user["privileges"]) || in_array("nodeAdmin", $user["privileges"]) || in_array($user['id'], $docreaders)) { $rt .= menulistLI('codeDocumentation'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=viewdocs\">"; $rt .= "Documentation</a></li>\n"; } if ($inclogout) { $rt .= menulistLI('authentication'); $rt .= "<a href=\"" . BASEURL . SCRIPT . "?mode=logout\">"; $rt .= "Logout</a></li>\n"; } return $rt; }
function selectComputers() { global $viewmode, $user; $test = getComputers(); if (empty($test)) { addComputerPrompt(); return; } $data = getUserComputerMetaData(); # get a list of computer groups user can manage $tmp = getUserResources(array("computerAdmin"), array("manageGroup"), 1); $computergroups = $tmp["computer"]; if ((empty($data["platforms"]) || empty($data["schedules"])) && empty($computergroups)) { print "<H2>Computers</H2>\n"; print "You do not have access to manage any computers.<br>\n"; return; } $platform_cnt = count($data["platforms"]); $schedule_cnt = count($data["schedules"]); # get a count of schedules user can manage $tmp = getUserResources(array("scheduleAdmin"), array("manageGroup")); $scheduleAdminCnt = count($tmp['schedule']); # get a list of computers user can manage $tmp = getUserResources(array("computerAdmin"), array("administer")); $computers = $tmp["computer"]; print "<H2 align=center>Computers</H2>\n"; print "<FORM action=\"" . BASEURL . SCRIPT . "\" method=post>\n"; $cdata = array(); if ($platform_cnt > 1 || $schedule_cnt > 1) { print "Select the criteria for the computers you want to view:\n"; print "<div id=\"mainTabContainer\" dojoType=\"dijit.layout.TabContainer\"\n"; print " style=\"width:300px;height:275px\">\n"; # by platform/schedule print "<div id=\"platsch\" dojoType=\"dijit.layout.ContentPane\" title=\"Platforms/Schedules\">\n"; print "<TABLE id=layouttable summary=\"\">\n"; print " <TR>\n"; if ($platform_cnt > 1) { print " <TH>Platforms:</TH>\n"; } if ($schedule_cnt > 1) { print " <TH>Schedules:</TH>\n"; } print " </TR>\n"; print " <TR valign=top>\n"; if ($platform_cnt > 1) { print " <TD>\n"; printSelectInput("platforms[]", $data["platforms"], -1, 0, 1); print " </TD>\n"; } else { $tmp = array_keys($data["platforms"]); $platform_key = $tmp[0]; $cdata['platforms'] = array($platform_key); } if ($schedule_cnt > 1) { print " <TD>\n"; printSelectInput("schedules[]", $data["schedules"], -1, 0, 1, '', 'size=11'); print " </TD>\n"; } else { $tmp = array_keys($data["schedules"]); $schedule_key = $tmp[0]; $cdata['schedules'] = array($schedule_key); } print " </TR>\n"; print "</TABLE>\n"; print "</div>\n"; # by groups $size = count($computergroups); if ($size > 13) { $size = 13; } print "<div id=\"groups\" dojoType=\"dijit.layout.ContentPane\" "; print "title=\"Computer Groups\" align=center selected=\"true\">\n"; printSelectInput("groups[]", $computergroups, -1, 0, 1, '', "size={$size}"); print "</div>\n"; print "</div><br>\n"; } else { $size = count($computergroups); if ($size > 1) { if ($size > 13) { $size = 13; } print "Select the computer groups you want to view:<br>\n"; print "<small>(do not select any to view all computers to which you have access)</small><br>\n"; printSelectInput("groups[]", $computergroups, -1, 0, 1, '', "size={$size}"); print "<br><br>\n"; } $tmp = array_keys($data["platforms"]); $platform_key = $tmp[0]; $cdata['platforms'] = array($platform_key); $tmp = array_keys($data["schedules"]); $schedule_key = $tmp[0]; $cdata['schedules'] = array($schedule_key); } if (count($computergroups)) { $cont = addContinuationsEntry('viewComputerGroups', $cdata); print "<INPUT type=radio id=editcomp name=continuation value=\"{$cont}\">\n"; print "<label for=editcomp>Edit Computer Grouping</label><br><br>\n"; } if (count($computers)) { $cont = addContinuationsEntry('computerUtilities', $cdata); print "<INPUT type=radio id=computil name=continuation value=\"{$cont}\" checked>\n"; print "<label for=computil>Computer Utilities</label><br><br>\n"; } if ($scheduleAdminCnt) { $cont = addContinuationsEntry('viewComputers', $cdata); print "<INPUT type=radio id=viewcomp name=continuation value=\"{$cont}\">"; print "<label for=viewcomp>Edit Computer Information:</label>\n"; print "<TABLE>\n"; print " <TR nowrap>\n"; print " <TD rowspan=9><img src=\"images/blank.gif\" width=20></TD>\n"; print " <TD><INPUT type=checkbox id=showhostname name=showhostname "; print "value=1 checked><label for=showhostname>Hostname</label></TD>\n"; print " <TD><INPUT type=checkbox id=shownextimage name="; print "shownextimage value=1><label for=shownextimage>"; print "Next Image</TD>\n"; print " </TR>\n"; print " <TR nowrap>\n"; print " <TD><INPUT type=checkbox id=showipaddress name=showipaddress "; print "value=1 checked><label for=showipaddress>IP Address</label></TD>\n"; print " <TD><INPUT type=checkbox id=showram name=showram value=1>"; print "<label for=showram>RAM</label></TD>\n"; print " </TR>\n"; print " <TR nowrap>\n"; print " <TD><INPUT type=checkbox id=showstate name=showstate value=1 "; print "checked><label for=showstate>State</label></TD>\n"; print " <TD><INPUT type=checkbox id=showprocnumber name=showprocnumber "; print "value=1><label for=showprocnumber>No. Processors</label></TD>\n"; print " </TR>\n"; print " <TR nowrap>\n"; print " <TD><INPUT type=checkbox id=showcurrentimage name="; print "showcurrentimage value=1 checked><label for=showcurrentimage>"; print "Current Image</label></TD>\n"; print " <TD><INPUT type=checkbox id=showprocspeed name=showprocspeed "; print "value=1><label for=showprocspeed>Processor Speed</label></TD>\n"; print " </TR>\n"; print " <TR nowrap>\n"; print " <TD><INPUT type=checkbox id=showowner name=showowner value=1>"; print "<label for=showowner>Owner</label></TD>\n"; print " <TD><INPUT type=checkbox id=shownetwork name=shownetwork "; print "value=1><label for=shownetwork>Network Speed</label></TD>\n"; print " </TR>\n"; print " <TR nowrap>\n"; print " <TD><INPUT type=checkbox id=showplatform name=showplatform "; print "value=1 checked><label for=showplatform>Platform</label></TD>\n"; print " <TD><INPUT type=checkbox id=showcomputerid name=showcomputerid "; print "value=1><label for=showcomputerid>Computer ID</label></TD>\n"; print " </TR>\n"; print " <TR nowrap>\n"; print " <TD><INPUT type=checkbox id=showschedule name=showschedule "; print "value=1 checked><label for=showschedule>Schedule</label></TD>\n"; print " <TD><INPUT type=checkbox id=showtype name=showtype value=1>"; print "<label for=showtype>Type</label></TD>\n"; print " </TR>\n"; print " <TR nowrap>\n"; print " <TD><INPUT type=checkbox id=shownotes name=shownotes value=1>"; print "<label for=shownotes>Notes</label></TD>\n"; print " <TD><INPUT type=checkbox id=showcounts name=showcounts value=1>"; print "<label for=showcounts>No. Reservations</label></TD>\n"; print " </TR>\n"; print " <TR nowrap>\n"; print " <TD><INPUT type=checkbox id=showprovisioning "; print "name=showprovisioning value=1>"; print "<label for=showprovisioning>Provisioning Engine</label></TD>\n"; print " <TD></TD>\n"; print " </TR>\n"; print "</TABLE>\n"; } print "<INPUT type=submit value=Submit>\n"; print "</FORM>\n"; }