Skip to content

What is a Block?

Frank Matranga edited this page Dec 20, 2019 · 2 revisions

Blocks are one of the most important documents in LATE. They represent a scheduled event in the user's calendar. Currently a block can be associated with one of three different things:

  • An assessment (assignment or exam) known as "work blocks"
  • A course known as "course blocks"
  • A to do item known as "todo blocks"

Users can schedule these blocks of time in their calendar through a variety of ways.

They have their own model, routes, and controller at /server/api/blocks.

Here are some important fields they have:

  • a unique _id
  • the student they are owned by
  • the time and dates they start and end
  • an optional location

Assessments keep track of what blocks they have with a _blocks array that holds the _ids of the blocks scheduled for them. Notice that individual blocks don't have a way to know what assessment they belong to on their own. This is okay since we never use blocks outside of the context of their owner assessment.

Courses and todos work the same.

Users schedule work blocks manually in a variety of ways. They can add/edit/remove work blocks on an assessment's overview page, they can add/edit work blocks on the Dashboard calendar, and soonTM LATE will be able to suggest times to schedule them for users.