public function listShares($userid, array $params = array())
{
$params = array_merge(array('perm' => Horde_Perms::SHOW, 'attributes' => null, 'from' => 0, 'count' => 0, 'sort_by' => null, 'direction' => 0), $params);
$shares = $this->_listShares($userid, $params);
if (!count($shares)) {
return $shares;
}
$shares = $this->getShares($shares);
if (is_null($params['sort_by'])) {
$this->_sortList = $shares;
uasort($shares, array($this, '_sortShares'));
$this->_sortList = null;
}
// Run the results through the callback, if configured.
if (!empty($this->_callbacks['list'])) {
return $this->runCallback('list', array($userid, $shares, $params));
}
return $shares;
}