summaryrefslogtreecommitdiff
path: root/src/server/api
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2018-07-18 07:34:17 +0900
committersyuilo <syuilotan@yahoo.co.jp>2018-07-18 07:34:17 +0900
commit4cb51a2d327617084a8c439c24fab269d0d27c0a (patch)
tree2a32db2e5930291b3ab673efcdb45d63c25cac61 /src/server/api
parent4.23.0 (diff)
downloadsharkey-4cb51a2d327617084a8c439c24fab269d0d27c0a.tar.gz
sharkey-4cb51a2d327617084a8c439c24fab269d0d27c0a.tar.bz2
sharkey-4cb51a2d327617084a8c439c24fab269d0d27c0a.zip
Fix bugs
Diffstat (limited to 'src/server/api')
-rw-r--r--src/server/api/endpoints/hashtags/search.ts3
-rw-r--r--src/server/api/endpoints/users/search_by_username.ts5
2 files changed, 5 insertions, 3 deletions
diff --git a/src/server/api/endpoints/hashtags/search.ts b/src/server/api/endpoints/hashtags/search.ts
index 988a786a08..262370cacc 100644
--- a/src/server/api/endpoints/hashtags/search.ts
+++ b/src/server/api/endpoints/hashtags/search.ts
@@ -1,6 +1,7 @@
import $ from 'cafy';
import Hashtag from '../../../../models/hashtag';
import getParams from '../../get-params';
+const escapeRegexp = require('escape-regexp');
export const meta = {
desc: {
@@ -38,7 +39,7 @@ export default (params: any) => new Promise(async (res, rej) => {
const hashtags = await Hashtag
.find({
- tag: new RegExp(ps.query.toLowerCase())
+ tag: new RegExp('^' + escapeRegexp(ps.query.toLowerCase()))
}, {
sort: {
count: -1
diff --git a/src/server/api/endpoints/users/search_by_username.ts b/src/server/api/endpoints/users/search_by_username.ts
index 56030a000d..d347ba6056 100644
--- a/src/server/api/endpoints/users/search_by_username.ts
+++ b/src/server/api/endpoints/users/search_by_username.ts
@@ -1,5 +1,6 @@
import $ from 'cafy';
import User, { pack, ILocalUser } from '../../../../models/user';
+const escapeRegexp = require('escape-regexp');
/**
* Search a user by username
@@ -20,7 +21,7 @@ export default (params: any, me: ILocalUser) => new Promise(async (res, rej) =>
let users = await User
.find({
host: null,
- usernameLower: new RegExp(query.toLowerCase())
+ usernameLower: new RegExp(escapeRegexp(query.toLowerCase()))
}, {
limit: limit,
skip: offset
@@ -30,7 +31,7 @@ export default (params: any, me: ILocalUser) => new Promise(async (res, rej) =>
const remoteUsers = await User
.find({
host: { $ne: null },
- usernameLower: new RegExp(query.toLowerCase())
+ usernameLower: new RegExp(escapeRegexp(query.toLowerCase()))
}, {
limit: limit - users.length
});