Advertisement
Guest User

Untitled

a guest
Jul 7th, 2017
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.84 KB | None | 0 0
  1. //models/users.js
  2. const mongoose = require('mongoose');
  3. const bcrypt = require('bcrypt');
  4. const confic = require('../models/users');
  5.  
  6. // User schema
  7. const UserSchema = mongoose.Schema({
  8. name: {
  9. type: String,
  10. },
  11. email: {
  12. type: String,
  13. required: true
  14. },
  15. username:{
  16. type: String,
  17. required: true
  18. },
  19. password: {
  20. type: String,
  21. required: true
  22. }
  23. });
  24.  
  25. const User = module.exports = mongoose.model('User', UserSchema);
  26.  
  27. module.exports.getUserById = function(id,callback){
  28. User.findById(id,callback);
  29. }
  30.  
  31. module.exports.getUserByUsername = function(username,callback){
  32. const query = {username:username}
  33. User.findOne(query,callback);
  34. }
  35.  
  36. module.exports.addUser= function (newUser, callback) {
  37. bcrypt.gensalt(10,(err,salt) => {
  38. bcrypt.hash(newUser.password, salt , (err, hash) =>{
  39. if(err) throw err;
  40. newUser.password=hash;
  41. newUser.save(callback);
  42. });
  43. });
  44. }
  45.  
  46. //routes/users.js
  47.  
  48. const express = require('express');
  49. const router = express.Router();
  50. const passport = require('passport');
  51. const jwt = require('jsonwebtoken');
  52. const User = require('../config/database');
  53.  
  54. // // Register
  55. router.post('/register', (req, res, next) => {
  56. var newUser = new User({
  57. name: req.body.name,
  58. email: req.body.email,
  59. username: req.body.username,
  60. password: req.body.password
  61. });
  62.  
  63. User.addUser(newUser, (err, User) => {
  64. if(err){
  65. res.json({success: false, msg:'Failed to register user'});
  66. } else {
  67. res.json({success: true, msg:'User registered'});
  68. }
  69.  
  70. });
  71.  
  72. });
  73.  
  74. // Authenticate
  75. router.post('/authenticate', (req, res, next) => {
  76. res.send('AUTHENTICATE');
  77. });
  78.  
  79. // Profile
  80. router.get('/profile', (req, res, next) => {
  81. res.send('PROFILE');
  82. });
  83.  
  84. module.exports = router;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement