We are no longer offering accounts on this server. Consider https://gitlab.freedesktop.org/ as a place to host projects.

Commit c3c5a997 authored by mattl's avatar mattl

Do proper fromUri lookup on groups too

parent 55aa68b9
......@@ -974,8 +974,6 @@ class Notice extends Managed_DataObject
// reasonably handle notifications themselves.
if (ActivityUtils::compareVerbs($stored->verb, array(ActivityVerb::POST))) {
$stored->saveAttentions($act->context->attention);
if (!empty($tags)) {
$stored->saveKnownTags($tags);
} else {
......@@ -984,7 +982,7 @@ class Notice extends Managed_DataObject
// Note: groups may save tags, so must be run after tags are saved
// to avoid errors on duplicates.
// Note: groups should always be set.
$stored->saveAttentions($act->context->attention);
if (!empty($urls)) {
$stored->saveKnownUrls($urls);
......
......@@ -1555,6 +1555,11 @@ class Profile extends Managed_DataObject
$user = User::getKV('uri', $uri);
if ($user instanceof User) {
$profile = $user->getProfile();
} else {
$group = User_group::getKV('uri', $uri);
if ($group instanceof User_group) {
$profile = $group->getProfile();
}
}
Event::handle('EndGetProfileFromURI', array($uri, $profile));
}
......
......@@ -1265,17 +1265,23 @@ class OStatusPlugin extends Plugin
function onStartGetProfileFromURI($uri, &$profile)
{
// Don't want to do Web-based discovery on our own server,
// so we check locally first.
// so we check locally first. This duplicates the functionality
// in the Profile class, since the plugin always runs before
// that local lookup, but since we return false it won't run double.
$user = User::getKV('uri', $uri);
if (!empty($user)) {
if ($user instanceof User) {
$profile = $user->getProfile();
return false;
} else {
$group = User_group::getKV('uri', $uri);
if ($group instanceof User_group) {
$profile = $group->getProfile();
return false;
}
}
// Now, check remotely
try {
$oprofile = Ostatus_profile::ensureProfileURI($uri);
$profile = $oprofile->localProfile();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment