function exercise_upgrade($oldversion) { // This function does anything necessary to upgrade // older versions to match current functionality global $CFG; if ($oldversion < 2003111400) { execute_sql(" ALTER TABLE `{$CFG->prefix}exercise_submissions` ADD INDEX (`userid`)"); execute_sql(" ALTER TABLE `{$CFG->prefix}exercise_submissions` DROP INDEX `title`"); execute_sql(" ALTER TABLE `{$CFG->prefix}exercise_assessments` ADD INDEX (`submissionid`)"); execute_sql(" ALTER TABLE `{$CFG->prefix}exercise_assessments` ADD INDEX (`userid`)"); execute_sql(" ALTER TABLE `{$CFG->prefix}exercise_grades` ADD INDEX (`assessmentid`)"); } if ($oldversion < 2003121000) { execute_sql(" ALTER TABLE `{$CFG->prefix}exercise_submissions` ADD `late` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0'"); } if ($oldversion < 2004062300) { table_column("exercise", "", "gradinggrade", "INTEGER", "4", "UNSIGNED", "0", "NOT NULL", "grade"); table_column("exercise", "", "assessmentcomps", "INTEGER", "4", "UNSIGNED", "2", "NOT NULL", "usemaximum"); execute_sql("ALTER TABLE `{$CFG->prefix}exercise` DROP COLUMN `teacherweight`"); execute_sql("ALTER TABLE `{$CFG->prefix}exercise` DROP COLUMN `gradingweight`"); } if ($oldversion < 2004090200) { table_column("exercise", "", "usepassword", "INTEGER", "4", "UNSIGNED", "0", "NOT NULL"); table_column("exercise", "", "password", "VARCHAR", "32", "", "", "NOT NULL"); } if ($oldversion < 2004091000) { table_column("exercise_assessments", "generalcomment", "generalcomment", "text", "", "", "", "NOT NULL"); table_column("exercise_assessments", "teachercomment", "teachercomment", "text", "", "", "", "NOT NULL"); } if ($oldversion < 2004100800) { include_once "{$CFG->dirroot}/mod/exercise/lib.php"; exercise_refresh_events(); } if ($oldversion < 2004111200) { execute_sql("ALTER TABLE {$CFG->prefix}exercise DROP INDEX course;", false); execute_sql("ALTER TABLE {$CFG->prefix}exercise_submissions DROP INDEX exerciseid;", false); execute_sql("ALTER TABLE {$CFG->prefix}exercise_assessments DROP INDEX exerciseid;", false); execute_sql("ALTER TABLE {$CFG->prefix}exercise_elements DROP INDEX exerciseid;", false); execute_sql("ALTER TABLE {$CFG->prefix}exercise_rubrics DROP INDEX exerciseid;", false); execute_sql("ALTER TABLE {$CFG->prefix}exercise_grades DROP INDEX exerciseid;", false); modify_database('', 'ALTER TABLE prefix_exercise ADD INDEX course (course);'); modify_database('', 'ALTER TABLE prefix_exercise_submissions ADD INDEX exerciseid (exerciseid);'); modify_database('', 'ALTER TABLE prefix_exercise_assessments ADD INDEX exerciseid (exerciseid);'); modify_database('', 'ALTER TABLE prefix_exercise_elements ADD INDEX exerciseid (exerciseid);'); modify_database('', 'ALTER TABLE prefix_exercise_rubrics ADD INDEX exerciseid (exerciseid);'); modify_database('', 'ALTER TABLE prefix_exercise_grades ADD INDEX exerciseid (exerciseid);'); } ////// DO NOT ADD NEW THINGS HERE!! USE upgrade.php and the lib/ddllib.php functions. return true; }
function exercise_upgrade($oldversion) { // This function does anything necessary to upgrade // older versions to match current functionality global $CFG; if ($oldversion < 2004062300) { table_column("exercise", "", "gradinggrade", "INTEGER", "4", "UNSIGNED", "0", "NOT NULL", "grade"); table_column("exercise", "", "assessmentcomps", "INTEGER", "4", "UNSIGNED", "2", "NOT NULL", "usemaximum"); } if ($oldversion < 2004090200) { table_column("exercise", "", "usepassword", "INTEGER", "4", "UNSIGNED", "0", "NOT NULL"); table_column("exercise", "", "password", "VARCHAR", "32", "", "", "NOT NULL"); } if ($oldversion < 2004091000) { table_column("exercise_assessments", "generalcomment", "generalcomment", "text", "", "", "", "NOT NULL"); table_column("exercise_assessments", "teachercomment", "teachercomment", "text", "", "", "", "NOT NULL"); } if ($oldversion < 2004100800) { include_once "{$CFG->dirroot}/mod/exercise/lib.php"; exercise_refresh_events(); } if ($oldversion < 2004111200) { execute_sql("DROP INDEX {$CFG->prefix}exercise_course_idx;", false); execute_sql("DROP INDEX {$CFG->prefix}exercise_submissions_exerciseid_idx;", false); execute_sql("DROP INDEX {$CFG->prefix}exercise_assessments_exerciseid_idx;", false); execute_sql("DROP INDEX {$CFG->prefix}exercise_rubrics_exerciseid_idx;", false); execute_sql("DROP INDEX {$CFG->prefix}exercise_grades_exerciseid_idx;", false); modify_database('', 'CREATE INDEX prefix_exercise_course_idx ON prefix_exercise (course);'); modify_database('', 'CREATE INDEX prefix_exercise_submissions_exerciseid_idx ON prefix_exercise_submissions (exerciseid);'); modify_database('', 'CREATE INDEX prefix_exercise_assessments_exerciseid_idx ON prefix_exercise_assessments (exerciseid);'); modify_database('', 'CREATE INDEX prefix_exercise_rubrics_exerciseid_idx ON prefix_exercise_rubrics (exerciseid);'); modify_database('', 'CREATE INDEX prefix_exercise_grades_exerciseid_idx ON prefix_exercise_grades (exerciseid);'); } ////// DO NOT ADD NEW THINGS HERE!! USE upgrade.php and the lib/ddllib.php functions. return true; }