summaryrefslogtreecommitdiff
path: root/src/remote/activitypub/models
diff options
context:
space:
mode:
authorMeiMei <30769358+mei23@users.noreply.github.com>2020-02-08 21:40:06 +0900
committerGitHub <noreply@github.com>2020-02-08 21:40:06 +0900
commitaa573c00631181c2e974ef8b3c061678dc9571f1 (patch)
treed14c64a51bfb680d058962a7eba64611af234b84 /src/remote/activitypub/models
parentFix defalut note visibility setting (#5881) (diff)
downloadmisskey-aa573c00631181c2e974ef8b3c061678dc9571f1.tar.gz
misskey-aa573c00631181c2e974ef8b3c061678dc9571f1.tar.bz2
misskey-aa573c00631181c2e974ef8b3c061678dc9571f1.zip
Create ActivityでattributedToの補完とaudienceのコピーを行うように (#5873)
* attributedTo * Create * copy audiences between activity <=> object * やっぱり匿名GETのpublicは必要 * fix
Diffstat (limited to 'src/remote/activitypub/models')
-rw-r--r--src/remote/activitypub/models/note.ts16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/remote/activitypub/models/note.ts b/src/remote/activitypub/models/note.ts
index 3bd6fc679b..70ceb5e503 100644
--- a/src/remote/activitypub/models/note.ts
+++ b/src/remote/activitypub/models/note.ts
@@ -17,7 +17,7 @@ import { deliverQuestionUpdate } from '../../../services/note/polls/update';
import { extractDbHost, toPuny } from '../../../misc/convert-host';
import { Notes, Emojis, Polls, MessagingMessages } from '../../../models';
import { Note } from '../../../models/entities/note';
-import { IObject, getOneApId, getApId, validPost, ICreate, isCreate, IPost } from '../type';
+import { IObject, getOneApId, getApId, validPost, IPost } from '../type';
import { Emoji } from '../../../models/entities/emoji';
import { genId } from '../../../misc/gen-id';
import { fetchMeta } from '../../../misc/fetch-meta';
@@ -78,7 +78,7 @@ export async function fetchNote(value: string | IObject, resolver?: Resolver): P
/**
* Noteを作成します。
*/
-export async function createNote(value: string | IObject, resolver?: Resolver, silent = false, activity?: ICreate): Promise<Note | null> {
+export async function createNote(value: string | IObject, resolver?: Resolver, silent = false): Promise<Note | null> {
if (resolver == null) resolver = new Resolver();
const object: any = await resolver.resolve(value);
@@ -112,18 +112,12 @@ export async function createNote(value: string | IObject, resolver?: Resolver, s
const noteAudience = await parseAudience(actor, note.to, note.cc);
let visibility = noteAudience.visibility;
- let visibleUsers = noteAudience.visibleUsers;
- let apMentions = noteAudience.mentionedUsers;
+ const visibleUsers = noteAudience.visibleUsers;
+ const apMentions = noteAudience.mentionedUsers;
// Audience (to, cc) が指定されてなかった場合
if (visibility === 'specified' && visibleUsers.length === 0) {
- if (activity && isCreate(activity)) {
- // Create 起因ならば Activity を見る
- const activityAudience = await parseAudience(actor, activity.to, activity.cc);
- visibility = activityAudience.visibility;
- visibleUsers = activityAudience.visibleUsers;
- apMentions = activityAudience.mentionedUsers;
- } else if (typeof value === 'string') { // 入力がstringならばresolverでGETが発生している
+ if (typeof value === 'string') { // 入力がstringならばresolverでGETが発生している
// こちらから匿名GET出来たものならばpublic
visibility = 'public';
}