several fixes
authorBarış Metin <Talip-Baris.Metin@sophia.inria.fr>
Mon, 15 Jun 2009 13:20:36 +0000 (13:20 +0000)
committerBarış Metin <Talip-Baris.Metin@sophia.inria.fr>
Mon, 15 Jun 2009 13:20:36 +0000 (13:20 +0000)
- linetabs: show current page
- make menu items and linetabs consistent on all pages
- fix slices.php&person_id

modules/planetlab.module
planetlab/includes/plc_functions.php
planetlab/nodes/nodes.php
planetlab/sites/site.php
planetlab/sites/sites.php
planetlab/slices/slices.php

index 080e8b9..c62a00f 100644 (file)
@@ -77,9 +77,9 @@ function plc_my_site_links() {
 function plc_my_node_links () {
   $html = '';
   if (count (plc_my_site_ids()) == 1) {
-    $html .= leaf( href (l_nodes_site (plc_my_site_id()),"My Site Nodes"));
+    $html .= leaf( href (l_nodes_my_site() ,"My Site Nodes"));
   } else {
-    $html .= leaf( href (l_nodes_person (plc_my_person_id()),"All My Sites Nodes"));
+    $html .= leaf( href (l_nodes_all_my_site(),"All My Sites Nodes"));
   }
   return $html;
 }
@@ -196,7 +196,7 @@ function planetlab_block($op = 'list', $delta = 0, $edit = array()) {
       }
       $bullet_item .= ul_start();
       if (plc_is_admin()) 
-       $bullet_item .= leaf ( href(l_slices_site(plc_my_site_id()), 'My Site Slices'));
+       $bullet_item .= leaf ( href(l_slices_my_site(), 'My Site Slices'));
       if( plc_is_admin() || plc_is_pi() ) {
        $bullet_item .= leaf(href(l_slice_add(),"Create Slice"));
       }
index aa6cbd5..b807342 100644 (file)
@@ -77,6 +77,8 @@ function l_node_t ($node_id,$text)    { return href (l_node($node_id),$text); }
 function l_node_obj($node)             { return href(l_node($node['node_id']),$node['hostname']); }
 function l_node_add ()                 { return "/db/nodes/node_add.php"; }
 function l_nodes_site ($site_id)       { return "/db/nodes/index.php?site_id=$site_id"; }
+function l_nodes_my_site ()             { return l_nodes_site(plc_my_site_id()) . "&active_line_tab=My site nodes"; }
+function l_nodes_all_my_site ()         { return l_nodes_person(plc_my_person_id()) . "&active_line_tab=All My site nodes"; }
 function l_nodes_person ($person_id)   { return "/db/nodes/index.php?person_id=$person_id"; }
 function l_nodes_slice ($slice_id)     { return "/db/nodes/index.php?slice_id=$slice_id"; }
 
@@ -98,6 +100,8 @@ function l_slice ($slice_id)         { return "/db/slices/index.php?id=$slice_id"; }
 function l_slice_t ($slice_id,$text)   { return href (l_slice($slice_id),$text); }
 function l_slice_add ()                        { return "/db/slices/slice_add.php"; }
 function l_slices_site($site_id)       { return "/db/slices/index.php?site_id=$site_id"; }
+function l_slices_my_site()            { return l_slices_site(plc_my_site_id()) . "&active_line_tab=My site slices"; }
+function l_slices_person($person_id)    { return "/db/slices/index.php?person_id=$person_id"; }
 function l_slices_local()              { return "/db/slices/index.php?peerscope=local"; }
 // from an object
 function l_slice_obj ($slice)          { return l_slice_t ($slice['slice_id'],$slice['name']); }
@@ -155,8 +159,10 @@ function tab_nodes_site($site_id){ return array ('label'=>'Site nodes', 'url'=>l
                                                 'bubble'=>'Display nodes on that site'); }
 function tab_nodes_slice($slice_id){ return array ('label'=>'Slice nodes', 'url'=>l_nodes_slice($slice_id), 
                                                 'bubble'=>'Display nodes for that slice'); }
-function tab_nodes_mysite ()   { return array ('label'=>'My nodes', 'url'=>l_nodes_site(plc_my_site_id()), 
+function tab_nodes_mysite ()   { return array ('label'=>'My site nodes', 'url'=>l_nodes_my_site(), 
                                                'bubble'=>'Display nodes on my site'); }
+function tab_nodes_all_mysite (){ return array ('label'=>'All My site nodes', 'url'=>l_nodes_all_my_site(),
+                                               'bubble'=>'Display nodes on all my sites'); }
 function tab_node($node)       { return array ('label'=>'Node '.$node['hostname'], 'url'=>l_node($node['node_id']),
                                                'bubble'=>'Details for ' . $node['hostname']); }
 //////////
@@ -170,9 +176,9 @@ function tab_sites_local () { return array ('label'=>'Local sites' , 'url'=>l_si
 //////////
 function tab_slices()          { return array ('label'=>'All slices', 'url'=>l_slices(),
                                                'bubble' => 'Display all slices'); }
-function tab_slices_mysite ()  { return array ('label'=>'My site slices', 'url'=>l_slices_site(plc_my_site_id()), 
-                                               'bubble'=>'Display all slices on my site'); }
-function tab_slices_mine ()    { return array ('label'=>'My site slices', 'url'=>l_slices_site(plc_my_site_id()), 
+function tab_slices_person()   { return array ('label'=>'My slices', 'url'=>l_slices_person(plc_my_person_id()),
+                                               'bubble' => 'Display my all slices'); }
+function tab_slices_mysite ()  { return array ('label'=>'My site slices', 'url'=>l_slices_my_site(), 
                                                'bubble'=>'Display all slices on my site'); }
 function tab_slices_local ()   { return array ('label'=>'Local slices', 'url'=>l_slices_local(), 
                                                'bubble'=>'Display all slices local to this peer'); }
index a6528d1..275c00f 100644 (file)
@@ -33,7 +33,12 @@ $person_id=intval($_GET['person_id']);
 // --- decoration
 $title="Nodes";
 $tabs=array();
-$tabs []= tab_nodes_mysite();
+$tabs []= tab_nodes();
+if (count (plc_my_site_ids()) == 1) {
+    $tabs []= tab_nodes_mysite();
+} else {
+    $tabs []= tab_nodes_all_mysite();
+}
 $tabs []= tab_nodes_local();
 
 // -------------------- 
index d026a03..d9c5cdb 100644 (file)
@@ -112,6 +112,8 @@ drupal_set_title("Details for site " . $sitename);
   
 $tabs=array();
 
+$tabs []= tab_mysite();
+
 // available actions
 if ( $is_site_admin)
   $tabs['Expire slices'] = array('url'=>l_actions(),
index dfabe5c..9f2c29e 100644 (file)
@@ -28,8 +28,9 @@ $pattern=$_GET['pattern'];
 // --- decoration
 $title="Sites";
 $tabs=array();
-$tabs []= tab_mysite();
+$tabs []= tab_sites();
 $tabs []= tab_sites_local();
+$tabs []= tab_mysite();
 
 // -------------------- 
 $site_filter=array();
index 92210e4..bc5ecbb 100644 (file)
@@ -35,6 +35,13 @@ $person_id=intval($_GET['person_id']);
 // --- decoration
 $title="Slices";
 $tabs=array();
+
+if (plc_is_admin()) {
+    $tabs []= tab_slices();
+}
+if (plc_is_user()) {
+    $tabs []= tab_slices_person();
+}
 $tabs []= tab_slices_mysite();
 if (plc_is_admin()) $tabs []= tab_slices_local();
 
@@ -69,12 +76,13 @@ if ($site_id) {
 }
 
 if ($person_id) {
-  $persons=$api->GetPersons(array('person_id'=>$person_id,array('email','person_id','slice_ids')));
-  $person=$persons[0];
-  $title .= t_person($person);
-  $tabs .= tab_person($person);
-  $slice_filter['slice_id']=$person['slice_ids'];
- }
+    // fetch the person's slice_ids
+    $persons = $api->GetPersons(array('person_id'=>$person_id),array('person_id','email','slice_ids'));
+    $person=$persons[0];
+    $slice_ids['slice_id']=$person['slice_ids'];
+    $title .= t_person($person);
+    $slice_filter['slice_id']=$person['slice_ids'];
+}
 
 // go
 $slices=$api->GetSlices($slice_filter,$slice_columns);