X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=planetlab%2Fpersons%2Fpersons.php;h=ef04dcda5e85b17145bf6a51a080074e4807473b;hb=2acd8f63883ad55c2c3c204d3b11db86da3417d2;hp=d4fcdfc7f1f946cf9e9767dd76c7a03e8c063008;hpb=3a97808edfd8a17aae7e7483656211906b02cd1f;p=plewww.git diff --git a/planetlab/persons/persons.php b/planetlab/persons/persons.php index d4fcdfc..ef04dcd 100644 --- a/planetlab/persons/persons.php +++ b/planetlab/persons/persons.php @@ -20,9 +20,6 @@ require_once 'linetabs.php'; require_once 'table.php'; require_once 'nifty.php'; -//fix the memory limit for this page -ini_set("memory_limit","64M"); - // -------------------- // recognized URL arguments $peerscope=$_GET['peerscope']; @@ -55,8 +52,12 @@ function person_status ($person) { // check that the person has keys if ( count($person['key_ids']) == 0) $messages [] = "No Key"; + if ( count($person['site_ids']) == 0) + $messages [] = "No Site"; if ( ! $person['enabled'] ) $messages[] = "Disabled"; + if ( count ($person['roles']) == 0) + $messages []= "No role!"; // for tech-only people: outline user if in a slice if ( ( count($person['roles'])==1 ) && ( in_array('tech',$person['roles']) ) ) { @@ -110,11 +111,13 @@ if ($slice_id) { // go $persons=$api->GetPersons($person_filter,$person_columns); -// build site_ids +// build site_ids - take all site_ids into account $site_ids=array(); -if ($persons) foreach ($persons as $person) - if ($person['site_ids'][0]) - $site_ids []= $person['site_ids'][0]; +if ($persons) foreach ($persons as $person) { + if ($person['site_ids']) foreach ($person['site_ids'] as $person_site_id) { + $site_ids []= $person_site_id; + } + } // fetch related sites $site_columns=array('site_id','login_base'); @@ -145,7 +148,7 @@ $headers["Peer"]="string"; $headers["First"]="string"; $headers["Last"]="string"; $headers["Email"]="string"; -$headers["Site" ]= "string"; +$headers["Site(s)" ]= "string"; $headers["R"]="string"; $headers["S" ]= "int"; $headers["Status"]="string"; @@ -164,9 +167,7 @@ $peers=new Peers ($api); foreach ($persons as $person) { $person_id=$person['person_id']; $email=$person['email']; - $site_id=$person['site_ids'][0]; - $site=$site_hash[$site_id]; - $login_base = $site['login_base']; + $site_ids = $person['site_ids']; $roles = plc_vertical_table ($person['roles']); $peer_id=$person['peer_id']; @@ -177,7 +178,13 @@ foreach ($persons as $person) { $table->cell (href(l_person($person_id),$person['first_name'])); $table->cell (href(l_person($person_id),$person['last_name'])); $table->cell(l_person_t($person_id,$email)); - $table->cell(l_site_t($site_id,$login_base),array('only-if'=>!$peer_id)); + $site_links = array(); + foreach ($site_ids as $site_id) { + $site=$site_hash[$site_id]; + $login_base = $site['login_base']; + $site_links []= l_site_t($site_id,$login_base); + } + $table->cell(plc_vertical_table($site_links),array('only-if'=>!$peer_id)); $table->cell($roles,array('only-if'=>!$peer_id)); $table->cell(count($person['slice_ids'])); $table->cell(person_status($person));