MDL-29256 Fixed incorrect calculation of contentformat

Legacy Resource modules of the type Web page force the HTML format for
their content. The format stored in the reference field is valid only
for legacy resources of the type Plain text page. See page_20_migrate()
function.
This commit is contained in:
David Mudrak
2012-02-21 11:19:57 +01:00
parent 0dde394db5
commit cb3ef22065
+11 -4
View File
@@ -53,11 +53,18 @@ class moodle1_mod_page_handler extends moodle1_resource_successor_handler {
$page['intro'] = $data['intro'];
$page['introformat'] = $data['introformat'];
$page['content'] = $data['alltext'];
$page['contentformat'] = (int)$data['reference'];
// this is unexpected but just in case (the same step applied during upgrade)
if ($page['contentformat'] < 0 or $page['contentformat'] > 4) {
$page['contentformat'] = FORMAT_MOODLE;
if ($data['type'] === 'html') {
// legacy Resource of the type Web page
$page['contentformat'] = FORMAT_HTML;
} else {
// legacy Resource of the type Plain text page
$page['contentformat'] = (int)$data['reference'];
if ($page['contentformat'] < 0 or $page['contentformat'] > 4) {
$page['contentformat'] = FORMAT_MOODLE;
}
}
$page['legacyfiles'] = RESOURCELIB_LEGACYFILES_ACTIVE;