Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var passwordHash = require('password-hash');
- var v = require('node-input-validator');
- module.exports = function (db) {
- return{
- id: 0,
- username: "",
- password: "",
- email: "",
- CreateUser: async function(){
- let resp = await this.UserValidation();
- var isExixst = await this.IsUserExixstByName(this.username);
- },
- Login: function(){
- },
- UserValidation: async function(){
- let response = {
- valid: false,
- msg: ""
- }
- let r = {};
- let validator = new v(r, {username:this.username,password:this.password,email:this.email},
- {
- username:'required|minLength:4|maxLength:50',
- password:'required|minLength:4|maxLength:50',
- email:'email'
- }
- );
- let isValid = await validator.check();
- response.valid = isValid;
- response.msg = validator.errors;
- return response;
- },
- GetUserByName: function(username){
- /*db.query("SELECT * FROM users WHERE username = ?", function (err, result, fields) {
- if (err) throw err;
- console.log(result);
- });*/
- },
- IsUserExixstByName: async function(username){
- var sql = "SELECT * FROM users WHERE username = ?";
- var query_var = [username];
- var ret;
- db.query(sql, query_var , function (err, rows , fields) {
- if (err) {
- throw err;
- }
- return rows;
- });
- return await ret;
- },
- InsertUserToDb: function(passwordHash){
- return new Promise(function(resolve, reject) {
- var sql = "INSERT INTO users (username, password, email) VALUES ?";
- var values = [
- [this.username, passwordHash, this.email]
- ];
- db.query(sql, [values], function (err, result) {
- if (err) {
- return reject(err);
- }
- if(result.affectedRows != 1){
- return reject("unable to create user");
- }
- resolve(result);
- });
- });
- }
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement