From 91fe2cfe63ff4b092bc0ba7aa12d4dad3ac5392e Mon Sep 17 00:00:00 2001 From: guillaumebarat Date: Thu, 20 Feb 2025 16:22:37 +1000 Subject: [PATCH 1/2] fix #3 rename table and change sql in upgrade for compatibility with mysql --- classes/lifecycle/log_table.php | 2 +- classes/lifecycle/step.php | 2 +- db/install.xml | 12 ++++++------ db/upgrade.php | 28 +++++++++++++++++++--------- version.php | 2 +- 5 files changed, 28 insertions(+), 18 deletions(-) diff --git a/classes/lifecycle/log_table.php b/classes/lifecycle/log_table.php index 6f23faa..318de76 100644 --- a/classes/lifecycle/log_table.php +++ b/classes/lifecycle/log_table.php @@ -64,7 +64,7 @@ public function __construct($filterdata = []) { f.filename as filename, f.filesize as filesize, f.timecreated as createdat'; $from = '{files} f JOIN {context} c ON c.id = f.contextid - LEFT JOIN {tool_lcbackupcourselogstep_metadata} md ON f.id = md.fileid'; + LEFT JOIN {tool_lcbackupcourselogstep_m} md ON f.id = md.fileid'; $where = ["f.component = :component AND filename <> '.'"]; $params = ['component' => 'tool_lcbackupcourselogstep']; diff --git a/classes/lifecycle/step.php b/classes/lifecycle/step.php index 8acb7bc..294daec 100644 --- a/classes/lifecycle/step.php +++ b/classes/lifecycle/step.php @@ -131,7 +131,7 @@ public function process_course($processid, $instanceid, $course) { // Write data to file. $newfile = dataformat::write_data_to_filearea($filerecord, $fileformat, $columns, $logs); - $DB->insert_record('tool_lcbackupcourselogstep_metadata', [ + $DB->insert_record('tool_lcbackupcourselogstep_m', [ 'shortname' => $course->shortname, 'fullname' => $course->fullname, 'oldcourseid' => $course->id, diff --git a/db/install.xml b/db/install.xml index 8e370f8..88c4970 100644 --- a/db/install.xml +++ b/db/install.xml @@ -4,14 +4,14 @@ xsi:noNamespaceSchemaLocation="../../../../lib/xmldb/xmldb.xsd" > - +
- - - - - + + + + + diff --git a/db/upgrade.php b/db/upgrade.php index 04c0690..8d2d4de 100644 --- a/db/upgrade.php +++ b/db/upgrade.php @@ -30,10 +30,11 @@ */ function xmldb_tool_lcbackupcourselogstep_upgrade($oldversion) { global $DB; + $dbman = $DB->get_manager(); if ($oldversion < 2024102000) { - $table = new xmldb_table('tool_lcbackupcourselogstep_metadata'); + $table = new xmldb_table('tool_lcbackupcourselogstep_m'); $table->add_field('id', XMLDB_TYPE_INTEGER, '10', null, XMLDB_NOTNULL, XMLDB_SEQUENCE, null); $table->add_field('shortname', XMLDB_TYPE_CHAR, '255', null, XMLDB_NOTNULL, null, null); @@ -50,7 +51,7 @@ function xmldb_tool_lcbackupcourselogstep_upgrade($oldversion) { } $sql1 = " - INSERT INTO {tool_lcbackupcourselogstep_metadata} (shortname, fullname, oldcourseid, fileid, timecreated) + INSERT INTO {tool_lcbackupcourselogstep_m} (shortname, fullname, oldcourseid, fileid, timecreated) SELECT crs.shortname, crs.fullname, crs.id AS oldcourseid, @@ -74,13 +75,15 @@ function xmldb_tool_lcbackupcourselogstep_upgrade($oldversion) { UPDATE {files} SET contextid = :contextid WHERE id IN ( - SELECT f.id - FROM {files} f - JOIN {context} ctx ON ctx.id = f.contextid - WHERE ctx.contextlevel = :contextlevel - AND f.component = :component - AND f.filearea = :filearea - ) + SELECT id FROM ( + SELECT f.id + FROM {files} f + JOIN {context} ctx ON ctx.id = f.contextid + WHERE ctx.contextlevel = :contextlevel + AND f.component = :component + AND f.filearea = :filearea + ) as fs + ) "; $DB->execute($sql2, [ 'contextid' => \context_system::instance()->id, @@ -91,6 +94,13 @@ function xmldb_tool_lcbackupcourselogstep_upgrade($oldversion) { upgrade_plugin_savepoint(true, 2024102000, 'tool', 'lcbackupcourselogstep'); } + if ($oldversion < 2025022000) { + $table = new xmldb_table('tool_lcbackupcourselogstep_metadata'); + if ($dbman->table_exists($table)) { + $dbman->rename_table($table, 'tool_lcbackupcourselogstep_m'); + } + upgrade_plugin_savepoint(true, 2025022000, 'tool', 'lcbackupcourselogstep'); + } return true; } diff --git a/version.php b/version.php index 4927c47..923bd81 100644 --- a/version.php +++ b/version.php @@ -24,7 +24,7 @@ defined('MOODLE_INTERNAL') || die(); -$plugin->version = 2024102000; +$plugin->version = 2025022000; $plugin->requires = 2022041200; $plugin->component = 'tool_lcbackupcourselogstep'; From fc8a7ff70ffe59d859c1010cf12eaaa160034bc8 Mon Sep 17 00:00:00 2001 From: guillaumebarat Date: Tue, 25 Feb 2025 10:56:22 +1000 Subject: [PATCH 2/2] Update requires version to match with dependencies plugin --- version.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.php b/version.php index 923bd81..752a1b7 100644 --- a/version.php +++ b/version.php @@ -25,7 +25,7 @@ defined('MOODLE_INTERNAL') || die(); $plugin->version = 2025022000; -$plugin->requires = 2022041200; +$plugin->requires = 2022112800; $plugin->component = 'tool_lcbackupcourselogstep'; $plugin->dependencies = [