add insert lineup before and after
This commit is contained in:
@@ -23,6 +23,46 @@ const loadEvent = (req,res,next) => {
|
||||
next();
|
||||
}
|
||||
|
||||
// Middleware
|
||||
const loadEvents = async (req,res,next) => {
|
||||
const {team_id, event_id} = req.params
|
||||
req.timeline = {}
|
||||
await Promise.all(req.promises)
|
||||
const {recent_events, upcoming_events} = req
|
||||
const eventIds = [...recent_events.map(e=>e.id), event_id, ...upcoming_events.map(e=>e.id)]
|
||||
// if (!req.event_lineup){
|
||||
bulkLoadTypes = ['event','eventLineup', 'eventLineupEntry']
|
||||
req.promises.push(
|
||||
teamsnap.bulkLoad(
|
||||
{teamId: team_id, types: bulkLoadTypes, scopeTo:'event', event__id:eventIds},
|
||||
null,
|
||||
(err, items) => {teamsnapCallback(err, items, {req, source:"loadEvents", method:'bulkLoad'})}
|
||||
)
|
||||
.then(items => tsUtils.groupTeamsnapItems(items, bulkLoadTypes))
|
||||
.then(items => {
|
||||
req.timeline.events = items.events;
|
||||
req.timeline.event_lineups = items.eventLineups;
|
||||
req.timeline.event_lineup_entries = items.eventLineupEntries;
|
||||
})
|
||||
)
|
||||
|
||||
req.promises.push(
|
||||
teamsnap.loadAvailabilities(
|
||||
{eventId: eventIds},
|
||||
(err, items) => {teamsnapCallback(err, items, {req, source:"loadEvents", method:'loadAvailabilities'})}
|
||||
).then(availabilities => {
|
||||
req.timeline.availabilities = availabilities
|
||||
}
|
||||
)
|
||||
)
|
||||
// }
|
||||
// else {
|
||||
// // const {event_lineup} = req
|
||||
// }
|
||||
const {event_lineup} = req
|
||||
next();
|
||||
}
|
||||
|
||||
router.use("/:team_id([0-9]+)/event/:event_id([0-9]+)", loadEvent)
|
||||
|
||||
// Routes
|
||||
@@ -31,4 +71,4 @@ router.get("/:team_id([0-9]+)/event/:event_id([0-9]+)", eventsController.getEven
|
||||
// router.get("/:team_id([0-9]+)/event/:event_id([0-9]+)/lineup", eventsController.getLineup);
|
||||
// router.get("/:team_id([0-9]+)/event/:event_id([0-9]+)/lineup_card", eventsController.getLineupCard);
|
||||
|
||||
module.exports = {router, loadEvent}
|
||||
module.exports = {router, loadEvent, loadEvents}
|
||||
@@ -5,6 +5,8 @@ const tsUtils = require('../lib/utils')
|
||||
const multer = require("multer");
|
||||
const upload = multer()
|
||||
const { doubleCsrfProtection } = require('../middlewares/csrf');
|
||||
const {loadRecentAndUpcomingEvents} = require('../middlewares/bulkload')
|
||||
const {loadEvents} = require('./event')
|
||||
const {teamsnapCallback} = require("../lib/utils")
|
||||
|
||||
|
||||
@@ -51,10 +53,10 @@ router.get("/:team_id([0-9]+)/event/:event_id([0-9]+)/lineup", async (req,res) =
|
||||
}
|
||||
)
|
||||
|
||||
router.get("/:team_id([0-9]+)/event/:event_id([0-9]+)/lineup/adjacent", doubleCsrfProtection, loadRecentAndUpcomingEvents, loadEvents, eventsLineupController.getAdjacentEventLineup);
|
||||
router.post("/:team_id([0-9]+)/event/:event_id([0-9]+)/lineup/:event_lineup_id([0-9]+)/email", upload.none(), doubleCsrfProtection, eventsLineupController.getEventLineupEmail )
|
||||
router.get ("/:team_id([0-9]+)/event/:event_id([0-9]+)/lineup/:event_lineup_id([0-9]+)", upload.none(), doubleCsrfProtection, eventsLineupController.getEventLineup);
|
||||
router.post("/:team_id([0-9]+)/event/:event_id([0-9]+)/lineup/:event_lineup_id([0-9]+)", upload.none(), doubleCsrfProtection, eventsLineupController.postEventLineup);
|
||||
// router.get("/:team_id([0-9]+)/event/:event_id([0-9]+)/lineup_card", eventsController.getLineupCard);
|
||||
router.get("/:team_id([0-9]+)/event/:event_id([0-9]+)/lineup/:event_lineup_id([0-9]+)/entries", eventsLineupController.getEventLineupEntries)
|
||||
|
||||
|
||||
module.exports = {router, loadEventLineup}
|
||||
@@ -1,7 +1,7 @@
|
||||
const express = require("express");
|
||||
const eventsSheetController = require("../controllers/eventsheet");
|
||||
const {loadEventLineup} = require("./eventlineup");
|
||||
const {loadEvent} = require("./event");
|
||||
const {loadEvent, loadEvents} = require("./event");
|
||||
const {loadRecentAndUpcomingEvents} = require("../middlewares/bulkload")
|
||||
const router = express.Router();
|
||||
const tsUtils = require('../lib/utils')
|
||||
@@ -10,46 +10,6 @@ const multer = require("multer");
|
||||
const upload = multer()
|
||||
|
||||
|
||||
// Middleware
|
||||
const loadEvents = async (req,res,next) => {
|
||||
const {team_id, event_id} = req.params
|
||||
req.timeline = {}
|
||||
await Promise.all(req.promises)
|
||||
const {recent_events, upcoming_events} = req
|
||||
const eventIds = [...recent_events.map(e=>e.id), event_id, ...upcoming_events.map(e=>e.id)]
|
||||
// if (!req.event_lineup){
|
||||
bulkLoadTypes = ['event','eventLineup', 'eventLineupEntry']
|
||||
req.promises.push(
|
||||
teamsnap.bulkLoad(
|
||||
{teamId: team_id, types: bulkLoadTypes, scopeTo:'event', event__id:eventIds},
|
||||
null,
|
||||
(err, items) => {teamsnapCallback(err, items, {req, source:"loadEvents", method:'bulkLoad'})}
|
||||
)
|
||||
.then(items => tsUtils.groupTeamsnapItems(items, bulkLoadTypes))
|
||||
.then(items => {
|
||||
req.timeline.events = items.events;
|
||||
req.timeline.event_lineups = items.eventLineups;
|
||||
req.timeline.event_lineup_entries = items.eventLineupEntries;
|
||||
})
|
||||
)
|
||||
|
||||
req.promises.push(
|
||||
teamsnap.loadAvailabilities(
|
||||
{eventId: eventIds},
|
||||
(err, items) => {teamsnapCallback(err, items, {req, source:"loadEvents", method:'loadAvailabilities'})}
|
||||
).then(availabilities => {
|
||||
req.timeline.availabilities = availabilities
|
||||
}
|
||||
)
|
||||
)
|
||||
// }
|
||||
// else {
|
||||
// // const {event_lineup} = req
|
||||
// }
|
||||
const {event_lineup} = req
|
||||
next();
|
||||
}
|
||||
|
||||
const linksForEventSheet = async (req, res, next) => {
|
||||
await Promise.all(req.promises)
|
||||
const events = [...req.recent_events, req.event, ...req.upcoming_events]
|
||||
|
||||
Reference in New Issue
Block a user