X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=modules%2Fplanetlab.module;fp=modules%2Fplanetlab.module;h=2f4ebd371b9092da5257c0eab39e7e98ea47f7b3;hb=f37eb546ac605b9c42c080b32cf8d4ebfcd177cb;hp=9eae1d369adc27521d8fc98e064e370e87f28424;hpb=8c719794fe6bb6f32d7fe1ebef6906df8e4aea80;p=plewww.git diff --git a/modules/planetlab.module b/modules/planetlab.module index 9eae1d3..2f4ebd3 100644 --- a/modules/planetlab.module +++ b/modules/planetlab.module @@ -108,74 +108,68 @@ function planetlab_block($op = 'list', $delta = 0, $edit = array()) { $block['content'] .= p( href(l_site_register(),"File a site registration") ); } else { $block['subject'] = truncate($plc->person['email'],30); + $is_admin = in_array(10,$plc->person['role_ids']); + $is_pi = in_array(20,$plc->person['role_ids']); + $is_user = in_array(30,$plc->person['role_ids']); + $is_tech = in_array(40,$plc->person['role_ids']); - //////////////////// Logout - $bullet_item = ''; + //////////////////// Logout if ($user->uid) { // Drupal logout (destroys the session and cleans up $user) // Thierry unclear when this triggers, I suspect this is obsolete - $bullet_item .= l(t('Logout of %s', - array('%s' => variable_get('site_name', 'local'))), 'logout'); + $items[] = leaf (l(t('Logout of %s', + array('%s' => variable_get('site_name', 'local'))), 'logout')); } else { // PlanetLab logout (just destroy the session) - $bullet_item .= href (l_logout(),'Logout'); + $items[] = leaf ( href (l_logout(),'Logout')); } - $bullet_item .= ul_start(); - // logout + + //////////////////// Sites + $site_item = ''; + $site_item .= href(l_sites(),"Sites"); + $site_item .= ul_start(); + #$site_item .= leaf( href(l_site(plc_my_site_id()),"My Site")); + $site_item .= plc_my_site_links(); # leaf( href(l_site(plc_my_site_id()),"My Site")); + if ( $is_admin ) + $site_item .= leaf( href(l_sites_pending(),"Pending Requests")); + $site_item .= ul_end(); + $items[] = expanded($site_item); + + //////////////////// Users + $user_item = ''; + $user_item .= href(l_persons(),'Users'); + $user_item .= ul_start(); + $user_item .= leaf( l_person_t(plc_my_person_id(),"My Account")); + if (is_pi) + $user_item .= leaf( href( l_persons_site(plc_my_site_id()), "My Users")); if ( $plc->alt_person && $plc->alt_auth) { $email = truncate($plc->person['email'],20); - $bullet_item .= leaf( href( l_sulogout(),"Un-become $email")); + $user_item .= leaf( href( l_sulogout(),"Logout of $email")); } - $bullet_item .= ul_end(); - $items []= expanded ($bullet_item); - - //////////////////// accounts - $bullet_item = ''; - $bullet_item .= l_person_t(plc_my_person_id(),"My Account"); - $bullet_item .= ul_start(); - if (plc_is_admin() || plc_is_pi()) - $bullet_item .= leaf( href( l_persons_site(plc_my_site_id()), "My Users")); - if (plc_is_admin()) { - $bullet_item .= leaf(href(l_persons_peer('local'),'Local users (looong)')); - $bullet_item .= leaf(href(l_persons(),'All users (looong)')); - } - - $bullet_item .= ul_end(); - $items [] = expanded($bullet_item); - - //////////////////// Sites - $bullet_item = ''; - $bullet_item .= href(l_sites(),"Sites"); - $bullet_item .= ul_start(); - $bullet_item .= leaf( href(l_site(plc_my_site_id()),"My Site")); - if ( plc_is_admin() ) - $bullet_item .= leaf( href(l_sites_pending(),"Pending Requests")); - $bullet_item .= ul_end(); - $items[] = expanded($bullet_item); + $user_item .= ul_end(); + $items [] = expanded($user_item); //////////////////// Nodes - $bullet_item = ''; - $bullet_item .= href(l_nodes(),"Nodes"); - $bullet_item .= ul_start(); - $bullet_item .= leaf( href (l_nodes_site (plc_my_site_id()),"My Site Nodes")); - $bullet_item .= leaf( href (l_register_node(),"Register Node")); - $bullet_item .= ul_end(); - $items [] = expanded($bullet_item); + $node_item = ''; + $node_item .= href(l_nodes(),"Nodes"); + $node_item .= ul_start(); + $node_item .= leaf( href (l_nodes_site (plc_my_site_id()),"My Site Nodes")); + $node_item .= leaf( href (l_node_add(),"Add Node")); + $node_item .= ul_end(); + $items [] = expanded($node_item); //////////////////// Slices - $bullet_item = ''; - //if( !( plc_is_tech() && ! plc_is_user() && ! plc_is_pi() && ! plc_is_admin() ) ) - $bullet_item .= href(l_slices(),"Slices"); - $bullet_item .= ul_start(); - if (plc_is_admin()) - $bullet_item .= leaf ( href(l_slices_site(plc_my_site_id()), 'My Site Slices')); - if( plc_is_admin() || plc_is_pi() ) { - $bullet_item .= leaf(href(l_slice_add(),"Create Slice")); + $slice_item = ''; + //if( !( $is_tech && ! $is_user && ! $is_pi && ! $is_admin ) ) + $slice_item .= href(l_slices(),"Slices"); + $slice_item .= ul_start(); + if( $is_admin || $is_pi ) { + $slice_item .= leaf(href(l_slice_add(),"Create Slice")); } - if( !( plc_is_tech() && ! plc_is_user() && ! plc_is_pi() && ! plc_is_admin() ) ) - $bullet_item .= leaf(href(l_sirius(),"Sirius")); - $bullet_item .= ul_end(); - $items [] = expanded($bullet_item); + if( !( $is_tech && ! $is_user && ! $is_pi && ! $is_admin ) ) + $slice_item .= leaf(href(l_sirius(),"Sirius")); + $slice_item .= ul_end(); + $items [] = expanded($slice_item); //////////////////// Admin if( plc_is_admin() || plc_is_pi() ) { @@ -192,13 +186,13 @@ function planetlab_block($op = 'list', $delta = 0, $edit = array()) { $items [] = expanded($bullet_item); } - $bullet_item = ''; - $bullet_item .= href(l_about(),'About MyPLC'); - $bullet_item .= ul_start(); - $bullet_item .= leaf ( href (l_doc_plcapi(),"PLCAPI doc")); - $bullet_item .= leaf ( href (l_doc_nmapi(),"NMAPI doc")); - $bullet_item .= ul_end(); - $items[] = expanded($bullet_item); + $doc_item = ''; + $doc_item .= href(l_about(),'About MyPLC'); + $doc_item .= ul_start(); + $doc_item .= leaf ( href (l_doc_plcapi(),"PLCAPI doc")); + $doc_item .= leaf ( href (l_doc_nmapi(),"NMAPI doc")); + $doc_item .= ul_end(); + $items[] = expanded($doc_item); //$block['content'] = theme('list_item', $items); $block['content'] = menu_theme($items);