user.js 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. const Joi = require('joi');
  2. const validate = require('./validate');
  3. const schemaCreateNewUser = Joi.object({
  4. number: Joi.string().min(8).max(14).required(),
  5. country: Joi.string().min(1).max(40).required(),
  6. }).min(2);
  7. const schemaUpdateUser = Joi.object({
  8. name: Joi.string().min(3).max(30).optional().trim().optional(),
  9. lastName: Joi.string().min(3).max(30).optional().trim().optional(),
  10. number: Joi.string().min(8).max(14).optional(),
  11. }).min(1);
  12. const schemaLogIn = Joi.object({
  13. number: Joi.string().min(8).max(14).required(),
  14. code: Joi.string().min(3).max(12).required(),
  15. }).min(2);
  16. module.exports.registration = (req, _res, next) => {
  17. return validate(schemaCreateNewUser, req.body, next);
  18. };
  19. module.exports.updateUser = (req, _res, next) => {
  20. return validate(schemaUpdateUser, req.body, next);
  21. };
  22. module.exports.logIn = (req, _res, next) => {
  23. return validate(schemaLogIn, req.body, next);
  24. };
  25. module.exports.validateUploadFile = (req, res, next) => {
  26. if (!req.file)
  27. return res.status(400).json({
  28. status: 'error',
  29. code: 400,
  30. data: 'Bad request',
  31. message: 'File not found',
  32. });
  33. next();
  34. };