user.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  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(1).max(30).optional().trim().optional(),
  9. lastName: Joi.string().min(1).max(30).optional().trim().optional(),
  10. originalName: Joi.string().min(3).max(30).optional().trim().optional(),
  11. originalLastName: Joi.string().min(3).max(30).optional().trim().optional(),
  12. nightMode: Joi.boolean().optional(),
  13. sort: Joi.boolean().optional(),
  14. }).min(1);
  15. const schemaLogIn = Joi.object({
  16. number: Joi.string().min(8).max(14).required(),
  17. code: Joi.string().min(3).max(12).required(),
  18. }).min(2);
  19. module.exports.registration = (req, _res, next) => {
  20. return validate(schemaCreateNewUser, req.body, next);
  21. };
  22. module.exports.updateUser = (req, _res, next) => {
  23. return validate(schemaUpdateUser, req.body, next);
  24. };
  25. module.exports.logIn = (req, _res, next) => {
  26. return validate(schemaLogIn, req.body, next);
  27. };
  28. module.exports.validateUploadFile = (req, res, next) => {
  29. if (!req.file)
  30. return res.status(400).json({
  31. status: 'error',
  32. code: 400,
  33. data: 'Bad request',
  34. message: 'File not found',
  35. });
  36. next();
  37. };