fix/validation error messages

This commit is contained in:
SowinskiBraeden committed 2025-05-21 12:06:57 -07:00
1 parent 9a61d362be
commit 163cb73b9d
3 files changed
+19 -18

No files matched your search

+7 -6
View File
@@ -27,14 +27,14 @@ module.exports = (users) => {
router.post("/login", async (req, res) => { router.post("/login", async (req, res) => {
const credentialSchema = joi.object({ const credentialSchema = joi.object({
email: joi.string().email().required(), email: joi.string().email({ minDomainSegments: 2, tlds: { allow: true } }).required(),
password: joi.string().alphanum().max(20).required(), password: joi.string().alphanum().max(20).required(),
}); });
const valid = credentialSchema.validate(req.body); const valid = credentialSchema.validate(req.body);
if (valid.err) { if (valid.error) {
req.session.errMessage = "Invalid input"; req.session.errMessage = "Invalid input:" + valid.error.details.map(d => d.message.replace(/"/g, '')).join(', ');
res.status(status.BadRequest); res.status(status.BadRequest);
return res.redirect("/login"); return res.redirect("/login");
} }
@@ -72,7 +72,7 @@ module.exports = (users) => {
router.post("/signup", async (req, res) => { router.post("/signup", async (req, res) => {
const userSchema = joi.object({ const userSchema = joi.object({
email: joi.string().email().required(), email: joi.string().email({ minDomainSegments: 2, tlds: { allow: true } }).required(),
name: joi.string().pattern(new RegExp('^[a-zA-Z]+$')).max(20).required(), name: joi.string().pattern(new RegExp('^[a-zA-Z]+$')).max(20).required(),
password: joi.string().alphanum().max(20).min(8).required(), password: joi.string().alphanum().max(20).min(8).required(),
repassword: joi.string().alphanum().max(20).min(8).required(), repassword: joi.string().alphanum().max(20).min(8).required(),
@@ -80,8 +80,8 @@ module.exports = (users) => {
const valid = userSchema.validate(req.body); const valid = userSchema.validate(req.body);
if (valid.err) { if (valid.error) {
req.session.errMessage = "Invalid input", req.session.errMessage = valid.error.details[0].message,
res.status(status.BadRequest); res.status(status.BadRequest);
return res.redirect("/signup"); return res.redirect("/signup");
} }
@@ -95,6 +95,7 @@ module.exports = (users) => {
if (req.body.password != req.body.repassword) { if (req.body.password != req.body.repassword) {
req.session.errMessage = "Passwords must match"; req.session.errMessage = "Passwords must match";
res.status(status.BadRequest); res.status(status.BadRequest);
return res.redirect(`/signup/?name=${req.body.name}&email=${req.body.email}`); return res.redirect(`/signup/?name=${req.body.name}&email=${req.body.email}`);
} }
+2 -2
View File
@@ -21,7 +21,7 @@ module.exports = (users) => {
router.post('/auth/resetPass', async (req, res) => { router.post('/auth/resetPass', async (req, res) => {
const resetSchema = joi.object({ const resetSchema = joi.object({
email: joi.string().email().required(), email: joi.string().email({ minDomainSegments: 2, tlds: { allow: true } }).required(),
}); });
req.session.error = ''; req.session.error = '';
req.session.reset = ''; req.session.reset = '';
@@ -83,7 +83,7 @@ module.exports = (users) => {
const valid = passwordSchema.validate({ password, confirmPassword }); const valid = passwordSchema.validate({ password, confirmPassword });
if (valid.error) { if (valid.error) {
console.log("houston we have a problem"); // nice console.log("houston we have a problem"); // nice
req.session.error = 'Invalid input'; req.session.error = "Invalid input:" + valid.error.details.map(d => d.message.replace(/"/g, '')).join(', ');;
res.status(status.BadRequest); res.status(status.BadRequest);
return res.redirect(`/reset/${token}`); return res.redirect(`/reset/${token}`);
} }
+10 -10
View File
@@ -449,7 +449,7 @@ module.exports = (middleware, users, plans, assets) => {
router.post("/updateAccount", async (req, res) => { router.post("/updateAccount", async (req, res) => {
const accountSchema = joi.object({ const accountSchema = joi.object({
email: joi.string().email(), email: joi.string().email({ minDomainSegments: 2, tlds: { allow: true } }),
name: joi.string().pattern(new RegExp('^[a-zA-Z]+$')).max(20), name: joi.string().pattern(new RegExp('^[a-zA-Z]+$')).max(20),
password: joi.string().alphanum().max(20).min(8), password: joi.string().alphanum().max(20).min(8),
repassword: joi.string().alphanum().max(20).min(8), repassword: joi.string().alphanum().max(20).min(8),
@@ -457,9 +457,9 @@ module.exports = (middleware, users, plans, assets) => {
const valid = accountSchema.validate(req.body); const valid = accountSchema.validate(req.body);
if (valid.err) { if (valid.error) {
req.session.errMessage = "Invalid input", req.session.errMessage = "Invalid input:" + valid.error.details.map(d => d.message.replace(/"/g, '')).join(', ');
res.status(status.BadRequest); res.status(status.BadRequest);
return res.redirect("/profile"); return res.redirect("/profile");
} }
@@ -606,9 +606,9 @@ module.exports = (middleware, users, plans, assets) => {
const valid = assetSchema.validate(req.body); const valid = assetSchema.validate(req.body);
if (valid.err) { if (valid.error) {
req.session.errMessage = "Invalid input", req.session.errMessage = "Invalid input:" + valid.error.details.map(d => d.message.replace(/"/g, '')).join(', ');
res.status(status.BadRequest); res.status(status.BadRequest);
return res.redirect("/assets"); return res.redirect("/assets");
} }
@@ -651,9 +651,9 @@ module.exports = (middleware, users, plans, assets) => {
const valid = assetSchema.validate(req.body); const valid = assetSchema.validate(req.body);
if (valid.err) { if (valid.error) {
req.session.errMessage = "Invalid input", req.session.errMessage = "Invalid input:" + valid.error.details.map(d => d.message.replace(/"/g, '')).join(', ');
res.status(status.BadRequest); res.status(status.BadRequest);
return res.redirect("/assets"); return res.redirect("/assets");
} }