Skip to Content
Wisteria is in beta — these docs are evolving fast.
TrainerSubmitting a course for approval

Submitting a course for approval

Wisteria’s submission flow is course-scoped, not module-scoped. You don’t submit one module at a time — you submit the whole course as a bundle, after marking every module ready.

Step 1 — Mark each module ready

On every module’s Quiz tab, there’s a Ready to Submit button.

Click it to flip the module to “ready.” The button toggles to ✓ Ready to Submit (click to undo). You can un-flip if you change your mind.

What “ready” means: you the trainer think this module is finished and waiting for the rest of the course. It doesn’t submit anything yet.

Two preconditions:

  • The module must have at least one card.
  • The module must have at least one quiz question.

If either is missing, the Ready button is disabled with an inline hint.

Step 2 — The auto-popup modal

When you mark the last module in a course as Ready — meaning every module in the course is now ready — a submission modal pops up automatically on the module page. You don’t have to navigate to the course detail page.

The modal asks:

  • Course title — confirmed (already filled in)
  • Module count — confirmation that you intended to submit all N modules
  • Recertification — toggle on if learners need to re-take annually
  • Recert interval — if recert is on, set the days (365 / 180 / 90 as presets)

Two actions at the bottom:

  • Save & exit — close the modal, KEEP the Ready flags, defer submission for later
  • Submit — send the whole course for approval

Step 3 — Submit

Click Submit. What happens server-side:

  1. Wisteria checks every module has a quiz with at least one question (quiz gate).
  2. For each module, Wisteria creates an approval_request row pointing at the current workflow (based on the course’s tags).
  3. Every module’s status flips from draft to pending_approval.
  4. Approvers (the people assigned to step 1 of the workflow) get notified by email + Slack.
  5. The course appears on the approvals kanban under “Pending Approval.”

The flow takes about 2 seconds. You see a confirmation toast and the page redirects back to the course detail view.

Step 4 — Track progress

From the course detail page you can see each module’s individual status. Modules approve / reject per-module — you don’t wait for one big decision at the end.

You’ll get an email when:

  • A reviewer approves a module
  • A reviewer rejects a module (with their comment)
  • A reviewer asks for a query (asks a question without rejecting yet)

If a module is rejected, see Resubmitting after rejection.

”Save & exit” — what it does

If you click Save & exit on the submit modal:

  • The Ready flags STAY on every module.
  • No approval_request rows are created.
  • The course is still in draft status.
  • A banner appears at the top of every module in the course: “All N modules in [Course Title] are ready. Submit course.” — clicking it re-opens the submit modal.

Use Save & exit when you want to mark modules Ready (so you don’t lose your place) but defer the actual submission — e.g. you want to double-check with someone before submitting, or you want to ship the submission tomorrow morning when reviewers are online.

What if not all modules are ready

You can’t submit a course until every module is marked Ready. The submit modal only auto-pops on the last click that takes the course to N/N ready.

If you have a 3-module course with 2 ready and 1 you’re not happy with yet, you can:

  • Finish the third module — the modal will pop on the next Ready click.
  • Delete the third module — the modal will pop the moment N matches the new N.
  • Submit a partial course — not supported. Wisteria’s model is course-scoped submission. Either the whole course is ready or none of it is.

What if a module changes after Ready is marked

If you edit a flashcard or a quiz question on a module that’s already marked Ready, Wisteria clears the Ready flag for that module — you’ll need to re-mark it Ready before the course can be submitted.

This is intentional: a stale “Ready” flag would mean reviewers might approve content that you’ve since changed.

What if a course doesn’t have a tag

The submit modal won’t open. There’s an inline hint on the course detail page: “This course needs at least one tag before it can be submitted.” Click through to Course Settings → add a tag → come back.

See Tags for the rationale.

After submission

The trainer’s role on a submitted course is to wait and respond to feedback. You can:

  • Watch each module’s status update on the course detail page
  • Check the Queries tab at /admin/approvals/queries for any rejections
  • Respond to queries (see Resubmitting after rejection)

Once every module is approved, you’ll see a banner: “This course is ready to publish.” Click Publish to deliver it to learners.

Notifications

You’ll get notifications for:

  • Each module approval (email)
  • Each module rejection (email, with reviewer’s comment)
  • The whole course is approved (email + Slack, if Slack is configured)
  • The course has been published (sent to assigned learners, not to you)
Last updated on