var express = require('express'); var router = express.Router(); var genders = require('../database/scores/genders'); var games = require('../database/scores/games'); var seasons = require('../database/scores/seasons'); var sports = require('../database/scores/sports'); var divisions = require('../database/scores/divisions'); var genders = require('../database/scores/genders'); var teams = require('../database/scores/teams'); router.get('/', function(req, res, next) { res.render('manage', { title: 'Score Management' }); }); router.get('/game', function(req, res, next) { let title = req.query.game ? 'Edit Game' : 'Submit Score' res.render('manage/addgame', { title }); }); router.post('/game', function(req, res, next) { const seasonID = req.body['year']; const sportID = req.body['sport']; const gender = (req.body['gender'] == "female") ? genders.FEMALE : genders.MALE; const divisionID = req.body['division']; const date = req.body['date']; const team1ID = req.body['team1']; const team1Score = req.body['team1-score']; const team2ID = req.body['team2']; const team2Score = req.body['team2-score']; const id = req.body['game']; const remove = req.body['delete']; if(remove) games.remove(id) .then(res.redirect("/manage")); else if(id) games.edit(id, divisionId, seasonID, date, team1ID, team2ID, team1Score, team2Score) .then(res.redirect('/manage')); else games.add(divisionID, seasonID, date, team1ID, team2ID, team1Score, team2Score) .then(res.redirect("/manage")); }); router.get('/addseason', function(req, res, next) { res.render('manage/addseason', { title: 'Add Season', currentYear : (new Date()).getFullYear() }); }); router.post('/submitseason', function(req, res, next) { const year = req.body['year']; seasons.add(year) .then(res.send("SUCCESS")); }); router.get('/sport', function(req, res, next) { res.render('manage/addsport', { title: 'Add Sport' }); }); router.post('/sport', function(req, res, next) { const name = req.body['name']; const id = req.body['sport']; const remove = req.body['remove']; if(remove) sports.remove(id).then(res.redirect('/manage')); else if(id) sports.rename(id, name).then(res.redirect('/manage')); else sports.add(name).then(res.redirect('/manage')); }); router.get('/division', function(req, res, next) { let title = req.query.division ? 'Edit Division' : 'Add Division' res.render('manage/adddivision', { title }); }); router.post('/division', function(req, res, next) { const name = req.body['name']; const sport = req.body['sport']; const genderName = req.body['gender']; const id = req.body['division']; const remove = req.body['remove']; if(remove) divisions.remove(id).then(res.redirect('/manage')); else if(id) divisions.rename(id, name).then(res.redirect('/manage')); else { if(genderName == "both") { divisions.add(name, genders.FEMALE, sport) .then(divisions.add(name, genders.MALE, sport) .then(res.redirect("/manage"))); } else { const gender = (genderName == "female") ? genders.FEMALE : genders.MALE; divisions.add(name, gender, sport) .then(res.redirect("/manage")); } } }); router.get('/team', function(req, res, next) { let title = req.query.team ? 'Edit Team' : 'Add Team' res.render('manage/addteam', { title }); }); router.post('/team', function(req, res, next) { const name = req.body['name']; const sport = req.body['sport']; const id = req.body['team']; const remove = req.body['remove']; if(remove) teams.remove(id).then(res.redirect('/manage')); else if(id) teams.rename(id, name).then(res.redirect('/manage')); else teams.add(name, sport).then(res.redirect("/manage")); }); module.exports = router;