instance_show.php 1.81 KB
Newer Older
1 2 3 4 5 6 7
<?php
#
# EMULAB-COPYRIGHT
# Copyright (c) 2006 University of Utah and the Flux Group.
# All rights reserved.
#
include("defs.php3");
8
include_once("template_defs.php");
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47

#
# Only known and logged in users ...
#
$uid = GETLOGIN();
LOGGEDINORDIE($uid);
$isadmin = ISADMIN($uid);

#
# Verify page arguments.
# 
if (!isset($exptidx) ||
    strcmp($exptidx, "") == 0) {
    USERERROR("You must provide an instance ID", 1);
}
if (!isset($guid) ||
    strcmp($guid, "") == 0) {
    USERERROR("You must provide a template ID", 1);
}
if (!isset($version) ||
    strcmp($version, "") == 0) {
    USERERROR("You must provide a template version number", 1);
}
if (!TBvalid_guid($guid)) {
    PAGEARGERROR("Invalid characters in GUID!");
}
if (!TBvalid_integer($version)) {
    PAGEARGERROR("Invalid characters in version!");
}
if (!TBvalid_integer($exptidx)) {
    PAGEARGERROR("Invalid characters in instance ID!");
}

#
# Standard Testbed Header after argument checking.
#
PAGEHEADER("Template Instance");

#
48
# Check to make sure this is a valid template and user has permission.
49
#
50 51
$template = Template::Lookup($guid, $version);
if (!$template) {
52 53 54
    USERERROR("The experiment template $guid/$version is not a valid ".
              "experiment template!", 1);
}
55
if (! $template->AccessCheck($uid, $TB_EXPT_READINFO)) {
56 57 58
    USERERROR("You do not have permission to view experiment template ".
	      "$guid/$version!", 1);
}
59 60 61 62 63
$instance = TemplateInstance::LookupByExptidx($exptidx);
if (!$instance) {
    USERERROR("The instance $exptidx is not a valid instance in ".
              "template $guid/$version!", 1);
}
64 65 66 67 68 69 70

echo "<font size=+2>Template Instance <b>" .
         MakeLink("template",
		  "guid=$guid&version=$version", "$guid/$version") . 
      "</b></font>\n";
echo "<br><br>\n";

71
$instance->Show(1);
72 73 74 75 76 77

#
# Standard Testbed Footer
# 
PAGEFOOTER();
?>