fix: inability to query local content via remote url

This commit is contained in:
Julian Lam
2024-05-07 10:58:39 -04:00
parent 9761526710
commit ac74d9c55e
2 changed files with 16 additions and 6 deletions

View File

@@ -75,7 +75,12 @@ async function searchInContent(data) {
} else {
let result;
if (data.uid && activitypub.helpers.isUri(data.query)) {
result = await fetchRemoteObject(data.uid, data.query);
const local = await activitypub.helpers.resolveLocalId(data.query);
if (local.type === 'post') {
result = [[local.id], []];
} else {
result = await fetchRemoteObject(data.uid, data.query);
}
}
if (result) {

View File

@@ -44,11 +44,16 @@ module.exports = function (User) {
if (!data.findUids && data.uid) {
const handle = activitypub.helpers.isWebfinger(data.query);
if (handle || activitypub.helpers.isUri(data.query)) {
const assertion = await activitypub.actors.assert([handle || data.query]);
if (assertion === true) {
uids = [handle ? await User.getUidByUserslug(handle) : query];
} else if (Array.isArray(assertion) && assertion.length) {
uids = assertion.map(u => u.id);
const local = await activitypub.helpers.resolveLocalId(data.query);
if (local.type === 'user') {
uids = [local.id];
} else {
const assertion = await activitypub.actors.assert([handle || data.query]);
if (assertion === true) {
uids = [handle ? await User.getUidByUserslug(handle) : query];
} else if (Array.isArray(assertion) && assertion.length) {
uids = assertion.map(u => u.id);
}
}
}
}