summaryrefslogtreecommitdiff
path: root/src/server/api/endpoints/users
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2019-02-22 14:02:56 +0900
committersyuilo <syuilotan@yahoo.co.jp>2019-02-22 14:02:56 +0900
commitbe3298639da3d5bebff000fb39a64174d43ba06c (patch)
tree73eab87ee64d5dd9f9a6b30442d97e8582c0bd27 /src/server/api/endpoints/users
parentNew Crowdin translations (#4337) (diff)
downloadsharkey-be3298639da3d5bebff000fb39a64174d43ba06c.tar.gz
sharkey-be3298639da3d5bebff000fb39a64174d43ba06c.tar.bz2
sharkey-be3298639da3d5bebff000fb39a64174d43ba06c.zip
Refactor
Diffstat (limited to 'src/server/api/endpoints/users')
-rw-r--r--src/server/api/endpoints/users/get_frequently_replied_users.ts14
-rw-r--r--src/server/api/endpoints/users/lists/pull.ts10
-rw-r--r--src/server/api/endpoints/users/lists/push.ts10
-rw-r--r--src/server/api/endpoints/users/notes.ts12
-rw-r--r--src/server/api/endpoints/users/report-abuse.ts10
5 files changed, 20 insertions, 36 deletions
diff --git a/src/server/api/endpoints/users/get_frequently_replied_users.ts b/src/server/api/endpoints/users/get_frequently_replied_users.ts
index b20d1ef69e..4c6a040a95 100644
--- a/src/server/api/endpoints/users/get_frequently_replied_users.ts
+++ b/src/server/api/endpoints/users/get_frequently_replied_users.ts
@@ -6,6 +6,7 @@ import define from '../../define';
import { maximum } from '../../../../prelude/array';
import { getHideUserIds } from '../../common/get-hide-users';
import { ApiError } from '../../error';
+import { getUser } from '../../common/getters';
export const meta = {
requireCredential: false,
@@ -37,18 +38,11 @@ export const meta = {
export default define(meta, async (ps, me) => {
// Lookup user
- const user = await User.findOne({
- _id: ps.userId
- }, {
- fields: {
- _id: true
- }
+ const user = await getUser(ps.userId).catch(e => {
+ if (e.id === '15348ddd-432d-49c2-8a5a-8069753becff') throw new ApiError(meta.errors.noSuchUser);
+ throw e;
});
- if (user === null) {
- throw new ApiError(meta.errors.noSuchUser);
- }
-
// Fetch recent notes
const recentNotes = await Note.find({
userId: user._id,
diff --git a/src/server/api/endpoints/users/lists/pull.ts b/src/server/api/endpoints/users/lists/pull.ts
index 416c1b4b2d..679b71277c 100644
--- a/src/server/api/endpoints/users/lists/pull.ts
+++ b/src/server/api/endpoints/users/lists/pull.ts
@@ -5,6 +5,7 @@ import User, { pack as packUser } from '../../../../../models/user';
import { publishUserListStream } from '../../../../../services/stream';
import define from '../../../define';
import { ApiError } from '../../../error';
+import { getUser } from '../../../common/getters';
export const meta = {
desc: {
@@ -59,14 +60,11 @@ export default define(meta, async (ps, me) => {
}
// Fetch the user
- const user = await User.findOne({
- _id: ps.userId
+ const user = await getUser(ps.userId).catch(e => {
+ if (e.id === '15348ddd-432d-49c2-8a5a-8069753becff') throw new ApiError(meta.errors.noSuchUser);
+ throw e;
});
- if (user == null) {
- throw new ApiError(meta.errors.noSuchUser);
- }
-
// Pull the user
await UserList.update({ _id: userList._id }, {
$pull: {
diff --git a/src/server/api/endpoints/users/lists/push.ts b/src/server/api/endpoints/users/lists/push.ts
index 90dd2aa045..6fdf55875d 100644
--- a/src/server/api/endpoints/users/lists/push.ts
+++ b/src/server/api/endpoints/users/lists/push.ts
@@ -8,6 +8,7 @@ import renderFollow from '../../../../../remote/activitypub/renderer/follow';
import { deliver } from '../../../../../queue';
import define from '../../../define';
import { ApiError } from '../../../error';
+import { getUser } from '../../../common/getters';
export const meta = {
desc: {
@@ -68,14 +69,11 @@ export default define(meta, async (ps, me) => {
}
// Fetch the user
- const user = await User.findOne({
- _id: ps.userId
+ const user = await getUser(ps.userId).catch(e => {
+ if (e.id === '15348ddd-432d-49c2-8a5a-8069753becff') throw new ApiError(meta.errors.noSuchUser);
+ throw e;
});
- if (user == null) {
- throw new ApiError(meta.errors.noSuchUser);
- }
-
if (userList.userIds.map(id => id.toHexString()).includes(user._id.toHexString())) {
throw new ApiError(meta.errors.alreadyAdded);
}
diff --git a/src/server/api/endpoints/users/notes.ts b/src/server/api/endpoints/users/notes.ts
index 98d67e865a..efa39da001 100644
--- a/src/server/api/endpoints/users/notes.ts
+++ b/src/server/api/endpoints/users/notes.ts
@@ -5,6 +5,7 @@ import User from '../../../../models/user';
import define from '../../define';
import Following from '../../../../models/following';
import { ApiError } from '../../error';
+import { getUser } from '../../common/getters';
export const meta = {
desc: {
@@ -135,16 +136,11 @@ export const meta = {
export default define(meta, async (ps, me) => {
// Lookup user
- const user = await User.findOne({ _id: ps.userId }, {
- fields: {
- _id: true
- }
+ const user = await getUser(ps.userId).catch(e => {
+ if (e.id === '15348ddd-432d-49c2-8a5a-8069753becff') throw new ApiError(meta.errors.noSuchUser);
+ throw e;
});
- if (user === null) {
- throw new ApiError(meta.errors.noSuchUser);
- }
-
const isFollowing = me == null ? false : ((await Following.findOne({
followerId: me._id,
followeeId: user._id
diff --git a/src/server/api/endpoints/users/report-abuse.ts b/src/server/api/endpoints/users/report-abuse.ts
index 32a2393493..36f797f5e6 100644
--- a/src/server/api/endpoints/users/report-abuse.ts
+++ b/src/server/api/endpoints/users/report-abuse.ts
@@ -5,6 +5,7 @@ import User from '../../../../models/user';
import AbuseUserReport from '../../../../models/abuse-user-report';
import { publishAdminStream } from '../../../../services/stream';
import { ApiError } from '../../error';
+import { getUser } from '../../common/getters';
export const meta = {
desc: {
@@ -54,14 +55,11 @@ export const meta = {
export default define(meta, async (ps, me) => {
// Lookup user
- const user = await User.findOne({
- _id: ps.userId
+ const user = await getUser(ps.userId).catch(e => {
+ if (e.id === '15348ddd-432d-49c2-8a5a-8069753becff') throw new ApiError(meta.errors.noSuchUser);
+ throw e;
});
- if (user === null) {
- throw new ApiError(meta.errors.noSuchUser);
- }
-
if (user._id.equals(me._id)) {
throw new ApiError(meta.errors.cannotReportYourself);
}