Fix granted bases order

This commit is contained in:
Romain Neutron
2012-01-19 12:24:09 +01:00
parent c7abf22256
commit 8b15f3b732

View File

@@ -621,14 +621,23 @@ class ACL implements cache_cacheableInterface
$this->load_rights_bas();
$ret = array();
foreach ($this->_rights_bas as $base_id => $datas)
foreach($this->appbox->get_databoxes() as $databox)
{
$continue = false;
if ($sbas_ids && !in_array(phrasea::sbasFromBas($base_id), $sbas_ids))
if ($sbas_ids && !in_array($databox->get_sbas_id(), $sbas_ids))
{
continue;
}
foreach ($databox->get_collections() as $collection)
{
$continue = false;
if(!array_key_exists($collection->get_base_id(), $this->_rights_bas))
continue;
$base_id = $collection->get_base_id();
$datas = $this->_rights_bas[$base_id];
foreach ($rights as $right)
{
if (!$this->has_right_on_base($base_id, $right))
@@ -649,6 +658,7 @@ class ACL implements cache_cacheableInterface
}
}
}
return $ret;
}