fixed bug

main
alex 2024-02-24 23:14:50 +01:00
parent 6c2fd50ed0
commit fde4f5ceea
2 changed files with 39 additions and 26 deletions

View File

@ -64,35 +64,48 @@ export async function UpdateStore(req: Request, res: Response) {
// validate request // validate request
if (!storeId) { if (!storeId) {
storeLogger.error("UpdateStore: invalid request", "no storeId provided"); storeLogger.error(
storeId,
"UpdateStore: invalid request",
"no storeId provided"
);
return res.status(400).send({ err: "invalid request" }); return res.status(400).send({ err: "invalid request" });
} }
const validations = [ if (!name && !phoneNumber && !email && !address) {
{ storeLogger.error(
value: name, storeId,
validator: isCompanyNameValid, "UpdateStore: invalid request",
error: "invalid company name", "no fields to update"
}, );
{ return res.status(400).send({ err: "invalid request" });
value: phoneNumber, }
validator: isCompanyPhoneNumberValid,
error: "invalid phone number",
},
{ value: email, validator: isEmailValid, error: "invalid email" },
{
value: address,
validator: isCompanyAddressValid,
error: "invalid address",
},
];
for (let i = 0; i < validations.length; i++) { if (!isCompanyNameValid(name) || !isCompanyAddressValid(address)) {
const { value, validator, error } = validations[i]; storeLogger.error(
if (value !== undefined && !validator(value)) { storeId,
storeLogger.error("UpdateStore: invalid request", error); "UpdateStore: invalid request",
return res.status(400).send({ err: "invalid request" }); "invalid name"
} );
return res.status(400).send({ err: "invalid request" });
}
if (phoneNumber && !isCompanyPhoneNumberValid(phoneNumber)) {
storeLogger.error(
storeId,
"UpdateStore: invalid request",
"invalid phone number"
);
return res.status(400).send({ err: "invalid request" });
}
if (email && !(await isEmailValid(email, false))) {
storeLogger.error(
storeId,
"UpdateStore: invalid request",
"invalid email"
);
return res.status(400).send({ err: "invalid request" });
} }
// check if requester is the store owner // check if requester is the store owner

View File

@ -46,7 +46,7 @@ export async function isEmailValid(
email: string, email: string,
checkDatabase: boolean = true checkDatabase: boolean = true
) { ) {
logger.info(`isEmailValid: ${email}`); logger.debug(`isEmailValid: ${email}`);
if ( if (
email.length < EMAIL_MIN_LENGTH || email.length < EMAIL_MIN_LENGTH ||