50
50
defined('MOODLE_INTERNAL') || die;
53
* Structure step to restore one basiclti activity
53
* Structure step to restore one lti activity
55
55
class restore_lti_activity_structure_step extends restore_activity_structure_step {
71
71
$data->course = $this->get_courseid();
73
73
require_once($CFG->dirroot.'/mod/lti/lib.php');
74
// Clean any course or site typeid. All modules
75
// are restored as self-contained. Note this is
76
// an interim solution until the issue below is implemented.
77
// TODO: MDL-34161 - Fix restore to support course/site tools & submissions.
75
80
$newitemid = lti_add_instance($data, null);
77
// insert the basiclti record
78
//$newitemid = $DB->insert_record('lti', $data);
79
82
// immediately after inserting "activity" record, call this
80
83
$this->apply_activity_instance($newitemid);
83
86
protected function after_execute() {
86
$basicltis = $DB->get_records('lti');
87
foreach ($basicltis as $basiclti) {
88
if (!$DB->get_record('lti_types_config',
89
array('typeid' => $basiclti->typeid, 'name' => 'toolurl', 'value' => $basiclti->toolurl))) {
91
$basiclti->typeid = 0;
94
$basiclti->placementsecret = uniqid('', true);
95
$basiclti->timeplacementsecret = time();
97
$DB->update_record('lti', $basiclti);
100
// Add basiclti related files, no need to match by itemname (just internally handled context)
87
// Add lti related files, no need to match by itemname (just internally handled context)
101
88
$this->add_related_files('mod_lti', 'intro', null);