mirror of
https://github.com/ajnart/homarr.git
synced 2025-11-14 17:26:26 +01:00
42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
import Consola from 'consola';
|
|
import { NextApiRequest, NextApiResponse } from 'next';
|
|
|
|
function Post(req: NextApiRequest, res: NextApiResponse) {
|
|
const { tried, type = 'password' } = req.body;
|
|
// If the type of password is "edit", we run this branch to check the edit password
|
|
if (type === 'edit') {
|
|
if (tried === process.env.EDIT_MODE_PASSWORD) {
|
|
if (process.env.DISABLE_EDIT_MODE?.toLowerCase() === 'true') {
|
|
process.env.DISABLE_EDIT_MODE = 'false';
|
|
} else {
|
|
process.env.DISABLE_EDIT_MODE = 'true';
|
|
}
|
|
return res.status(200).json({
|
|
success: true,
|
|
});
|
|
}
|
|
} else if (tried === process.env.PASSWORD) {
|
|
return res.status(200).json({
|
|
success: true,
|
|
});
|
|
}
|
|
Consola.warn(
|
|
`${new Date().toLocaleString()} : Wrong password attempt, from ${
|
|
req.headers['x-forwarded-for']
|
|
}`
|
|
);
|
|
return res.status(401).json({
|
|
success: false,
|
|
});
|
|
}
|
|
|
|
export default async (req: NextApiRequest, res: NextApiResponse) => {
|
|
if (req.method === 'POST') {
|
|
return Post(req, res);
|
|
}
|
|
return res.status(405).json({
|
|
statusCode: 405,
|
|
message: 'Method not allowed',
|
|
});
|
|
};
|