Uname: Linux business55.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
Software: LiteSpeed
PHP version: 8.1.32 [ PHP INFO ] PHP os: Linux
Server Ip: 162.213.251.212
Your Ip: 18.226.185.23
User: allssztx (535) | Group: allssztx (533)
Safe Mode: OFF
Disable Function:
NONE

name : job.js
const express = require('express');
const router = express.Router();
const Business = require('../../schema/Business')
const Job = require('../../schema/Job')

router.post('/add', async (req, res) => {
    try {
        const { company, title, summary, responsiblities, education, skills, experience, certification, position, industry, location, jobType, benefits, salary, workScheduled, applicationPosted, applicationDeadline, applicationInstruction, requiredDocuments, contactPerson, contactNumber, additionalInfo } = req.body
        console.log(req.body)
        let errors = []
        const business = await Business.findById(company)
        if (!business) {
            return res.status(422).redirect('/jobposting?error=You Should LoggedIn as a Company to post A Job Application')
        }
        if (errors.length == 0) {
            const job = await Job.create({ company, title, summary, responsiblities: responsiblities.split('\n'), education, skills: skills.split('\n'), experience, certification, position, industry, location, jobType, benefits: benefits.split('\n'), salary, workScheduled, applicationPosted, applicationDeadline, applicationInstruction, requiredDocuments: requiredDocuments.split('\n'), contactPerson, contactNumber, additionalInfo })
            if (job) {
                const bJobs = business.jobs ? business.jobs : []
                bJobs.push(job._id)
                business.jobs = bJobs
                await business.save()
                return res.status(200).redirect(`/jobdetails/${job._id}?message=Job Posted Successfully`)
            } else {
                return res.status(409).redirect('/?error=Something Went Wrong')
            }
        }
        else {
            console.log(req.body)
            return res.status(422).redirect('/jobposting?error=' + JSON.stringify(errors))
        }
    }
    catch (err) {
        console.log(err.message);
        return res.status(422).redirect('/jobposting?error=' + err.message)
    }
})
router.post('/update', async (req, res) => {
    try {
        const { id, company, title, summary, responsiblities, education, skills, experience, certification, position, industry, location, jobType, benefits, salary, workScheduled, applicationPosted, applicationDeadline, applicationInstruction, requiredDocuments, contactPerson, contactNumber, additionalInfo } = req.body
        console.log(req.body)
        let errors = []
        const business = await Business.findById(company)
        if (!business) {
            return res.status(422).redirect('/jobposting?error=You Should LoggedIn as a Company to post A Job Application')
        }
        if (errors.length == 0) {
            const job = await Job.findByIdAndUpdate(id, { company, title, summary, responsiblities: responsiblities.split('\n'), education, skills: skills.split('\n'), experience, certification, position, industry, location, jobType, benefits: benefits.split('\n'), salary, workScheduled, applicationPosted, applicationDeadline, applicationInstruction, requiredDocuments: requiredDocuments.split('\n'), contactPerson, contactNumber, additionalInfo }, {
                new: true, // returns the updated document
                runValidators: true, // ensures validations are run
              });
            if (job) {
                const bJobs = business.jobs ? business.jobs : []
                bJobs.push(job._id)
                business.jobs = bJobs
                await business.save()
                return res.status(200).redirect(`/jobdetails/${job._id}?message=Job Updated Successfully`)
            } else {
                return res.status(409).redirect('/?error=Something Went Wrong')
            }
        }
        else {
            console.log(req.body)
            return res.status(422).redirect('/jobposting?error=' + JSON.stringify(errors))
        }
    }
    catch (err) {
        console.log(err.message);
        return res.status(422).redirect('/jobposting?error=' + err.message)
    }
})

router.post('/delete', async (req, res) => {
    try {
        const { id, jobId } = req.body
        const business = req.business
        console.log(business?._id)
        if (business?._id.toString() == id) {
            await Job.findByIdAndDelete(jobId)
            return res.status(422).redirect(`/profile?message=Job Deleted`)
        }
        return res.status(422).redirect(`/jobdetails/${jobId}?error=Something Went Wrong`)
    }
    catch (err) {
        console.log(err.message);
        return res.status(422).redirect(`/profile?error=` + err.message)
    }
})

module.exports = router
© 2025 GrazzMean-Shell