|
Moodle APIs
3.8
Moodle 3.8.6 (Build: 20201109)
|
Public Member Functions | |
| eval_cron_field ($field, $min, $max) | |
| Take a cron field definition and return an array of valid numbers with the range min-max. More... | |
| execute () | |
| Checks all course-level rule subscriptions and activates/deactivates based on current course access. More... | |
| get_component () | |
| Getter for $component. More... | |
| get_cron_lock () | |
| Get the current lock for the entire cron. More... | |
| get_day () | |
| Getter for $day. More... | |
| get_day_of_week () | |
| Getter for $dayofweek. More... | |
| get_disabled () | |
| Getter for $disabled. More... | |
| get_fail_delay () | |
| Getter for $faildelay. More... | |
| get_hour () | |
| Getter for $hour. More... | |
| get_last_run_time () | |
| Get the last run time for this scheduled task. More... | |
| get_lock () | |
| Get the current lock for this task. More... | |
| get_minute () | |
| Getter for $minute. More... | |
| get_month () | |
| Getter for $month. More... | |
| get_name () | |
| Get a descriptive name for this task. More... | |
| get_next_run_time () | |
| Get the next run time for this task. More... | |
| get_next_scheduled_time () | |
| Calculate when this task should next be run based on the schedule. More... | |
| get_run_if_component_disabled () | |
| Override this function if you want this scheduled task to run, even if the component is disabled. More... | |
| is_blocking () | |
| Getter for $blocking. More... | |
| is_customised () | |
| Has this task been changed from it's default config? More... | |
| set_blocking ($blocking) | |
| Setter for $blocking. More... | |
| set_component ($component) | |
| Setter for $component. More... | |
| set_cron_lock (\core\lock\lock $lock) | |
| Set the current lock for the entire cron process. More... | |
| set_customised ($customised) | |
| Has this task been changed from it's default config? More... | |
| set_day ($day) | |
| Setter for $day. More... | |
| set_day_of_week ($dayofweek) | |
| Setter for $dayofweek. More... | |
| set_disabled ($disabled) | |
| Setter for $disabled. More... | |
| set_fail_delay ($faildelay) | |
| Setter for $faildelay. More... | |
| set_hour ($hour) | |
| Setter for $hour. More... | |
| set_last_run_time ($lastruntime) | |
| Set the last run time for this scheduled task. More... | |
| set_lock (\core\lock\lock $lock) | |
| Set the current lock for this task. More... | |
| set_minute ($minute) | |
| Setter for $minute. More... | |
| set_month ($month) | |
| Setter for $month. More... | |
| set_next_run_time ($nextruntime) | |
| Set the next run time for this task. More... | |
Public Attributes | |
| const | DAYOFWEEKMAX = 6 |
| Maximum dayofweek value. | |
| const | DAYOFWEEKMIN = 0 |
| Minimum dayofweek value. | |
| const | HOURMAX = 23 |
| Maximum hour value. | |
| const | HOURMIN = 0 |
| Minimum hour value. | |
| const | MINUTEMAX = 59 |
| Maximum minute value. | |
| const | MINUTEMIN = 0 |
| Minimum minute value. | |
Protected Member Functions | |
| get_course_from_rowdata ($rowdata) | |
| Returns a partial course record, created from properties of the supplied recordset row object. More... | |
| get_subscription_from_rowdata ($rowdata) | |
| Returns a partial subscription record, created from properties of the supplied recordset row object. More... | |
| get_user_from_rowdata ($rowdata) | |
| Returns a partial user record, created from properties of the supplied recordset row object. More... | |
| is_user_setup ($user) | |
| Determines whether a user is fully set up, using cached results where possible. More... | |
| user_can_access_course ($user, $course, $capability) | |
| Determines a user's access to a course with a given capability, using cached results where possible. More... | |
Protected Attributes | |
| array | $courseaccesscache = array() |
| 2d static cache, indexed by courseid and userid, storing whether a user can access the course with the 'tool/monitor:subscribe' capability. | |
| array | $userssetupcache = array() |
| 1d static cache, indexed by userid, storing whether or not the user has been fully set up. | |
|
inherited |
Take a cron field definition and return an array of valid numbers with the range min-max.
| string | $field | - The field definition. |
| int | $min | - The minimum allowable value. |
| int | $max | - The maximum allowable value. |
| array(int) |
| tool_monitor\task\check_subscriptions::execute | ( | ) |
Checks all course-level rule subscriptions and activates/deactivates based on current course access.
The ordering of checks within the task is important for optimisation purposes. The aim is to be able to make a decision about whether to activate/deactivate each subscription without making unnecessary checks. The ordering roughly follows the context model, starting with system and user checks and moving down to course and course-module only when necessary.
For example, if the user is suspended, then any active subscription is made inactive right away. I.e. there is no need to check site-level, course-level or course-module-level permissions. Likewise, if a subscriptions is site-level, there is no need to check course-level and course-module-level permissions.
The task performs the following checks, in this order:
Reimplemented from core\task\task_base.
|
inherited |
Getter for $component.
| string |
|
protected |
Returns a partial course record, created from properties of the supplied recordset row object.
Intended to return a minimal record for specific use within this class and in subsequent access control calls only.
| stdClass | $rowdata | the row object. |
| stdClass | a partial course record. |
|
inherited |
Get the current lock for the entire cron.
| core |
|
inherited |
Getter for $day.
| string |
|
inherited |
Getter for $dayofweek.
| string |
|
inherited |
Getter for $disabled.
| bool |
|
inherited |
Getter for $faildelay.
| int |
|
inherited |
Getter for $hour.
| string |
|
inherited |
Get the last run time for this scheduled task.
| int |
|
inherited |
Get the current lock for this task.
| core |
|
inherited |
Getter for $minute.
| string |
|
inherited |
Getter for $month.
| string |
| tool_monitor\task\check_subscriptions::get_name | ( | ) |
Get a descriptive name for this task.
| string | name of the task. |
Reimplemented from core\task\scheduled_task.
|
inherited |
Get the next run time for this task.
| int | timestamp |
|
inherited |
Calculate when this task should next be run based on the schedule.
| int::$nextruntime,. |
|
inherited |
Override this function if you want this scheduled task to run, even if the component is disabled.
| bool |
|
protected |
Returns a partial subscription record, created from properties of the supplied recordset row object.
Intended to return a minimal record for specific use within this class and in subsequent access control calls only.
| stdClass | $rowdata | the row object. |
| stdClass | a partial subscription record. |
|
protected |
Returns a partial user record, created from properties of the supplied recordset row object.
Intended to return a minimal record for specific use within this class and in subsequent access control calls only.
| stdClass | $rowdata | the row object. |
| stdClass | a partial user record. |
|
inherited |
Getter for $blocking.
| bool |
|
inherited |
Has this task been changed from it's default config?
| bool |
|
protected |
Determines whether a user is fully set up, using cached results where possible.
| stdClass | $user | the user record. |
| bool | true if the user is fully set up, false otherwise. |
|
inherited |
Setter for $blocking.
| bool | $blocking |
|
inherited |
Setter for $component.
| string | $component |
|
inherited |
Set the current lock for the entire cron process.
| core\lock\lock | $lock |
|
inherited |
Has this task been changed from it's default config?
| bool |
|
inherited |
Setter for $day.
| string | $day |
|
inherited |
Setter for $dayofweek.
| string | $dayofweek |
|
inherited |
Setter for $disabled.
| bool | $disabled |
|
inherited |
Setter for $faildelay.
| int | $faildelay |
|
inherited |
Setter for $hour.
Accepts a special 'R' value which will be translated to a random hour.
| string | $hour |
|
inherited |
Set the last run time for this scheduled task.
| int | $lastruntime |
|
inherited |
Set the current lock for this task.
| core\lock\lock | $lock |
|
inherited |
Setter for $minute.
Accepts a special 'R' value which will be translated to a random minute.
| string | $minute |
|
inherited |
Setter for $month.
| string | $month |
|
inherited |
Set the next run time for this task.
| int | $nextruntime |
|
protected |
Determines a user's access to a course with a given capability, using cached results where possible.
| stdClass | $user | the user record. |
| stdClass | $course | the course record. |
| string | $capability | the capability to check. |
| bool | true if the user can access the course with the specified capability, false otherwise. |