Author Course Content › New Course Form
🎬 Simulate: · AF-3A Reset

New Course Form

Programming × Digital Skills ×
Type to search and select one or more tags
Type to search published courses

No image selected

See course thumbnail requirements for format and size limits
📝 Spec notes — UC-CCM.01 / SCR-CCM.03 (fields, actions, requirements)
Identity
  • Screen: SCR-CCM.03 — New Course Form
  • Use case: UC-CCM.01 — Author Course Content
Brief description

Simple course setup page — opened when the instructor clicks "Add Course" from the Author Workspace. Shows only the Course Settings form (no lesson structure, no tabs). After Save → creates a new course (with a default main branch), registers the instructor as owner, and redirects to the Content Editor with "Course Content" tab active. Cancel → returns to Author Workspace without creating any data.

Fields
  • title "Course title" — text · required · min_length 1, max_length 255 · always
  • tags "Tags" — autocomplete_multiselect · optional · options limited to non-financial tag groups · always
  • description "Description" — textarea · optional · max_length 2000 · always
  • objectives "Objectives" — textarea · optional · max_length 2000 · always
  • has_forum "Include forum" — boolean · optional · default unchecked · always
  • duration "Duration (minutes)" — number · optional · min 1 · always
  • difficulty "Difficulty level" — enum [beginner, intermediate, advanced, expert] · optional · always
  • age_rating "Age restriction" — text · optional · always
  • prerequisite_courses "Prerequisites" — autocomplete_multiselect · optional · 0 or more published courses excluding self · always
  • thumbnail_ref "Course thumbnail" — file · optional · always
  • grading_description "Grading description" — textarea · optional · max_length 1000 · always
Actions
  • save "Save" — always · triggers UC-CCM.01-M-3 · creates course, opens Content Editor
  • cancel "Cancel" — always · triggers UC-CCM.01-A-2A-1 · returns to Author Workspace, no data created
Additional requirements
  1. Only authenticated instructors may access this page.
  2. Client-side validation on title (required); server-side re-validates all fields; on success atomically creates Course + default Branch + Author(owner) in one transaction.
  3. Thumbnail field has 2 states: Empty (Choose file / drag-drop) and Has-image (preview + Change + Delete buttons); validated client-side on select, re-validated server-side on save; on failure the error shows below the field and the existing image (if any) is preserved.
  4. WCAG accessibility (NFR-09) — keyboard navigable, labels associated with inputs, logical focus order.