class GravatarPlugin extends Plugin
{
- function onEndProfileGetAvatar($profile, $size, &$avatar)
+ function onEndProfileGetAvatar(Profile $profile, $size, &$avatar)
{
- if (empty($avatar) ||
- (!empty($avatar->filename) && !file_exists(Avatar::path($avatar->filename)))) {
- $user = $profile->getUser();
- if (!empty($user) && !empty($user->email)) {
- // Fake one!
- $avatar = new Avatar();
- $avatar->width = $avatar->height = $size;
- $avatar->url = $this->gravatar_url($user->email, $size);
- return false;
+ if (empty($avatar)) {
+ try {
+ $user = $profile->getUser();
+ if (!empty($user->email)) {
+ // Fake one!
+ $avatar = new Avatar();
+ $avatar->width = $avatar->height = $size;
+ $avatar->url = $this->gravatar_url($user->email, $size);
+ return false;
+ }
+ } catch (NoSuchUserException $e) {
+ return true;
}
}
function gravatar_url($email, $size)
{
- $url = "https://secure.gravatar.com/avatar.php?gravatar_id=".
- md5(strtolower($email)).
- "&default=".urlencode(Avatar::defaultImage($size)).
- "&size=".$size;
+ $url = 'https://secure.gravatar.com/avatar.php?gravatar_id=' .
+ md5(strtolower($email)) .
+ '&default=' . urlencode(Avatar::defaultImage($size)) .
+ '&size=' . $size;
return $url;
}
- function onPluginVersion(&$versions)
+ function onPluginVersion(array &$versions)
{
$versions[] = array('name' => 'Gravatar',
- 'version' => STATUSNET_VERSION,
+ 'version' => GNUSOCIAL_VERSION,
'author' => 'Eric Helgeson, Evan Prodromou',
'homepage' => 'http://status.net/wiki/Plugin:Gravatar',
'rawdescription' =>