showpolicies.php3 3.57 KB
Newer Older
1 2 3
<?php
#
# EMULAB-COPYRIGHT
4
# Copyright (c) 2005, 2006 University of Utah and the Flux Group.
5 6 7 8 9 10 11 12
# All rights reserved.
#
include("defs.php3");

#
#
# Only known and logged in users allowed.
#
13 14 15
$this_user = CheckLoginOrDie();
$uid       = $this_user->uid();
$isadmin   = ISADMIN();
16

17 18 19 20 21
#
# Standard Testbed Header
#
PAGEHEADER("Experiment Admission Control Policies");

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 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
#
# Only admin people can see this page.
# 
if (!$isadmin && !STUDLY()) {
    USERERROR("You are not allowed to view this page!", 1);
}

#
# Global policies.
#
$query_result = DBQueryFatal("select * from global_policies ".
			     "order by policy,test");

if (mysql_num_rows($query_result)) {
    echo "<br>
          <center><h3>Global Policies</h3></center>
          <table border=2 cellpadding=0 cellspacing=2 align='center'>\n";
    
    echo "<tr>
              <th>Policy</th>
              <th>Test</th>
              <th>Count</th>
              <th>Aux Data</th>
          </tr>\n";
    
    while ($row = mysql_fetch_array($query_result)) {
        $policy  = $row["policy"];
        $test    = $row["test"];
        $count   = $row["count"];
        $auxdata = $row["auxdata"];
    
	if (!$auxdata)
	    $auxdata = "&nbsp";
    
        echo "<tr>
                  <td>$test</td>
                  <td>$policy</td>
                  <td>$count</td>
                  <td>$auxdata</td>\n";
        echo "</tr>\n";
    }
    echo "</table>\n";
}

#
# Group policies.
#
$query_result = DBQueryFatal("select * from group_policies ".
			     "order by pid,gid,policy");

if (mysql_num_rows($query_result)) {
    echo "<br>
          <center><h3>Group Policies</h3></center>
          <table border=2 cellpadding=0 cellspacing=2 align='center'>\n";
    
    echo "<tr>
              <th>Pid</th>
              <th>Gid</th>
              <th>Policy</th>
              <th>Count</th>
              <th>Aux Data</th>
          </tr>\n";
    
    while ($row = mysql_fetch_array($query_result)) {
        $pid     = $row["pid"];
        $gid     = $row["gid"];
        $policy  = $row["policy"];
        $count   = $row["count"];
        $auxdata = $row["auxdata"];
    
	if (!$auxdata)
	    $auxdata = "&nbsp";
    
        echo "<tr>
                  <td><a href='showproject.php3?pid=$pid'>$pid</a></td>
                  <td><a href='showgroup.php3?pid=$pid&gid=$gid'>$gid</a></td>
                  <td>$policy</td>
                  <td>$count</td>
                  <td>$auxdata</td>\n";
        echo "</tr>\n";
    }
    echo "</table>\n";
}

#
# User policies.
#
$query_result = DBQueryFatal("select * from user_policies ".
			     "order by uid,policy");

if (mysql_num_rows($query_result)) {
    echo "<br>
          <center><h3>User Policies</h3></center>
          <table border=2 cellpadding=0 cellspacing=2 align='center'>\n";
    
    echo "<tr>
              <th>Uid</th>
              <th>Policy</th>
              <th>Count</th>
              <th>Aux Data</th>
          </tr>\n";
    
    while ($row = mysql_fetch_array($query_result)) {
        $puid    = $row["uid"];
        $policy  = $row["policy"];
        $count   = $row["count"];
        $auxdata = $row["auxdata"];

130 131 132 133 134
	if (! ($user = User::Lookup($puid))) {
	    TBERROR("Could not lookup object for user $puid", 1);
	}
	$showuser_url = CreateURL("showuser", $user);
	
135 136 137 138
	if (!$auxdata)
	    $auxdata = "&nbsp";
    
        echo "<tr>
139
                  <td><A href='$showuser_url'>$puid</a></td>
140 141 142 143 144 145 146 147 148 149 150 151 152
                  <td>$policy</td>
                  <td>$count</td>
                  <td>$auxdata</td>\n";
        echo "</tr>\n";
    }
    echo "</table>\n";
}

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