Skip to content

Latest commit

 

History

History
69 lines (62 loc) · 8.31 KB

File metadata and controls

69 lines (62 loc) · 8.31 KB

Implementation

User Architecture

User Architecture

The above image shows the Flask routing for clients (Candidates and guests). It shows the user experience flow from login to schedule to candidate info card and back. Several pages edit or access the Database:

Admin Architecture

Admin Architecture The above image shows the Flask routing for admins (the Admissions office). It shows the user experience flow from login to schedule to the manager page, etc. Several pages edit or access the database:

Database Structure

Events Collection

Events Collection

Special notes:

  • There is a dummy document in the events collection that stores general information for all events. At the moment, the only information in the document is the current Candidates' Weekend, but there could be additional information added (like default locations or a list of speakers, for example).
  • In order to avoid multiple documents having the same ID, but still allowing for multiple events across multiple Candidates' Weekends (and allowing for slight differences in events across Candidates' Weekends), the document ID for an event has the event's name and hyphenated additions if the event is a copy of another event and the Candidates' Weekend number. When displaying the event, two methods are used.
    • get_raw_name takes in an event name and strips the Candidates' Weekend number; this is used in the edit event form.
    • get_display_name takes in an event name and strips all additions (including the word "copy"); this is used in the schedule and in the additional event information pages.

Users Collection

Users Collection