public function parse(&$userdata)
{
// Use the parent parse
$ret =& parent::parse($userdata);
// Pick a case for the id attribute
if (!empty($ret['ID'])) {
$ret['id'] = $ret['ID'];
unset($ret['ID']);
}
// get the html to display the users avatar
$ret['avatar'] = get_avatar($ret['id']);
// Get user capabilities for each blog in the network
global $wpdb;
$blogs = $wpdb->get_col("select blog_id from {$wpdb->blogs}");
$ret['capabilities'] = array();
foreach ($blogs as $k => $v) {
if ($k == 0) {
$_caps = get_user_meta($ret['id'], 'wp_capabilities', true);
if (!empty($_caps)) {
$ret['capabilities'][$v] = array_shift(array_keys((array) maybe_unserialize($_caps)));
}
} else {
$_caps = get_user_meta($ret['id'], 'wp_' . $v . '_capabilities', true);
if (!empty($_caps)) {
$ret['capabilities'][$v] = array_shift(array_keys((array) maybe_unserialize($_caps)));
}
}
}
return $ret;
}