Create Cohort
No co-instructors yet โ click "Add Co-Instructor" to select from the course's instructor list
Screen Flow (from flow.puml):
๐ Spec notes โ UC-LMS.04 / SCR-LMS.17 (fields, actions, requirements)
- Screen: SCR-LMS.17 โ Manage Cohort Editor
- Use case: UC-LMS.04 โ Manage Cohort
Form page for Instructors to create or edit a cohort. Consolidates all cohort data on a single page โ cohort name, description, application window, start/end dates, maximum enrollment, Forum option, and Require Approval option โ along with a co-instructor list the Instructor can add from this page.
course"Course" โ enum (auto-complete dropdown) ยท required ยท cohort mode: editable (filter: CourseStaff of logged-in instructor) / self-paced: read-only (pre-filled from context)version_major"Version Major" โ enum ยท required when course_type == cohort ยท visible only for cohort mode ยท options loaded from published CourseVersions of selected course ยท reloads on course changecurrent_version_display"Version" โ text (read-only) ยท visible only for self-paced ยท always shows "Latest Version (Auto)"name"Cohort Name" โ text ยท required ยท min_length:1 max_length:200description"Description" โ textarea ยท optionalapply_start_date"Application Open Date" โ date ยท optionalapply_end_date"Application Close Date" โ date ยท optional ยท validation: apply_end_date >= apply_start_date if both setstart_date"Start Date" โ date ยท requiredend_date"End Date" โ date ยท required ยท validation: end_date > start_datemax_members"Maximum Enrollment" โ number ยท optional ยท min:1 ยท null = unlimitedinstitution_id"Institution" โ lookup ยท optionalhas_forum"Enable Discussion Forum" โ boolean ยท default: falserequire_approval"Require Instructor Approval Before Joining" โ boolean ยท default: falseco_instructor_list"Co-Instructors" โ enum ยท optional ยท filter: instructors already assigned to this course, excludes logged-in user
save"Save" โ enabled when name != '' AND start_date != null AND end_date != null AND end_date > start_date AND (course_type == self_paced OR version_major != null) ยท triggers UC-LMS.04-M-8cancel"Cancel" โ always ยท navigate โ SCR-LMS.16 (without saving)add_co_instructor"Add Co-Instructor" โ always ยท triggers SUC-LMS.04.01-M-2 โ opens SCR-LMS.42 (embedded modal above)remove_co_instructor"Remove" โ per row ยท triggers SUC-LMS.04.01-A-1B-1 โ opens SCR-LMS.43 (embedded modal above)
- Co-instructors that can be added must already be in the course's instructor list โ dropdown filters list, excludes logged-in user [refs: none]
- Save failure (see UC-LMS.04 additional requirement #10) โ system shows inline error: (a) name empty: "Please enter a cohort name" (b) duplicate name in course: "This name already exists in this Course" (c) end date invalid: "End date must be after start date" (d) version_major not selected (cohort mode): "Please select a Version Major" [refs: none]
โณ Embedded dialog: SCR-LMS.42 โ Co-Instructor Picker Dialog
Brief: Search-and-select pop-up for adding a co-instructor, opened from the "Add Co-Instructor" button on this screen. Shows only instructors in the course's instructor list who have not yet been added to this cohort.
search_query"Search (name or email)" โ text ยท max_length:100 ยท not requiredselected_instructor_id"Selected Instructor" โ enum ยท single select ยท required
confirm"Confirm" โ enabled when selected_instructor_id != null ยท triggers SUC-LMS.04.01-M-5cancel"Cancel" โ always ยท triggers SUC-LMS.04.01-A-5A-1
โณ Embedded dialog: SCR-LMS.43 โ Remove Co-Instructor Confirmation Dialog
Brief: Confirmation window for removing a co-instructor. Shows the instructor's name; removal takes effect when the cohort edit page is saved. Uses a fixed overlay โ not dismissible via Escape or clicking outside.
instructor_name"Instructor Name" โ text ยท read-only
confirm"Confirm" โ always ยท triggers SUC-LMS.04.01-A-1B-3cancel"Cancel" โ always ยท triggers SUC-LMS.04.01-A-1B.3A-1
CourseVersion(course_id, version_major, published_at, is_latest) โ not yet in entities.puml