Skip to content
Snippets Groups Projects
Select Git revision
  • 59da3d4f00f4363984d3a01848634e87d6540c9c
  • master default
  • autorisation_visit
  • signup_mydata
  • format_editData
  • dev
  • authorize-valid-profile
  • feli90-patch-2
  • feli90-patch-1
  • context_sheet
  • testNewForm
  • FeliLocalTest1
  • ios-account-fix
  • change-form-link
  • dev_pages_projet
  • remise_sorties
  • release/first-users
17 results

server.js

Blame
  • user.model.js 1.83 KiB
    var Sequelize = require('sequelize');
    var sequelize = require('./sequelize');
    const moment = require('moment')
    
    sequelize
      .authenticate()
      .then(() => {
        console.log('Connection has been established successfully.');
      })
      .catch(err => {
        console.error('Unable to connect to the database:', err);
      });
    
    var Users = sequelize.define('Users', {
    	uName: {
    		type : Sequelize.STRING,
    		allowNull: false,
    		unique: true,
    	},
    	fName: Sequelize.STRING,
    	lName: Sequelize.STRING,
    	phoneNumber: Sequelize.STRING,
    	token: Sequelize.STRING,
    	expires: Sequelize.DATE
    },{
    	timestamps: false,
    	tableUser: 'Users',
    });
    
    sequelize.sync({force:true})
    
    function refreshUser(user){
    	expiresTime = user.toJSON().expires
    	if( moment.duration(moment(expiresTime).diff(moment())).asHours() < 23){
    		user.updateAttributes({
    			expires : moment().add(1,'days')
    		})
    	}
    }
    function refreshById(id,timeLeft){
    	if( moment.duration(moment(user.expires).diff(moment())).asHours() < 23){
    		return true;
    	}else{
    		return false;
    	}
    }
    
    function getUser(id) {
    	return Users.findById(id);
    }
    
    function getUserUName(uName) {
    	return Users.findOne(
    		{ where: { uName: uName } }
    	);
    }
    
    function authUser(userInfos) {
    	return Users.upsert(
    		userInfos
    	).then(function(users) {
    		return users;
    	}).catch((err) => {
    		console.log(err)
    	})
    }
    
    function isAuthed(uName,token){
    	return Users.findOne({where : {uName : uName, token : token}});
    }