summaryrefslogtreecommitdiff
path: root/src/server/api/endpoints/mute/create.ts
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2018-11-02 03:32:24 +0900
committersyuilo <syuilotan@yahoo.co.jp>2018-11-02 03:32:24 +0900
commit931bdc6aace5e7aa71ffdfb470e208ead78a2a53 (patch)
treeeee6d7bf5f5480b883bb601517b4d9db03f31e9f /src/server/api/endpoints/mute/create.ts
parentRefactoring (diff)
downloadsharkey-931bdc6aace5e7aa71ffdfb470e208ead78a2a53.tar.gz
sharkey-931bdc6aace5e7aa71ffdfb470e208ead78a2a53.tar.bz2
sharkey-931bdc6aace5e7aa71ffdfb470e208ead78a2a53.zip
Refactoring, Clean up and bug fixes
Diffstat (limited to 'src/server/api/endpoints/mute/create.ts')
-rw-r--r--src/server/api/endpoints/mute/create.ts24
1 files changed, 15 insertions, 9 deletions
diff --git a/src/server/api/endpoints/mute/create.ts b/src/server/api/endpoints/mute/create.ts
index 5b2e7a8d71..442d3f51d8 100644
--- a/src/server/api/endpoints/mute/create.ts
+++ b/src/server/api/endpoints/mute/create.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 User, { ILocalUser } from '../../../../models/user';
import Mute from '../../../../models/mute';
+import getParams from '../../get-params';
export const meta = {
desc: {
@@ -10,24 +11,30 @@ export const meta = {
requireCredential: true,
- kind: 'account/write'
+ kind: 'account/write',
+
+ params: {
+ userId: {
+ validator: $.type(ID),
+ transform: transform,
+ },
+ }
};
export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => {
- const muter = 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 muter = user;
// 自分自身
- if (user._id.equals(userId)) {
+ if (user._id.equals(ps.userId)) {
return rej('mutee is yourself');
}
// Get mutee
const mutee = await User.findOne({
- _id: userId
+ _id: ps.userId
}, {
fields: {
data: false,
@@ -56,6 +63,5 @@ export default (params: any, user: ILocalUser) => new Promise(async (res, rej) =
muteeId: mutee._id,
});
- // Send response
res();
});