Skip to content

Feedbacklabs

Maaike Visser requested to merge feedbacklabs into development

What feature does this MR relate to?

This Merge Request closes #108 (closed).

What was done to implement this feature?

  1. Added functionality to CourseController and GroupService to allow mass enqueueing for a certain assignment. For each assignment in a course there is a button that allows the user to upload a CSV with groups that then are automatically enqueued for a lab in which they can sign off the assignment.
  2. Added a URL path (/lab/submit) to which a POST-request can be sent with an assignment ID and a netID. The student corresponding to the netID will then be automatically enqueued in a lab where they can sign of the assignment.
  3. Added functionality to timeslot buttons on the lab page to enroll/unenroll students to a specific slot.

What can still be done in the future?

  • Related to (1.), the mass enqueue button should only be visible when a lab is available for an assignment.
  • Related to (1.), when a new file is uploaded for the same assignment, users that already have an assigned slot should not be given a new slot, and users that are not present in the new file should have their slot revoked.
  • Related to (2.), some kind of authentication should be added such that only trusted IP addresses can send POST requests to the /lab/submit URL, or something along those lines.
  • Related to (2.), when a new post request for the same assignment/user combination is sent, the previous slot should be revoked and a new slot should be assigned.
    • Since it could happen that multiple assignments can be signed off in the same lab, in case of a different assignment id/same netid combination, a new timeslot should be assigned.
  • Related to (3.), currently students are given a random slot, even when a specific slot was selected. This should be changed so the selected and the assigned slot match.
  • Related to (3.), the student for a slot is selected with a drop-down menu. This menu should be filterable so that someone who wants to select a student does not have to scroll through a giant list of students.
  • Related to (1.) and (2.), some kind of error message should be displayed on screen/sent back to the sender of the POST request when the request fails.
Edited by Maaike Visser

Merge request reports