diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2019-07-08 04:27:18 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2019-07-08 04:27:18 +0900 |
| commit | 05862a420f7d97e1a9781036a4eb62311cd35b20 (patch) | |
| tree | 157725f75c909ed1d445938e040e875ae3d1f776 /src/server/api | |
| parent | https://github.com/syuilo/misskey/pull/4549#discussion_r287750004 (diff) | |
| parent | :art: (diff) | |
| download | sharkey-05862a420f7d97e1a9781036a4eb62311cd35b20.tar.gz sharkey-05862a420f7d97e1a9781036a4eb62311cd35b20.tar.bz2 sharkey-05862a420f7d97e1a9781036a4eb62311cd35b20.zip | |
Merge branch 'develop' into pr/4549
Diffstat (limited to 'src/server/api')
| -rw-r--r-- | src/server/api/endpoints/i/update.ts | 27 | ||||
| -rw-r--r-- | src/server/api/endpoints/page-push.ts | 5 | ||||
| -rw-r--r-- | src/server/api/endpoints/pages/create.ts | 6 | ||||
| -rw-r--r-- | src/server/api/endpoints/pages/update.ts | 5 | ||||
| -rw-r--r-- | src/server/api/private/signin.ts | 1 |
5 files changed, 41 insertions, 3 deletions
diff --git a/src/server/api/endpoints/i/update.ts b/src/server/api/endpoints/i/update.ts index 10521d12d8..a454cdb940 100644 --- a/src/server/api/endpoints/i/update.ts +++ b/src/server/api/endpoints/i/update.ts @@ -10,7 +10,7 @@ import extractHashtags from '../../../../misc/extract-hashtags'; import * as langmap from 'langmap'; import { updateHashtag } from '../../../../services/update-hashtag'; import { ApiError } from '../../error'; -import { Users, DriveFiles, UserProfiles } from '../../../../models'; +import { Users, DriveFiles, UserProfiles, Pages } from '../../../../models'; import { User } from '../../../../models/entities/user'; import { UserProfile } from '../../../../models/entities/user-profile'; import { ensure } from '../../../../prelude/ensure'; @@ -125,6 +125,13 @@ export const meta = { 'ja-JP': 'アップロードするメディアをデフォルトで「閲覧注意」として設定するか' } }, + + pinnedPageId: { + validator: $.optional.nullable.type(ID), + desc: { + 'ja-JP': 'ピン留めするページID' + } + } }, errors: { @@ -150,7 +157,13 @@ export const meta = { message: 'The file specified as a banner is not an image.', code: 'BANNER_NOT_AN_IMAGE', id: '75aedb19-2afd-4e6d-87fc-67941256fa60' - } + }, + + noSuchPage: { + message: 'No such page.', + code: 'NO_SUCH_PAGE', + id: '8e01b590-7eb9-431b-a239-860e086c408e' + }, } }; @@ -203,6 +216,16 @@ export default define(meta, async (ps, user, app) => { } } + if (ps.pinnedPageId) { + const page = await Pages.findOne(ps.pinnedPageId); + + if (page == null || page.userId !== user.id) throw new ApiError(meta.errors.noSuchPage); + + profileUpdates.pinnedPageId = page.id; + } else if (ps.pinnedPageId === null) { + profileUpdates.pinnedPageId = null; + } + //#region emojis/tags let emojis = [] as string[]; diff --git a/src/server/api/endpoints/page-push.ts b/src/server/api/endpoints/page-push.ts index 300df7c250..f5e1a4d1eb 100644 --- a/src/server/api/endpoints/page-push.ts +++ b/src/server/api/endpoints/page-push.ts @@ -16,6 +16,10 @@ export const meta = { event: { validator: $.str + }, + + var: { + validator: $.optional.nullable.any } }, @@ -37,6 +41,7 @@ export default define(meta, async (ps, user) => { publishMainStream(user.id, 'pageEvent', { pageId: ps.pageId, event: ps.event, + var: ps.var, user: await Users.pack(user, page.userId, { detail: true }) diff --git a/src/server/api/endpoints/pages/create.ts b/src/server/api/endpoints/pages/create.ts index ffe0d38ea6..a49a5d37b8 100644 --- a/src/server/api/endpoints/pages/create.ts +++ b/src/server/api/endpoints/pages/create.ts @@ -57,6 +57,11 @@ export const meta = { validator: $.optional.bool, default: false }, + + hideTitleWhenPinned: { + validator: $.optional.bool, + default: false + }, }, res: { @@ -100,6 +105,7 @@ export default define(meta, async (ps, user) => { userId: user.id, visibility: 'public', alignCenter: ps.alignCenter, + hideTitleWhenPinned: ps.hideTitleWhenPinned, font: ps.font })); diff --git a/src/server/api/endpoints/pages/update.ts b/src/server/api/endpoints/pages/update.ts index 8ee34fc3ba..9daf5e9cae 100644 --- a/src/server/api/endpoints/pages/update.ts +++ b/src/server/api/endpoints/pages/update.ts @@ -61,6 +61,10 @@ export const meta = { alignCenter: { validator: $.optional.bool, }, + + hideTitleWhenPinned: { + validator: $.optional.bool, + }, }, errors: { @@ -113,6 +117,7 @@ export default define(meta, async (ps, user) => { content: ps.content, variables: ps.variables, alignCenter: ps.alignCenter === undefined ? page.alignCenter : ps.alignCenter, + hideTitleWhenPinned: ps.hideTitleWhenPinned === undefined ? page.hideTitleWhenPinned : ps.hideTitleWhenPinned, font: ps.font === undefined ? page.font : ps.font, eyeCatchingImageId: ps.eyeCatchingImageId === null ? null diff --git a/src/server/api/private/signin.ts b/src/server/api/private/signin.ts index 67afed760b..eb267aa604 100644 --- a/src/server/api/private/signin.ts +++ b/src/server/api/private/signin.ts @@ -221,5 +221,4 @@ export default async (ctx: Koa.BaseContext) => { } await fail(); - return; }; |