cubash-archive/routes/StaffApplications.js

64 lines
2.1 KiB
JavaScript

let express = require('express')
let router = express.Router()
const auth = require('../lib/auth')
var Recaptcha = require('express-recaptcha').RecaptchaV3;
const Errors = require('../lib/errors')
let {
User
} = require('../models')
let {
StaffApplications
} = require('../models')
router.post('/', auth, async(req, res, next) => {
try {
if(!req.userData.username) {
throw Errors.requestNotAuthorized
}
let user = await User.findOne({ where: {
username: req.userData.username
}})
if(req.autosan.body.selectedOption === 'moderator') {
throw Errors.noLongerHiringModerators
}
if(req.autosan.body.otherForm === 'moderator') {
throw Errors.noLongerHiringModerators
}
if(req.autosan.body.otherForm === 'Moderator') {
throw Errors.noLongerHiringModerators
}
if(req.autosan.body.otherForm === 'Mod') {
throw Errors.noLongerHiringModerators
}
if(req.autosan.body.otherForm === 'Admin') {
throw Errors.noLongerHiringModerators
}
if(req.autosan.body.otherForm === 'admin') {
throw Errors.noLongerHiringModerators
}
if(req.autosan.body.otherForm === 'mod') {
throw Errors.noLongerHiringModerators
}
if(req.autosan.body.otherForm === 'Administrator') {
throw Errors.noLongerHiringModerators
}
if(req.autosan.body.otherForm === 'administrator') {
throw Errors.noLongerHiringModerators
}
let userParams = {
username: req.userData.username,
dob: req.autosan.body.dob,
email: user.email,
whyWork: req.autosan.body.whyWork,
otherForm: req.autosan.body.otherForm,
experience: req.autosan.body.experience,
suggestions: req.autosan.body.suggestions,
selectedOption: req.autosan.body.selectedOption,
}
await StaffApplications.create(userParams)
res.json({ success: true })
} catch (e) { next(e) }
})
module.exports = router;