Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 4.0.x will end 8 May 2023 (12 months).
  • Bug fixes for security issues in 4.0.x will end 13 November 2023 (18 months).
  • PHP version: minimum PHP 7.3.0 Note: the minimum PHP version has increased since Moodle 3.10. PHP 7.4.x is also supported.

Differences Between: [Versions 310 and 400] [Versions 311 and 400] [Versions 39 and 400] [Versions 400 and 402] [Versions 400 and 403]

Course completion status for a particular user/course

Author: Aaron Barnes <aaronb@catalyst.net.nz>
Copyright: 2009 Catalyst IT Ltd
License: http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
File Size: 250 lines (8 kb)
Included or required:0 times
Referenced: 2 times
Includes or requires: 0 files

Defines 1 class

completion_completion:: (6 methods):
  fetch()
  is_complete()
  mark_enrolled()
  mark_inprogress()
  mark_complete()
  _save()


Class: completion_completion  - X-Ref

Course completion status for a particular user/course

fetch($params)   X-Ref
Finds and returns a data_object instance based on params.

return: data_object instance of data_object or false if none found.
param: array $params associative arrays varname = >value

is_complete()   X-Ref
Return status of this completion

return: bool

mark_enrolled($timeenrolled = null)   X-Ref
Mark this user as started (or enrolled) in this course

If the user is already marked as started, no change will occur

return: int|null id of completion record on successful update.
param: integer $timeenrolled Time enrolled (optional)

mark_inprogress($timestarted = null)   X-Ref
Mark this user as inprogress in this course

If the user is already marked as inprogress, the time will not be changed

return: int|null id of completion record on successful update.
param: integer $timestarted Time started (optional)

mark_complete($timecomplete = null)   X-Ref
Mark this user complete in this course

This generally happens when the required completion criteria
in the course are complete.

return: int|null id of completion record on successful update.
param: integer $timecomplete Time completed (optional)

_save()   X-Ref
Save course completion status

This method creates a course_completions record if none exists
return: int|null id of completion record on successful update.