checkpoint
[plewww.git] / planetlab / sites / peers.php
1 <?php
2
3 // Require login
4 require_once 'plc_login.php';
5
6 // Get session and API handles
7 require_once 'plc_session.php';
8 global $plc, $api, $adm;
9
10 // Print header
11 require_once 'plc_drupal.php';
12 drupal_set_title('Sites Status');
13 include 'plc_header.php';
14
15 // Common functions
16 require_once 'plc_functions.php';
17 require_once 'plc_sorts.php';
18
19 // find person roles
20 $_person= $plc->person;
21 $_roles= $_person['role_ids'];
22  
23
24
25 $count1=0;
26 $count2=0;
27 $count3=0;
28 $j=0;
29 $site_nt_enabled = array();
30 $site_wno_nodes = array();
31 $sitemembers_nodes= array();
32 $nodes_ids=array();
33 $site_up=array();
34 function layout(&$param) {
35
36   $class='plc-foreign';
37   $messages=array();
38   $new_site=($param[$j]['abbreviated_name']);
39   $temp= $new_site;
40   $messages[]=$temp;
41   echo $new_site;
42   //unset ($param['time']);
43   $param[$j]['abbreviated_name']=plc_vertical_table($messages,$class);
44   $j++;
45
46 }
47
48
49 /////////Quantavis and Alcatel case
50 echo "<table ><tr><td><h2<span class='plc-foreign'> Quantavis   <span></td><td><span class='plc-warning'>Member to join:no membership requested</span></h2</td></tr></table>" ;  
51 echo "<table ><tr><td><h2><span class='plc-foreign'> Alcatel   <span></td><td><span class='plc-warning'>Member to join:no membership requested</span></h2></td></tr></table>" ;  
52
53 //get all local site with the filter peer_id=None
54 $filter=array("peer_id"=>NULL);
55 $columns=array("abbreviated_name","name");
56 $sites=$api->GetSites($filter,NULL);
57 //layout($sites);
58
59 if (empty($sites)){
60   echo "No PLE Nodes";
61   echo "<br /><p><a href='/db/nodes/index.php'>Back to Nodes List</a>";
62   //  return;
63  }
64
65
66
67 for($i=0; $i <= count($sites) ; $i++)
68   {
69     $temp= $sites[$i]["site_id"];
70     $filter=array("site_id"=>$temp);
71     $columns=array("boot_state","hostname","node_id");
72     $Nodes=$api->GetNodes($filter,$columns);
73
74     //array_push($sitemembers_nodes,$Nodes[$i]);
75     //for($i=0; $i < count($Nodes) ; $i++)      
76     //  {
77     //  echo $i;
78     //    array_push($sitemembers_nodes,$Nodes[$i]);
79     //    echo $Nodes[$i]['hostname'];
80     //  }
81     //
82     
83     if (empty($Nodes)){
84       if ($site_st= $sites[$i]["enabled"]==0){
85         $site_name= $sites[$i]["name"];
86         array_push($site_nt_enabled,$site_name);
87         $count1++;
88       }
89       
90       elseif ($sites[$i]["name"]=="PlanetLabEurope Central"){}///planetlab Central case
91       
92       else{
93         $site_name= $sites[$i]["name"];
94         array_push($site_wno_nodes,$site_name);
95         $count2++;
96       }
97     }
98   
99  else{
100    
101    
102    $site_name= $sites[$i]["name"];
103    array_push($sitemembers_nodes,$Nodes);
104    array_push($nodes_ids,$Nodes[$j]["node_id"]);
105    array_push($site_up,$site_name);
106    $count3++;
107    
108    //echo paginate($Nodes,"node_id", "----$site_name----", 5,"hostname","$site_name");
109  }
110 }
111
112 ///site not already enabled
113 for($i=0; $i != (($count1)-1); $i++)
114   {  $site_name=$site_nt_enabled[$i];
115     echo "<table ><tr><td><h2><span class='plc-foreign'> $site_name <span></td><td><span class='plc-warning'>Site with a join request pending</span></h2></td></tr></table>" ;  
116   }
117
118 //site with no nodes
119 for($i=0; $i < $count2; $i++)
120   {  $site_name=$site_wno_nodes[$i];
121     echo "<table ><tr><td><h2><span class='plc-foreign'> $site_name <span></td><td><span class='plc-warning'>Site has no nodes </span></h2></td></tr></table>" ;  
122     }
123
124 //////Site runing up
125 for($i=0; $i < $count3; $i++)
126   { $nodes=$sitemembers_nodes[$i];
127     $site_name=$site_up[$i];
128     echo " <table ><tr><td><h4><span class='plc-foreign'> $site_name <span></td></tr></h4></table>";
129     array_map(layout($site_up),$nodes);
130     echo paginate($nodes,"node_id", "Nodes", 5,"hostname","nodes","$nodes_ids[$i]");
131   }
132
133     
134 echo "<br /><p><a href='index.php'>Back to node list</a>";
135 //// Print footer
136 include 'plc_footer.php';
137 ?>