Description
Description
The onsite class changes grid (ajax_status.js) auto-refreshes enrollment counts every 5 minutes (300,000ms):
// esp/public/media/scripts/onsite/ajax_status.js, line 1482
setInterval(refresh_counts, 300000);
During live events like Splash, admins need near-real-time visibility into class enrollment and check-in numbers. A 5-minute delay means admins may be making decisions based on stale data — for example, a class could fill up and remain visually "open" for up to 5 minutes.
The refresh_counts() function only fetches lightweight delta data (enrollment_status, checkin_status, full_status ), not the full catalog, so more frequent polling is feasible without significant server load.
Steps to Reproduce
- Open the onsite class changes grid (/onsite//classchange_grid)
- Have another admin enroll a student into a class
- Wait and observe the enrollment count on the grid does not update for up to 5 minutes
Expected Behavior
Enrollment data should refresh every 30–60 seconds for a usable live monitoring experience. Ideally, the interval should be configurable via a Django Tag (e.g., onsite_refresh_interval_ms) so each chapter can tune it for their server capacity
Actual Behavior
Data refreshes every 5 minutes (300,000ms), which is too slow for real-time onsite decision-making.
Screenshots
No response
Operating System
No response
Browser
No response
Additional Context
No response
Description
Description
The onsite class changes grid (ajax_status.js) auto-refreshes enrollment counts every 5 minutes (300,000ms):
During live events like Splash, admins need near-real-time visibility into class enrollment and check-in numbers. A 5-minute delay means admins may be making decisions based on stale data — for example, a class could fill up and remain visually "open" for up to 5 minutes.
The
refresh_counts()function only fetches lightweight delta data (enrollment_status,checkin_status,full_status), not the full catalog, so more frequent polling is feasible without significant server load.Steps to Reproduce
Expected Behavior
Enrollment data should refresh every 30–60 seconds for a usable live monitoring experience. Ideally, the interval should be configurable via a Django Tag (e.g.,
onsite_refresh_interval_ms) so each chapter can tune it for their server capacityActual Behavior
Data refreshes every 5 minutes (300,000ms), which is too slow for real-time onsite decision-making.
Screenshots
No response
Operating System
No response
Browser
No response
Additional Context
No response