Merge pull request #1730 from rinsuki/fix/1729

Fix #1729
This commit is contained in:
syuilo 2018-06-17 16:51:24 +09:00 committed by GitHub
commit f1f466ed23
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 17 additions and 9 deletions

View file

@ -1,9 +1,8 @@
export default (mention: {
uri: string;
username: string;
host: string;
}) => ({
import { IUser, isRemoteUser } from "../../../models/user";
import config from "../../../config";
export default (mention: IUser) => ({
type: 'Mention',
href: mention.uri,
name: `@${mention.username}@${mention.host}`
href: isRemoteUser(mention) ? mention.uri : `${config.url}/@${mention.username}`,
name: isRemoteUser(mention) ? `@${mention.username}@${mention.host}` : `@${mention.username}`,
});

View file

@ -54,9 +54,18 @@ export default async function renderNote(note: INote, dive = true) {
? [`${attributedTo}/followers`].concat(mentions)
: [];
const mentionUsers = await User.find({
_id: {
$in: note.mentions
}
});
const hashtagTags = (note.tags || []).map(renderHashtag);
const mentionTags = (note.mentionedRemoteUsers || []).map(renderMention);
const tag = hashtagTags.concat(mentionTags);
const mentionTags = mentionUsers.map(renderMention);
const tag = [
...hashtagTags,
...mentionTags,
];
return {
id: `${config.url}/notes/${note._id}`,