fix recent, upcoming date picking

This commit is contained in:
2024-03-18 20:11:52 -05:00
parent 00b270e0f6
commit 2b497a0227

View File

@@ -1,25 +1,26 @@
exports.loadRecentAndUpcomingEvents = async (req, res, next) => { exports.loadRecentAndUpcomingEvents = async (req, res, next) => {
const {team_id, event_id} = req.params const {team_id, event_id} = req.params
const page_size = req.query.page_size ? Number(req.query.page_size) : 4 const page_size = req.query.page_size ? Number(req.query.page_size) : 4
var subject_date = "" var subject_date
if (event_id) { if (event_id) {
const event = await teamsnap.loadEvents({id: event_id}).pop() const event = await teamsnap.loadEvents({id: event_id}).pop()
subject_date = event.startDate.toISOString().slice(0,10) const new_date = new Date(event.startDate.getTime()+10000);
subject_date = event.startDate
} }
else { else {
subject_date = new Date().toISOString().slice(0,10) subject_date = new Date()
} }
req.promises.push( req.promises.push(
teamsnap.bulkLoad({ teamsnap.bulkLoad({
teamId: team_id, teamId: team_id,
types: ["event", "availabilitySummary"], types: ["event", "availabilitySummary"],
scopeTo: "event", scopeTo: "event",
event__startedAfter: subject_date, event__startedAfter: new Date(subject_date.getTime()+10000),
event__pageSize: page_size + 1 event__pageSize: page_size
}) })
.then(items => tsUtils.groupTeamsnapItems(items)) .then(items => tsUtils.groupTeamsnapItems(items))
.then((items)=>{ .then((items)=>{
req.upcoming_events=items.events ? items.events.slice(1) : []; req.upcoming_events=items.events ? items.events : [];
const availabilitySummaries=items.availabilitySummaries; const availabilitySummaries=items.availabilitySummaries;
req.upcoming_events.forEach((event) => { req.upcoming_events.forEach((event) => {
event.link('availabilitySummary', availabilitySummaries.find(a=>a.eventId==event.id)) event.link('availabilitySummary', availabilitySummaries.find(a=>a.eventId==event.id))
@@ -32,7 +33,7 @@ exports.loadRecentAndUpcomingEvents = async (req, res, next) => {
teamId: team_id, teamId: team_id,
types: ["event", "availabilitySummary"], types: ["event", "availabilitySummary"],
scopeTo: "event", scopeTo: "event",
event__startedBefore: subject_date, event__startedBefore: new Date(subject_date.getTime()-10000),
event__pageSize: page_size, event__pageSize: page_size,
event__sortStartDate: "desc" event__sortStartDate: "desc"
}) })