Moodle PHP Documentation 4.3
Moodle 4.3.5 (Build: 20240610) (7dcfaa79f78)
restore_process_course_modules_availability Class Reference

Process legacy module availability records in backup_ids. More...

Inheritance diagram for restore_process_course_modules_availability:
restore_execution_step restore_step base_step executable loggable

Public Member Functions

 apply_date_offset ($value)
 Apply course startdate offset based in original course startdate and course_offset_startdate setting Note we are using one static cache here, but by restoreid, so it's ok for concurrence/multiple executions in the same request.
 
 decrypt ($value)
 Returns symmetric-key AES-256 decryption of base64 encoded contents.
 
 destroy ()
 Destroy all circular references.
 
 execute ()
 This function will perform all the actions necessary to achieve the execution of the plan/part/task.
 
 get_name ()
 
 log ($message, $level, $a=null, $depth=null, $display=false)
 This function will be responsible for handling the params, and to call to the corresponding logger->process() once all modifications in params have been performed.
 
 set_task ($task)
 

Protected Member Functions

 define_execution ()
 Function that will contain all the code to be executed.
 
 get_basepath ()
 
 get_courseid ()
 
 get_logger ()
 
 get_restoreid ()
 
 get_setting ($name)
 
 get_setting_value ($name)
 
 get_settings ()
 Protected API starts here.
 
 setting_exists ($name)
 

Protected Attributes

string $name
 One simple name for identification purposes.
 
base_task null $task
 Task this is part of.
 

Detailed Description

Process legacy module availability records in backup_ids.

Matches course modules and grade item id once all them have been already restored. Only if all matchings are satisfied the availability condition will be created. At the same time, it is required for the site to have that functionality enabled.

This step is included only to handle legacy backups (2.6 and before). It does not do anything for newer backups.

License
http://www.gnu.org/copyleft/gpl.html GNU Public License

Member Function Documentation

◆ apply_date_offset()

restore_step::apply_date_offset ( $value)
inherited

Apply course startdate offset based in original course startdate and course_offset_startdate setting Note we are using one static cache here, but by restoreid, so it's ok for concurrence/multiple executions in the same request.

Note: The policy is to roll date only for configurations and not for user data. see MDL-9367.

Parameters
int$valueTime value (seconds since epoch), or empty for nothing
Return values
intTime value after applying the date offset, or empty for nothing

◆ decrypt()

restore_step::decrypt ( $value)
inherited

Returns symmetric-key AES-256 decryption of base64 encoded contents.

This method is used in restore operations to decrypt contents encrypted with encrypted_final_element automatically decoding (base64) and decrypting contents using the key stored in backup_encryptkey config.

Requires openssl, cipher availability, and key existence (backup automatically sets it if missing). Integrity is provided via HMAC.

Parameters
string$valueencrypted_final_element value to decode and decrypt.
Return values
string|nulldecoded and decrypted value or null if the operation can not be performed.

◆ define_execution()

restore_process_course_modules_availability::define_execution ( )
protected

Function that will contain all the code to be executed.

Reimplemented from restore_execution_step.

◆ destroy()

base_step::destroy ( )
inherited

Destroy all circular references.

It helps PHP 5.2 a lot!

◆ execute()

restore_execution_step::execute ( )
inherited

This function will perform all the actions necessary to achieve the execution of the plan/part/task.

Implements executable.

◆ log()

base_step::log ( $message,
$level,
$a = null,
$depth = null,
$display = false )
inherited

This function will be responsible for handling the params, and to call to the corresponding logger->process() once all modifications in params have been performed.

Implements loggable.


The documentation for this class was generated from the following file: