From 8e4b722981d101d763f95e8d279f2045ba45b3b7 Mon Sep 17 00:00:00 2001 From: Lucas Gabriel Lima <lgl15@inf.ufpr.br> Date: Thu, 13 Oct 2016 09:55:08 -0300 Subject: [PATCH] add checkage for all required fields before saving user --- src/libs/routes/user.js | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/src/libs/routes/user.js b/src/libs/routes/user.js index fc2a9b8b..ccd8ddc6 100644 --- a/src/libs/routes/user.js +++ b/src/libs/routes/user.js @@ -12,6 +12,8 @@ const User = require(`${libs}/models/user`); const jwt = require('jwt-simple'); +const required_fields = ["email", "password", "name", "cpf", "schooling", "course", "segment", "role", "institution_name", "state", "city"]; + function emailSyntax(email) { const regex = /^(([^<>()\[\]\.,;:\s@\"]+(\.[^<>()\[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i; @@ -19,8 +21,15 @@ function emailSyntax(email) { } userApp.post('/', (req, res, next) => { - if (!req.body.email || !req.body.password) { - res.json({success: false, msg: 'Please pass email and password.'}); + if (!req.body.email) { + res.json({success: false, msg: 'Please pass email.'}); + } else { + next(); + } + +}, (req, res, next) => { + if (!req.body.password) { + res.json({success: false, msg: 'Please pass password.'}); } else { next(); } @@ -32,6 +41,14 @@ userApp.post('/', (req, res, next) => { next(); } +}, (req, res, next) => { + for (let property of required_fields){ + if(!Object.prototype.hasOwnProperty.call(req.body, property)){ + res.json({success: false, msg: 'Please fill out all mandatory fields.'}); + return; + } + } + next(); }, (req, res, next) => { var newUser = new User({ email: req.body.email, -- GitLab