refs #6434 feat: add new error message
gitea/salix/pipeline/head There was a failure building this commit Details

This commit is contained in:
Javier Segarra 2023-11-14 13:00:20 +01:00
parent ad07c4ec97
commit 5c777c705f
3 changed files with 29 additions and 16 deletions

View File

@ -40,15 +40,17 @@ module.exports = Self => {
const validCredentials = vnUser
&& await vnUser.hasPassword(password);
if (validCredentials) {
if (!validCredentials)
throw new UserError('Invalid credentials');
if (!vnUser.active)
throw new UserError('User disabled');
await Self.sendTwoFactor(ctx, vnUser, myOptions);
await Self.passExpired(vnUser, myOptions);
if (vnUser.twoFactor)
throw new ForbiddenError(null, 'REQUIRES_2FA');
}
return Self.validateLogin(user, password);
};

View File

@ -2,6 +2,7 @@ const vnModel = require('vn-loopback/common/models/vn-model');
const {Email} = require('vn-print');
const ForbiddenError = require('vn-loopback/util/forbiddenError');
const LoopBackContext = require('loopback-context');
const UserError = require('vn-loopback/util/user-error');
module.exports = function(Self) {
vnModel(Self);
@ -121,10 +122,18 @@ module.exports = function(Self) {
});
Self.validateLogin = async function(user, password) {
let loginInfo = Object.assign({password}, Self.userUses(user));
token = await Self.login(loginInfo, 'user');
const loginInfo = Object.assign({password}, Self.userUses(user));
const token = await Self.login(loginInfo, 'user');
const userToken = await token.user.get();
if (userToken.username !== user) {
console.error('ERROR!!! - Signin with other user', userToken, user);
throw new UserError('Try again');
}
const userCheck = await Self.app.models.VnUser.findOne({where: {name: user}});
if (userToken.id != userCheck.id) await Self.validateLogin(user, password);
try {
await Self.app.models.Account.sync(userToken.name, password);
} catch (err) {

View File

@ -325,5 +325,7 @@
"The ticket is in preparation": "El ticket [{{ticketId}}]({{{ticketUrl}}}) del comercial {{salesPersonId}} está en preparación",
"The amount cannot be less than the minimum": "La cantidad no puede ser menor que la cantidad mímina",
"quantityLessThanMin": "La cantidad no puede ser menor que la cantidad mímina",
"The notification subscription of this worker cant be modified": "La subscripción a la notificación de este trabajador no puede ser modificada"
"The notification subscription of this worker cant be modified": "La subscripción a la notificación de este trabajador no puede ser modificada",
"User disabled": "User disabled",
"Invalid credentials": "Invalid credentials"
}