style(usersettings): improve syntax & performance of user password checks
This commit is contained in:
@@ -366,9 +366,13 @@ userSettingsRoutes.delete<{ id: string }>(
|
||||
}
|
||||
|
||||
try {
|
||||
const user = await userRepository.findOne({
|
||||
where: { id: Number(req.params.id) },
|
||||
});
|
||||
const user = await userRepository
|
||||
.createQueryBuilder('user')
|
||||
.addSelect('user.password')
|
||||
.where({
|
||||
id: Number(req.params.id),
|
||||
})
|
||||
.getOne();
|
||||
|
||||
if (!user) {
|
||||
return res.status(404).json({ message: 'User not found.' });
|
||||
@@ -381,14 +385,7 @@ userSettingsRoutes.delete<{ id: string }>(
|
||||
});
|
||||
}
|
||||
|
||||
const hasPassword = !!(
|
||||
await userRepository.findOne({
|
||||
where: { id: user.id },
|
||||
select: ['id', 'password'],
|
||||
})
|
||||
)?.password;
|
||||
|
||||
if (!user.email || !hasPassword) {
|
||||
if (!user.email || !user.password) {
|
||||
return res.status(400).json({
|
||||
message: 'User does not have a local email or password set.',
|
||||
});
|
||||
@@ -524,9 +521,13 @@ userSettingsRoutes.delete<{ id: string }>(
|
||||
}
|
||||
|
||||
try {
|
||||
const user = await userRepository.findOne({
|
||||
where: { id: Number(req.params.id) },
|
||||
});
|
||||
const user = await userRepository
|
||||
.createQueryBuilder('user')
|
||||
.addSelect('user.password')
|
||||
.where({
|
||||
id: Number(req.params.id),
|
||||
})
|
||||
.getOne();
|
||||
|
||||
if (!user) {
|
||||
return res.status(404).json({ message: 'User not found.' });
|
||||
@@ -539,14 +540,7 @@ userSettingsRoutes.delete<{ id: string }>(
|
||||
});
|
||||
}
|
||||
|
||||
const hasPassword = !!(
|
||||
await userRepository.findOne({
|
||||
where: { id: user.id },
|
||||
select: ['id', 'password'],
|
||||
})
|
||||
)?.password;
|
||||
|
||||
if (!user.email || !hasPassword) {
|
||||
if (!user.email || !user.password) {
|
||||
return res.status(400).json({
|
||||
message: 'User does not have a local email or password set.',
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user