const Sequelize = require('sequelize');

var usuarios;

var inserirUsuario = function(request, reply) {
    var usuario = request.payload.usuario;
    var senha = request.payload.senha;

    usuarios.create({
        nome: usuario,
        senha: senha
    }).then(function() {
        reply({msg: true});
    }).catch(function() {
        reply({msg: false});
    });
};

var logarUsuario = function(request, reply) {
    console.log(request);

    var usuario = request.payload.usuario;
    var senha = request.payload.senha;

    usuarios.findOne({
        where: {
            nome: usuario,
            senha: senha
        }
    }).then(function(usuarioLogado) {
        if(usuarioLogado === null) {
            reply({logado: false});
        } else {
            reply({logado: true});
        }
    }).catch(function(){
        reply({logado: false});
    });
};

module.exports = function(server, sequelize) {
    usuarios = sequelize.define('usuario', {
        nome: {
            field: 'nome',
            type: Sequelize.STRING
        },
        senha: {
            field: 'senha',
            type: Sequelize.STRING
        }
    });

    usuarios.sync({force: true});
    
    server.route({
        method: 'GET',
        path: '/usuarios/cadastrar',
        handler: {
            file: 'pages/cadastrar.html'
        }
    });

    server.route({
        method: 'POST',
        path: '/usuarios/inserir',
        handler: inserirUsuario
    });

    server.route({
        method: 'POST',
        path: '/usuarios/logar',
        handler: logarUsuario
    });
}
