mp.events.add('onLoginAttempt', (player, data) => {
data = JSON.parse(data);
DB.query('SELECT * FROM accounts WHERE login = ? LIMIT 1', [data.login], function (error, results) {
if(results.length == 0) return player.call('showAuthError', ['Неверный Логин и/или Пароль']);
const passwordHash = results[0].password;
bcrypt.compare(data.password, passwordHash, function(err, isMatched) {
if( isMatched ) {
player.login = results[0].login; // записываем логин в объект игрока, чтобы использовать его в других местах
return player.call('hideLoginDialog');
}
player.call('showAuthError', ['Неверный Логин и/или Пароль']);
});
});
});