From e01c2d047dd6b7baa28ee4b8faa7a283692038ee Mon Sep 17 00:00:00 2001 From: moodler Date: Fri, 30 Jul 2004 07:03:39 +0000 Subject: [PATCH] FIx up some resources that didn't upgrade properly before. :-/ --- mod/resource/db/mysql.php | 26 +++++++++++++++++++++++++- mod/resource/db/postgres7.php | 23 +++++++++++++++++++++++ mod/resource/version.php | 2 +- 3 files changed, 49 insertions(+), 2 deletions(-) diff --git a/mod/resource/db/mysql.php b/mod/resource/db/mysql.php index 9ad0cb0d42..5def5d2dc6 100644 --- a/mod/resource/db/mysql.php +++ b/mod/resource/db/mysql.php @@ -51,8 +51,32 @@ function resource_upgrade($oldversion) { if ($oldversion < 2004072600) { modify_database("", "UPDATE prefix_resource SET type='file' WHERE type='url';"); modify_database("", "UPDATE prefix_resource SET type='file' WHERE type='program';"); + + } + + if ($oldversion < 2004073000) { + /// Make sure the "frame" flag is turned on for things that can support it (for a smooth upgrade) + require_once("$CFG->dirroot/files/mimetypes.php"); + if ($resources = get_records_select('resource', "type = 'file' AND options = '' AND popup = ''")) { + foreach ($resources as $resource) { + $mimetype = mimeinfo("type", $resource->reference); + $embedded = false; + if (in_array($mimetype, array('image/gif','image/jpeg','image/png')) + or (substr($mimetype, 0, 10) == "video/x-ms") + or ($mimetype == "audio/mp3") + or ($mimetype == "video/quicktime")) { + $embedded = true; + } + if (!$embedded) { /// Make sure it's in a frame + $newresource->id = $resource->id; + $newresource->options = 'frame'; + update_record('resource', $newresource); + } + } + } + rebuild_course_cache(); } - + return true; } diff --git a/mod/resource/db/postgres7.php b/mod/resource/db/postgres7.php index fa37b6fd00..fd1f152a30 100644 --- a/mod/resource/db/postgres7.php +++ b/mod/resource/db/postgres7.php @@ -49,6 +49,29 @@ function resource_upgrade($oldversion) { modify_database("", "UPDATE prefix_resource SET type='file' WHERE type='program';"); } + if ($oldversion < 2004073000) { + /// Make sure the "frame" flag is turned on for things that can support it (for a smooth upgrade) + require_once("$CFG->dirroot/files/mimetypes.php"); + if ($resources = get_records_select('resource', "type = 'file' AND options = '' AND popup = ''")) { + foreach ($resources as $resource) { + $mimetype = mimeinfo("type", $resource->reference); + $embedded = false; + if (in_array($mimetype, array('image/gif','image/jpeg','image/png')) + or (substr($mimetype, 0, 10) == "video/x-ms") + or ($mimetype == "audio/mp3") + or ($mimetype == "video/quicktime")) { + $embedded = true; + } + if (!$embedded) { /// Make sure it's in a frame + $newresource->id = $resource->id; + $newresource->options = 'frame'; + update_record('resource', $newresource); + } + } + } + rebuild_course_cache(); + } + return true; } diff --git a/mod/resource/version.php b/mod/resource/version.php index b7706bea8b..c2b74eca31 100644 --- a/mod/resource/version.php +++ b/mod/resource/version.php @@ -5,7 +5,7 @@ // This fragment is called by /admin/index.php //////////////////////////////////////////////////////////////////////////////// -$module->version = 2004072600; +$module->version = 2004073000; $module->requires = 2004052501; // Requires this Moodle version $module->cron = 0; -- 2.39.5