[ENHANCEMENT] Add support to create and override assignment mapping #37
Labels
enhancement
New feature or request
high priority
This issue has been prioritized
Module: Canvas
This issue relates to the Canvas API Wrapper
Module: Config
This issue relates to the Config module
Module: UI
This issue relates to UI
need analysis
review is needed
Description
For certain classes, assignments are created on an as-needed basis (ACM / ACM-W Attendance for 101) or updated in new assignments (A07A vs A072022 for 102), and there doesn't currently exist a way to elegantly handle these cases when selecting the assignments to grade.
Issue
Currently, the workaround for this involves creating a new config file after the assignment has been created on Canvas via the web interface. This is really time-consuming and not a good user experience. It is also annoying to have to interrupt the workflow to create a new assignment in Canvas or not have to re-pull the entire config file when a new assignment is created in Canvas in the 102 workflow.
Suggestion
https://canvas.instructure.com/doc/api/assignments.html#method.assignments_api.create
The Canvas API supports creating assignments with the assignments module for the API, it also supports pulling a single assignment with nothing but the course ID and the assignment ID.
For the case where the assignment exists on Canvas but not in the config file, a solution would be to prompt the user if they would like to override the warning when an assignment could not be found in the config file and then ask if the assignment already exists on Canvas, and if so, what the ID is to solely update the config file to add the assignment in.
In the case where the assignment does not yet exist, a solution would be to walk the user through creating a new assignment. This would include the assignment name, the points on the assignment, and the group that the assignment should be assigned to.
Acceptance Criteria
The text was updated successfully, but these errors were encountered: