mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-18 15:17:25 +01:00
fix(usernames): filter @ on server side for username lookup
This commit is contained in:
@@ -130,13 +130,14 @@ api.getMemberByUsername = {
|
|||||||
if (validationErrors) throw validationErrors;
|
if (validationErrors) throw validationErrors;
|
||||||
|
|
||||||
let username = req.params.username.toLowerCase();
|
let username = req.params.username.toLowerCase();
|
||||||
|
if (username[0] === '@') username = username.slice(1, username.length);
|
||||||
|
|
||||||
let member = await User
|
let member = await User
|
||||||
.findOne({'auth.local.lowerCaseUsername': username, 'flags.verifiedUsername': true})
|
.findOne({'auth.local.lowerCaseUsername': username, 'flags.verifiedUsername': true})
|
||||||
.select(memberFields)
|
.select(memberFields)
|
||||||
.exec();
|
.exec();
|
||||||
|
|
||||||
if (!member || !member.flags.verifiedUsername) throw new NotFound(res.t('userNotFound'));
|
if (!member) throw new NotFound(res.t('userNotFound'));
|
||||||
|
|
||||||
// manually call toJSON with minimize: true so empty paths aren't returned
|
// manually call toJSON with minimize: true so empty paths aren't returned
|
||||||
let memberToJSON = member.toJSON({minimize: true});
|
let memberToJSON = member.toJSON({minimize: true});
|
||||||
|
|||||||
Reference in New Issue
Block a user