summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--classes/Profile.php22
-rw-r--r--plugins/OStatus/OStatusPlugin.php10
2 files changed, 18 insertions, 14 deletions
diff --git a/classes/Profile.php b/classes/Profile.php
index 6b396c8c3..5ff746e30 100644
--- a/classes/Profile.php
+++ b/classes/Profile.php
@@ -841,28 +841,22 @@ class Profile extends Memcached_DataObject
{
$uri = null;
- // check for a local user first
- $user = User::staticGet('id', $this->id);
+ // give plugins a chance to set the URI
+ if (Event::handle('StartGetProfileUri', array($this, &$uri))) {
- if (!empty($user)) {
- $uri = common_local_url(
- 'userbyid',
- array('id' => $user->id)
- );
- } else {
-
- // give plugins a chance to set the URI
- if (Event::handle('StartGetProfileUri', array($this, &$uri))) {
+ // check for a local user first
+ $user = User::staticGet('id', $this->id);
+ if (!empty($user)) {
+ $uri = $user->uri;
+ } else {
// return OMB profile if any
$remote = Remote_profile::staticGet('id', $this->id);
-
if (!empty($remote)) {
$uri = $remote->uri;
}
-
- Event::handle('EndGetProfileUri', array($this, &$uri));
}
+ Event::handle('EndGetProfileUri', array($this, &$uri));
}
return $uri;
diff --git a/plugins/OStatus/OStatusPlugin.php b/plugins/OStatus/OStatusPlugin.php
index 5b9e3be2b..548c87711 100644
--- a/plugins/OStatus/OStatusPlugin.php
+++ b/plugins/OStatus/OStatusPlugin.php
@@ -485,4 +485,14 @@ class OStatusPlugin extends Plugin
return true;
}
+
+ function onStartGetProfileUri($profile, &$uri)
+ {
+ $oprofile = Ostatus_profile::staticGet('profile_id', $profile->id);
+ if (!empty($oprofile)) {
+ $uri = $oprofile->uri;
+ return false;
+ }
+ return true;
+ }
}