mirror of
https://github.com/Mueller-Patrick/Betterzon.git
synced 2024-12-22 19:55:12 +00:00
BETTERZON-75: Adding regex to check email and username
This commit is contained in:
parent
820decd8f0
commit
94b02d90d7
|
@ -21,7 +21,6 @@ export const usersRouter = express.Router();
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// POST users/register
|
// POST users/register
|
||||||
|
|
||||||
usersRouter.post('/register', async (req: Request, res: Response) => {
|
usersRouter.post('/register', async (req: Request, res: Response) => {
|
||||||
try {
|
try {
|
||||||
const username: string = req.body.username;
|
const username: string = req.body.username;
|
||||||
|
|
|
@ -58,7 +58,7 @@ export const createUser = async (username: string, password: string, email: stri
|
||||||
await conn.commit();
|
await conn.commit();
|
||||||
|
|
||||||
// Get session id of the created user
|
// Get session id of the created user
|
||||||
let sessionId: number = -1
|
let sessionId: number = -1;
|
||||||
for (const row in sessionIdRes) {
|
for (const row in sessionIdRes) {
|
||||||
if (row !== 'meta' && sessionIdRes[row].session_id != null) {
|
if (row !== 'meta' && sessionIdRes[row].session_id != null) {
|
||||||
sessionId = sessionIdRes[row].session_id;
|
sessionId = sessionIdRes[row].session_id;
|
||||||
|
@ -113,6 +113,22 @@ export const checkUsernameAndEmail = async (username: string, email: string): Pr
|
||||||
codes: []
|
codes: []
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const usernameRegex = RegExp('^[a-zA-Z0-9\\-\\_]{4,20}$'); // Can contain a-z, A-Z, 0-9, -, _ and has to be 4-20 chars long
|
||||||
|
if (!usernameRegex.test(username)) {
|
||||||
|
// Username doesn't match requirements
|
||||||
|
res.hasProblems = true;
|
||||||
|
res.messages.push('Invalid username');
|
||||||
|
res.codes.push(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
const emailRegex = RegExp('^[a-zA-Z0-9\\-\\_.]{1,30}\\@[a-zA-Z0-9\\-.]{1,20}\\.[a-z]{1,20}$'); // Normal email regex, user@betterzon.xyz
|
||||||
|
if (!emailRegex.test(email)) {
|
||||||
|
// Username doesn't match requirements
|
||||||
|
res.hasProblems = true;
|
||||||
|
res.messages.push('Invalid email');
|
||||||
|
res.codes.push(2);
|
||||||
|
}
|
||||||
|
|
||||||
if (usernameRes.length > 0) {
|
if (usernameRes.length > 0) {
|
||||||
// Username is a duplicate
|
// Username is a duplicate
|
||||||
res.hasProblems = true;
|
res.hasProblems = true;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user