diff options
| author | Aya Morisawa <AyaMorisawa4869@gmail.com> | 2019-01-06 13:28:33 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-01-06 13:28:33 +0900 |
| commit | 49d9e51f72c532b5b12f346ad1c5b55d7af436c3 (patch) | |
| tree | 72a9638853da7b0009319be5a54224e571b33229 /src/server | |
| parent | Update @fortawesome/fontawesome-svg-core requirement (diff) | |
| parent | Merge pull request #3819 from syuilo/dependabot/npm_and_yarn/@fortawesome/fre... (diff) | |
| download | misskey-49d9e51f72c532b5b12f346ad1c5b55d7af436c3.tar.gz misskey-49d9e51f72c532b5b12f346ad1c5b55d7af436c3.tar.bz2 misskey-49d9e51f72c532b5b12f346ad1c5b55d7af436c3.zip | |
Merge branch 'develop' into dependabot/npm_and_yarn/@fortawesome/fontawesome-svg-core-1.2.12
Diffstat (limited to 'src/server')
| -rw-r--r-- | src/server/activitypub.ts | 6 | ||||
| -rw-r--r-- | src/server/api/endpoints/admin/update-meta.ts | 11 | ||||
| -rw-r--r-- | src/server/api/endpoints/meta.ts | 1 | ||||
| -rw-r--r-- | src/server/api/endpoints/notes/reactions/create.ts | 2 | ||||
| -rw-r--r-- | src/server/web/index.ts | 28 |
5 files changed, 44 insertions, 4 deletions
diff --git a/src/server/activitypub.ts b/src/server/activitypub.ts index 42d90ab91f..9adc3dd943 100644 --- a/src/server/activitypub.ts +++ b/src/server/activitypub.ts @@ -83,7 +83,7 @@ router.get('/notes/:note', async (ctx, next) => { } ctx.body = pack(await renderNote(note, false)); - ctx.set('Cache-Control', 'private, max-age=0, must-revalidate'); + ctx.set('Cache-Control', 'public, max-age=180'); setResponseType(ctx); }); @@ -162,7 +162,9 @@ async function userInfo(ctx: Router.IRouterContext, user: IUser) { setResponseType(ctx); } -router.get('/users/:user', async ctx => { +router.get('/users/:user', async (ctx, next) => { + if (!isActivityPubReq(ctx)) return await next(); + if (!ObjectID.isValid(ctx.params.user)) { ctx.status = 404; return; diff --git a/src/server/api/endpoints/admin/update-meta.ts b/src/server/api/endpoints/admin/update-meta.ts index 6ceb2a98dc..cf117ebd71 100644 --- a/src/server/api/endpoints/admin/update-meta.ts +++ b/src/server/api/endpoints/admin/update-meta.ts @@ -39,6 +39,13 @@ export const meta = { } }, + mascotImageUrl: { + validator: $.str.optional.nullable, + desc: { + 'ja-JP': 'インスタンスキャラクター画像のURL' + } + }, + bannerUrl: { validator: $.str.optional.nullable, desc: { @@ -328,6 +335,10 @@ export default define(meta, (ps) => new Promise(async (res, rej) => { set.hidedTags = ps.hidedTags; } + if (ps.mascotImageUrl !== undefined) { + set.mascotImageUrl = ps.mascotImageUrl; + } + if (ps.bannerUrl !== undefined) { set.bannerUrl = ps.bannerUrl; } diff --git a/src/server/api/endpoints/meta.ts b/src/server/api/endpoints/meta.ts index d406f59dc9..fa933513b7 100644 --- a/src/server/api/endpoints/meta.ts +++ b/src/server/api/endpoints/meta.ts @@ -65,6 +65,7 @@ export default define(meta, (ps, me) => new Promise(async (res, rej) => { enableRecaptcha: instance.enableRecaptcha, recaptchaSiteKey: instance.recaptchaSiteKey, swPublickey: instance.swPublicKey, + mascotImageUrl: instance.mascotImageUrl, bannerUrl: instance.bannerUrl, errorImageUrl: instance.errorImageUrl, maxNoteTextLength: instance.maxNoteTextLength, diff --git a/src/server/api/endpoints/notes/reactions/create.ts b/src/server/api/endpoints/notes/reactions/create.ts index c9f70d9658..6c90898250 100644 --- a/src/server/api/endpoints/notes/reactions/create.ts +++ b/src/server/api/endpoints/notes/reactions/create.ts @@ -45,7 +45,7 @@ export default define(meta, (ps, user) => new Promise(async (res, rej) => { } if (note.deletedAt != null) { - return rej('this not is already deleted'); + return rej('this note is already deleted'); } try { diff --git a/src/server/web/index.ts b/src/server/web/index.ts index 998fd2adf2..59b8390ab5 100644 --- a/src/server/web/index.ts +++ b/src/server/web/index.ts @@ -148,6 +148,27 @@ router.get('/@:user', async (ctx, next) => { } }); +router.get('/users/:user', async ctx => { + if (!ObjectID.isValid(ctx.params.user)) { + ctx.status = 404; + return; + } + + const userId = new ObjectID(ctx.params.user); + + const user = await User.findOne({ + _id: userId, + host: null + }); + + if (user === null) { + ctx.status = 404; + return; + } + + ctx.redirect(`/@${user.username}${ user.host == null ? '' : '@' + user.host}`); +}); + // Note router.get('/notes/:note', async ctx => { if (ObjectID.isValid(ctx.params.note)) { @@ -159,7 +180,12 @@ router.get('/notes/:note', async ctx => { note: _note, summary: getNoteSummary(_note) }); - ctx.set('Cache-Control', 'private, max-age=0, must-revalidate'); + + if (['public', 'home'].includes(note.visibility)) { + ctx.set('Cache-Control', 'public, max-age=180'); + } else { + ctx.set('Cache-Control', 'private, max-age=0, must-revalidate'); + } return; } |