⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 upgrade.php

📁 很棒的在线教学系统
💻 PHP
字号:
<?php  // $Id: upgrade.php,v 1.5.2.2 2008/12/12 13:12:59 tjhunt Exp $// This file keeps track of upgrades to // the multichoice qtype plugin//// Sometimes, changes between versions involve// alterations to database structures and other// major things that may break installations.//// The upgrade function in this file will attempt// to perform all the necessary actions to upgrade// your older installtion to the current version.//// If there's something it cannot do itself, it// will tell you what you need to do.//// The commands in here will all be database-neutral,// using the functions defined in lib/ddllib.phpfunction xmldb_qtype_multichoice_upgrade($oldversion=0) {    global $CFG, $THEME, $db;    $result = true;    // This upgrade actually belongs to the description question type,    // but that does not have a DB upgrade script. Therefore, multichoice    // is doing it.    // The need for this is that for a while, descriptions were being created    // with a defaultgrade of 1, when it shoud be 0. We need to reset them all to 0.    // See MDL-7925.     if ($result && $oldversion < 2006121500) {        $result = $result && set_field('question', 'defaultgrade', 0,                'qtype', DESCRIPTION, 'defaultgrade', 1);    }    // Add a field so that question authors can choose whether and how the Choices are numbered.    // Subsequently changed to not create an enum constraint, because it was causing problems -    // See 2007081700 update.    if ($result && $oldversion < 2007041300) {        $table = new XMLDBTable('question_multichoice');        $field = new XMLDBField('answernumbering');        $field->setAttributes(XMLDB_TYPE_CHAR, '10', null, XMLDB_NOTNULL, null, null, null, 'abc', 'incorrectfeedback');        $result = $result && add_field($table, $field);    }    // This upgrade actually belongs to the description question type,    // but that does not have a DB upgrade script. Therefore, multichoice    // is doing it.    // The need for this is that for a while, descriptions were being created    // with a defaultgrade of 1, when it shoud be 0. We need to reset them all to 0.    // This is re-occurrence of MDL-7925, so we need to do it again.     if ($result && $oldversion < 2007072000) {        require_once($CFG->libdir . '/questionlib.php');        $result = $result && set_field('question', 'defaultgrade', 0,                'qtype', DESCRIPTION, 'defaultgrade', 1);    }    // Drop enum constraint on 'answernumbering' column, and change ABC to ABCD becuase MySQL    // sometimes can't cope with things that differ only by case.    if ($result && $oldversion < 2007081700) {        if ($result && $oldversion >= 2007041300) {            $table = new XMLDBTable('question_multichoice');            $field = new XMLDBField('answernumbering');            $field->setAttributes(XMLDB_TYPE_CHAR, '10', null, XMLDB_NOTNULL, null, null, null, 'abc', 'incorrectfeedback');            $result = $result && change_field_enum($table, $field);        }        $result = $result && set_field('question_multichoice', 'answernumbering', 'ABCD', 'answernumbering', 'ABC');    }    return $result;}?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -