Skip to content

Compliance statuses

Everybody LOOP tracks against a certification carries exactly one status.

StatusMeaningReached when
PendingEnrolled on an edition, not yet completedThey are enrolled, or a new cycle starts
ValidHolds a certificate that covers todayThey complete a course belonging to the certification
ExpiringStill valid, but inside the expiry warning windowThe nightly run finds the expiration date within the certification's warning window
OverdueEnrolled, and the completion deadline has passedThe nightly run finds the completion due date in the past with no certificate

Expiring is a state of a valid certificate, not a failure: it exists so a warning can go out while there is still time to act. Overdue is about an enrolment running late, which is why one person can be Overdue on this year's course while last year's certificate is still valid.

What decides a status

One question: does a certificate cover today?

  • YesValid, or Expiring once inside the certification's warning window.
  • NoPending, or Overdue once the completion deadline has passed.

The status a row carried before does not affect the answer, which is why a recalculation can move somebody backwards as well as forwards.

There is no "Expired" status

When a certificate reaches the end of its validity the cycle closes, with two possible outcomes:

  • the person already has an active enrolment on an edition that can advance them, so they return to Pending for the new cycle;
  • nobody is renewing anything, so the row leaves the User status page.

Nothing is lost either way. The certificate is written to the certification history the moment it is issued, not when it lapses, so it is on the Certification history page from the day it was earned and stays there.

Where do I find people whose certificate has run out?

On the Certification history page, filtered by certification, with Period measured on set to the expiration date. That page lists every certificate ever issued with its window, so a window that has closed with no successor is exactly what you are looking at.

The count on the User status page therefore drops when somebody's cycle closes with no renewal under way.

The dates and courses behind a status

ColumnBelongs toMeaning
Enrolled atthe personWhen they entered this certification: their earliest enrolment on any of its editions. Renewing does not move it, and neither does an enrolment being suspended or reaching its end date. Being unenrolled does — see below.
Completion due datethe enrolmentThe deadline for the course they are expected to finish, capped by the hard deadline where one is set. Rewritten once per cycle: on renewal it is counted from the end of the validity that has just run out, so somebody enrolled months early does not start the renewal already late.
Current editionthe enrolmentThe edition they have an active enrolment on: the most advanced visible one when they are on several. When every enrolment they hold is on a hidden course, the most advanced of those is named instead, marked Hidden — they are enrolled and cannot reach it. Why the course is hidden is not recorded anywhere, so ask whoever hid it. No enrolment means nobody has enrolled them on any edition of this chain.
Issuing coursethe certificateThe edition whose completion produced the certificate on record.
Issued datethe certificateWhen that completion happened.
Expiration datethe certificateThe issued date plus the validity period. The hard deadline does not apply here.

The first columns describe the enrolment side, the last three the certificate it produced. A completion due date falling after the expiration date is normal.

Unenrolling moves "Enrolled at"

Every figure on this page is worked out from what Moodle holds, and "Enrolled at" is worked out from the enrolment records themselves. Suspending an enrolment or letting it reach its end date leaves the record in place, so the date does not move. Unenrolling deletes it. Somebody who is unenrolled from the edition they first entered on, and who is still in the certification through another edition, is therefore dated from the earliest enrolment they still have — and the completion deadline counted from it moves with it, for anybody who has not been certified yet.

Suspend the enrolment instead of removing it where the date matters. Where somebody has already been certified, nothing moves: the deadline for their next cycle is counted from the end of the validity they hold, not from their entry date.

The certificate on record is the one that covers longest, not the one completed most recently, so finishing an older edition late cannot shorten coverage that is still running.

No badge marks somebody for being on the "wrong" course

Every completion of an edition issues a certificate, and which edition somebody is enrolled on is decided by whoever enrolled them. To find whoever is still on an earlier edition than the newest one, filter the User status page by Current edition.

Two of a certification's open editions holding active enrolments at the same time is reported — on the certification, in the Manage certifications table, as a count of how many of its open editions currently hold enrolments.

Where statuses are worked out

In the nightly scheduled tasks, and immediately for one person when Moodle records an enrolment or a course completion. Nothing is worked out on page view: the pages read stored figures and say when those were last worked out. See Scheduled tasks.

Every boundary — midnight, "today", the day an expiry falls on — is computed in the site's time zone, not the time zone of whoever is looking.