From 1d5a54ff6f74569fa89c4083301d9b01eb80ad29 Mon Sep 17 00:00:00 2001 From: syuilo Date: Sun, 17 Feb 2019 23:41:47 +0900 Subject: ハッシュタグでユーザー検索できるように (#4298) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * ハッシュタグでユーザー検索できるように * :art: * Increase limit * リモートユーザーも表示 * Fix bug * Fix bug * Improve performance --- src/remote/activitypub/models/person.ts | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/remote') diff --git a/src/remote/activitypub/models/person.ts b/src/remote/activitypub/models/person.ts index c90df16906..9a38bbf144 100644 --- a/src/remote/activitypub/models/person.ts +++ b/src/remote/activitypub/models/person.ts @@ -23,6 +23,7 @@ import Following from '../../../models/following'; import { IIdentifier } from './identifier'; import { apLogger } from '../logger'; import { INote } from '../../../models/note'; +import { updateHashtag } from '../../../services/update-hashtag'; const logger = apLogger; /** @@ -210,6 +211,10 @@ export async function createPerson(uri: string, resolver?: Resolver): Promise !tags.includes(x))) updateHashtag(user, tag, true, false); + //#region アイコンとヘッダー画像をフェッチ const [avatar, banner] = (await Promise.all([ person.icon, @@ -383,6 +388,10 @@ export async function updatePerson(uri: string, resolver?: Resolver, hint?: obje $set: updates }); + // ハッシュタグ更新 + for (const tag of tags) updateHashtag(exist, tag, true, true); + for (const tag of (exist.tags || []).filter(x => !tags.includes(x))) updateHashtag(exist, tag, true, false); + // 該当ユーザーが既にフォロワーになっていた場合はFollowingもアップデートする await Following.update({ followerId: exist._id -- cgit v1.2.3-freya