shell bypass 403
const express = require('express')
const { uploadImage } = require('../helper/file-upload')
const Team = require('../Schema/team')
const generateUrl = require('../helper/generateUrl')
const router = express.Router()
router.post('/new', uploadImage.single('image'), async (req, res) => {
try {
const image = req.file
const { name } = req.body
const {num} = req.body
const{email}= req.body
const {disc} = req.body
console.log('image',image)
console.log('req.body',req.body)
if (!image) {
return res.redirect(`/sites/pioneer-reality/admin/team?error=Image Not Found!`)
}
const picture = `/uploads/${image.filename}`
const url = generateUrl(name)
const team = await Team.create({ name, picture ,disc, url ,num,email})
return res.redirect(`/sites/pioneer-reality/admin/team?message=New Team member added`)
} catch (error) {
console.log('error', error)
return res.redirect(`/sites/pioneer-reality/admin/team?error=${error.message}`)
}
})
router.post('/delete', async (req, res) => {
try {
const { id } = req.body;
if (!id) {
return res.redirect(`/sites/pioneer-reality/admin/team?error=Team member ID is required!`);
}
// Find and delete the team member
const teamMember = await Team.findByIdAndDelete(id);
if (!teamMember) {
return res.redirect(`/sites/pioneer-reality/admin/team?error=Team member not found!`);
}
return res.redirect(`/sites/pioneer-reality/admin/team?message=Team member deleted successfully`);
} catch (error) {
console.error('Error:', error);
return res.redirect(`/sites/pioneer-reality/admin/team?error=${error.message}`);
}
});
router.post('/edit', uploadImage.single('image'), async (req, res) => {
try {
const { id, name, num, email, disc } = req.body;
const image = req.file;
if (!id) {
return res.redirect(`/sites/pioneer-reality/admin/team?error=Team member ID is required!`);
}
// Find the team member
const teamMember = await Team.findById(id);
if (!teamMember) {
return res.redirect(`/sites/pioneer-reality/admin/team?error=Team member not found!`);
}
// Update fields
if (name) teamMember.name = name;
if (num) teamMember.num = num;
if (email) teamMember.email = email;
if (disc) teamMember.disc = disc;
if (image) teamMember.picture = `/uploads/${image.filename}`; // Update image if provided
await teamMember.save(); // Save the updated team member
return res.redirect(`/sites/pioneer-reality/admin/team?message=Team member updated successfully`);
} catch (error) {
console.error('Error:', error);
return res.redirect(`/sites/pioneer-reality/admin/team?error=${error.message}`);
}
});
module.exports = router