diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2018-11-02 03:32:24 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2018-11-02 03:32:24 +0900 |
| commit | 931bdc6aace5e7aa71ffdfb470e208ead78a2a53 (patch) | |
| tree | eee6d7bf5f5480b883bb601517b4d9db03f31e9f /src/server/api/endpoints/following | |
| parent | Refactoring (diff) | |
| download | sharkey-931bdc6aace5e7aa71ffdfb470e208ead78a2a53.tar.gz sharkey-931bdc6aace5e7aa71ffdfb470e208ead78a2a53.tar.bz2 sharkey-931bdc6aace5e7aa71ffdfb470e208ead78a2a53.zip | |
Refactoring, Clean up and bug fixes
Diffstat (limited to 'src/server/api/endpoints/following')
| -rw-r--r-- | src/server/api/endpoints/following/create.ts | 8 | ||||
| -rw-r--r-- | src/server/api/endpoints/following/delete.ts | 8 | ||||
| -rw-r--r-- | src/server/api/endpoints/following/requests/accept.ts | 20 | ||||
| -rw-r--r-- | src/server/api/endpoints/following/requests/cancel.ts | 20 | ||||
| -rw-r--r-- | src/server/api/endpoints/following/requests/list.ts | 2 | ||||
| -rw-r--r-- | src/server/api/endpoints/following/requests/reject.ts | 20 | ||||
| -rw-r--r-- | src/server/api/endpoints/following/stalk.ts | 22 | ||||
| -rw-r--r-- | src/server/api/endpoints/following/unstalk.ts | 22 |
8 files changed, 78 insertions, 44 deletions
diff --git a/src/server/api/endpoints/following/create.ts b/src/server/api/endpoints/following/create.ts index 028a2aa826..7795bbcc61 100644 --- a/src/server/api/endpoints/following/create.ts +++ b/src/server/api/endpoints/following/create.ts @@ -1,4 +1,4 @@ -import $ from 'cafy'; import ID from '../../../../misc/cafy-id'; +import $ from 'cafy'; import ID, { transform } from '../../../../misc/cafy-id'; const ms = require('ms'); import User, { pack, ILocalUser } from '../../../../models/user'; import Following from '../../../../models/following'; @@ -23,12 +23,14 @@ export const meta = { kind: 'following-write', params: { - userId: $.type(ID).note({ + userId: { + validator: $.type(ID), + transform: transform, desc: { 'ja-JP': '対象のユーザーのID', 'en-US': 'Target user ID' } - }) + } } }; diff --git a/src/server/api/endpoints/following/delete.ts b/src/server/api/endpoints/following/delete.ts index 0489c1e041..ae0edd34ee 100644 --- a/src/server/api/endpoints/following/delete.ts +++ b/src/server/api/endpoints/following/delete.ts @@ -1,4 +1,4 @@ -import $ from 'cafy'; import ID from '../../../../misc/cafy-id'; +import $ from 'cafy'; import ID, { transform } from '../../../../misc/cafy-id'; const ms = require('ms'); import User, { pack, ILocalUser } from '../../../../models/user'; import Following from '../../../../models/following'; @@ -23,12 +23,14 @@ export const meta = { kind: 'following-write', params: { - userId: $.type(ID).note({ + userId: { + validator: $.type(ID), + transform: transform, desc: { 'ja-JP': '対象のユーザーのID', 'en-US': 'Target user ID' } - }) + } } }; diff --git a/src/server/api/endpoints/following/requests/accept.ts b/src/server/api/endpoints/following/requests/accept.ts index f6a7dcf120..1172f463d6 100644 --- a/src/server/api/endpoints/following/requests/accept.ts +++ b/src/server/api/endpoints/following/requests/accept.ts @@ -1,6 +1,7 @@ -import $ from 'cafy'; import ID from '../../../../../misc/cafy-id'; +import $ from 'cafy'; import ID, { transform } from '../../../../../misc/cafy-id'; import acceptFollowRequest from '../../../../../services/following/requests/accept'; import User, { ILocalUser } from '../../../../../models/user'; +import getParams from '../../../get-params'; export const meta = { desc: { @@ -10,17 +11,23 @@ export const meta = { requireCredential: true, - kind: 'following-write' + kind: 'following-write', + + params: { + userId: { + validator: $.type(ID), + transform: transform, + } + } }; export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => { - // Get 'userId' parameter - const [followerId, followerIdErr] = $.type(ID).get(params.userId); - if (followerIdErr) return rej('invalid userId param'); + const [ps, psErr] = getParams(meta, params); + if (psErr) return rej(psErr); // Fetch follower const follower = await User.findOne({ - _id: followerId + _id: ps.userId }); if (follower === null) { @@ -29,6 +36,5 @@ export default (params: any, user: ILocalUser) => new Promise(async (res, rej) = await acceptFollowRequest(user, follower); - // Send response res(); }); diff --git a/src/server/api/endpoints/following/requests/cancel.ts b/src/server/api/endpoints/following/requests/cancel.ts index 3da4f4734f..77bfcfe15e 100644 --- a/src/server/api/endpoints/following/requests/cancel.ts +++ b/src/server/api/endpoints/following/requests/cancel.ts @@ -1,6 +1,7 @@ -import $ from 'cafy'; import ID from '../../../../../misc/cafy-id'; +import $ from 'cafy'; import ID, { transform } from '../../../../../misc/cafy-id'; import cancelFollowRequest from '../../../../../services/following/requests/cancel'; import User, { pack, ILocalUser } from '../../../../../models/user'; +import getParams from '../../../get-params'; export const meta = { desc: { @@ -10,17 +11,23 @@ export const meta = { requireCredential: true, - kind: 'following-write' + kind: 'following-write', + + params: { + userId: { + validator: $.type(ID), + transform: transform, + } + } }; export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => { - // Get 'userId' parameter - const [followeeId, followeeIdErr] = $.type(ID).get(params.userId); - if (followeeIdErr) return rej('invalid userId param'); + const [ps, psErr] = getParams(meta, params); + if (psErr) return rej(psErr); // Fetch followee const followee = await User.findOne({ - _id: followeeId + _id: ps.userId }); if (followee === null) { @@ -33,6 +40,5 @@ export default (params: any, user: ILocalUser) => new Promise(async (res, rej) = return rej(e); } - // Send response res(await pack(followee._id, user)); }); diff --git a/src/server/api/endpoints/following/requests/list.ts b/src/server/api/endpoints/following/requests/list.ts index 11a387cf16..6d42d06db2 100644 --- a/src/server/api/endpoints/following/requests/list.ts +++ b/src/server/api/endpoints/following/requests/list.ts @@ -1,4 +1,4 @@ -//import $ from 'cafy'; import ID from '../../../../../cafy-id'; +//import $ from 'cafy'; import ID, { transform } from '../../../../../cafy-id'; import FollowRequest, { pack } from '../../../../../models/follow-request'; import { ILocalUser } from '../../../../../models/user'; diff --git a/src/server/api/endpoints/following/requests/reject.ts b/src/server/api/endpoints/following/requests/reject.ts index 98febe9e9f..45ebb7807b 100644 --- a/src/server/api/endpoints/following/requests/reject.ts +++ b/src/server/api/endpoints/following/requests/reject.ts @@ -1,6 +1,7 @@ -import $ from 'cafy'; import ID from '../../../../../misc/cafy-id'; +import $ from 'cafy'; import ID, { transform } from '../../../../../misc/cafy-id'; import rejectFollowRequest from '../../../../../services/following/requests/reject'; import User, { ILocalUser } from '../../../../../models/user'; +import getParams from '../../../get-params'; export const meta = { desc: { @@ -10,17 +11,23 @@ export const meta = { requireCredential: true, - kind: 'following-write' + kind: 'following-write', + + params: { + userId: { + validator: $.type(ID), + transform: transform, + } + } }; export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => { - // Get 'userId' parameter - const [followerId, followerIdErr] = $.type(ID).get(params.userId); - if (followerIdErr) return rej('invalid userId param'); + const [ps, psErr] = getParams(meta, params); + if (psErr) return rej(psErr); // Fetch follower const follower = await User.findOne({ - _id: followerId + _id: ps.userId }); if (follower === null) { @@ -29,6 +36,5 @@ export default (params: any, user: ILocalUser) => new Promise(async (res, rej) = await rejectFollowRequest(user, follower); - // Send response res(); }); diff --git a/src/server/api/endpoints/following/stalk.ts b/src/server/api/endpoints/following/stalk.ts index d44cea2cc4..434bc52b59 100644 --- a/src/server/api/endpoints/following/stalk.ts +++ b/src/server/api/endpoints/following/stalk.ts @@ -1,6 +1,7 @@ -import $ from 'cafy'; import ID from '../../../../misc/cafy-id'; +import $ from 'cafy'; import ID, { transform } from '../../../../misc/cafy-id'; import Following from '../../../../models/following'; import { ILocalUser } from '../../../../models/user'; +import getParams from '../../get-params'; export const meta = { desc: { @@ -10,20 +11,26 @@ export const meta = { requireCredential: true, - kind: 'following-write' + kind: 'following-write', + + params: { + userId: { + validator: $.type(ID), + transform: transform, + } + } }; export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => { - const follower = user; + const [ps, psErr] = getParams(meta, params); + if (psErr) return rej(psErr); - // Get 'userId' parameter - const [userId, userIdErr] = $.type(ID).get(params.userId); - if (userIdErr) return rej('invalid userId param'); + const follower = user; // Fetch following const following = await Following.findOne({ followerId: follower._id, - followeeId: userId + followeeId: ps.userId }); if (following === null) { @@ -37,7 +44,6 @@ export default (params: any, user: ILocalUser) => new Promise(async (res, rej) = } }); - // Send response res(); // TODO: イベント diff --git a/src/server/api/endpoints/following/unstalk.ts b/src/server/api/endpoints/following/unstalk.ts index 8b66f0727e..00e91357ec 100644 --- a/src/server/api/endpoints/following/unstalk.ts +++ b/src/server/api/endpoints/following/unstalk.ts @@ -1,6 +1,7 @@ -import $ from 'cafy'; import ID from '../../../../misc/cafy-id'; +import $ from 'cafy'; import ID, { transform } from '../../../../misc/cafy-id'; import Following from '../../../../models/following'; import { ILocalUser } from '../../../../models/user'; +import getParams from '../../get-params'; export const meta = { desc: { @@ -10,20 +11,26 @@ export const meta = { requireCredential: true, - kind: 'following-write' + kind: 'following-write', + + params: { + userId: { + validator: $.type(ID), + transform: transform, + } + } }; export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => { - const follower = user; + const [ps, psErr] = getParams(meta, params); + if (psErr) return rej(psErr); - // Get 'userId' parameter - const [userId, userIdErr] = $.type(ID).get(params.userId); - if (userIdErr) return rej('invalid userId param'); + const follower = user; // Fetch following const following = await Following.findOne({ followerId: follower._id, - followeeId: userId + followeeId: ps.userId }); if (following === null) { @@ -37,7 +44,6 @@ export default (params: any, user: ILocalUser) => new Promise(async (res, rej) = } }); - // Send response res(); // TODO: イベント |