diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2018-04-06 19:35:23 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2018-04-06 19:35:23 +0900 |
| commit | 4e9ae8e8d5c862ac7a72f56d7bc0b7dab9c81044 (patch) | |
| tree | 895a954636b782b20af97bf65719bb0607f3ef32 /src/remote/activitypub/act/create/image.ts | |
| parent | Fix type annotation (diff) | |
| download | misskey-4e9ae8e8d5c862ac7a72f56d7bc0b7dab9c81044.tar.gz misskey-4e9ae8e8d5c862ac7a72f56d7bc0b7dab9c81044.tar.bz2 misskey-4e9ae8e8d5c862ac7a72f56d7bc0b7dab9c81044.zip | |
Split code
Diffstat (limited to 'src/remote/activitypub/act/create/image.ts')
| -rw-r--r-- | src/remote/activitypub/act/create/image.ts | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/remote/activitypub/act/create/image.ts b/src/remote/activitypub/act/create/image.ts new file mode 100644 index 0000000000..cd9e7b4e0f --- /dev/null +++ b/src/remote/activitypub/act/create/image.ts @@ -0,0 +1,19 @@ +import * as debug from 'debug'; + +import Resolver from '../../resolver'; +import uploadFromUrl from '../../../../services/drive/upload-from-url'; +import { IRemoteUser } from '../../../../models/user'; +import { IDriveFile } from '../../../../models/drive-file'; + +const log = debug('misskey:activitypub'); + +export default async function(resolver: Resolver, actor: IRemoteUser, image): Promise<IDriveFile> { + if ('attributedTo' in image && actor.account.uri !== image.attributedTo) { + log(`invalid image: ${JSON.stringify(image, null, 2)}`); + throw new Error('invalid image'); + } + + log(`Creating the Image: ${image.id}`); + + return await uploadFromUrl(image.url, actor); +} |