Block a user
796f0d6ad1
membershipworks: Use GeneratedField for EventMeetingTime.duration
40ac6ef97f
Bump dependencies
f2332dbe37
membershipworks: Add EventExt instructor invoice fields
f5688e39c3
membershipworks: Scrape event data, with extension model for extra data
546b13428e
membershipworks: Allow get_events_list to use end date, retrieve categories
08dde9a4f4
membershipworks: Make MW api->model BaseModel more generic
02986bdabc
Replace {django-,}bleach with {django-,}nh3, as bleach is now deprecated
9e392fb945
wall-display: Only fetch the calendars that are used by the toolFilter
ec92effe91
Move shops definition to json file
97bcc1df6d
membershipworks: Add upcoming events generator
7afcc1f9e0
membershipworks: Add "refresh data" changelist actions to admin
5ddd0e68ac
membershipworks/api: Schedule scraping task
dc648d6770
membershipworks: Move scrape task to 'tasks' submodule
68c9b3f82d
membershipworks: Add methods to get event listing and events by eid/url
017aea4b3e
doorcontrol: Improve responsiveness of form controls and table in reports
e03b9e3c70
Always show admin facet counts in most models with filters
cacde865c0
doorcontrol: Convert HIDEvent.is_red to newly added GeneratedField
71ab17b2ce
Update django to 5.0
f53a8c601a
Bump dependencies
ba58d90bf7
doorcontrol: Move task scheduling into doorcontrol.apps directly
a50112c534
paperwork: Use window functions for CertificationVersion is_current/is_latest
caf8c2cf45
doorcontrol: Generate dashboard links for all reports
654d5e34bd
doorcontrol: Add change vs previous unit time to "Access per x" reports
a177ff1ed6
doorcontrol: Add busiest time of day/week reports
doorcontrol: Incorrect member deduplication in reports