exercise_refresh_events();
}
+ if ($oldversion < 2004111200) {
+ execute_sql('ALTER TABLE prefix_exercise DROP INDEX course;',false);
+ execute_sql('ALTER TABLE prefix_exercise_submissions DROP INDEX exerciseid;',false);
+ execute_sql('ALTER TABLE prefix_exercise_assessments DROP INDEX exerciseid;',false);
+ execute_sql('ALTER TABLE prefix_exercise_elements DROP INDEX exerciseid;',false);
+ execute_sql('ALTER TABLE prefix_exercise_rubrics DROP INDEX exerciseid;',false);
+ execute_sql('ALTER TABLE 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);');
+ }
+
return true;
}
`showleaguetable` tinyint(3) unsigned NOT NULL default '0',
`usepassword` tinyint(3) unsigned NOT NULL default '0',
`password` varchar(32) NOT NULL default '',
- PRIMARY KEY (`id`)
+ PRIMARY KEY (`id`),
+ KEY `course` (`course`)
) COMMENT='Defines exercise';
# --------------------------------------------------------
`isexercise` tinyint(3) unsigned NOT NULL default '0',
`late` tinyint(3) unsigned NOT NULL default '0',
PRIMARY KEY (`id`),
- INDEX `userid` (`userid`)
+ INDEX `userid` (`userid`),
+ INDEX `exerciseid` (`exerciseid`)
) COMMENT='Info about submitted work from teacher and students';
# --------------------------------------------------------
`teachercomment` text NOT NULL default '',
PRIMARY KEY (`id`),
INDEX (`submissionid`),
- INDEX (`userid`)
+ INDEX (`userid`),
+ INDEX (`exerciseid`)
) COMMENT='Info about assessments by teacher and students';
# --------------------------------------------------------
`scale` tinyint(3) unsigned NOT NULL default '0',
`maxscore` tinyint(3) unsigned NOT NULL default '1',
`weight` tinyint(3) unsigned NOT NULL default '11',
- PRIMARY KEY (`id`)
+ PRIMARY KEY (`id`),
+ KEY `exerciseid` (`exerciseid`)
) COMMENT='Info about marking scheme of assignment';
# --------------------------------------------------------
`elementno` int(10) unsigned NOT NULL default '0',
`rubricno` tinyint(3) unsigned NOT NULL default '0',
`description` text NOT NULL,
- PRIMARY KEY (`id`)
+ PRIMARY KEY (`id`),
+ KEY `exerciseid` (`exerciseid`)
) COMMENT='Info about the rubrics marking scheme';
# --------------------------------------------------------
`feedback` text NOT NULL default '',
`grade` tinyint(3) NOT NULL default '0',
PRIMARY KEY (`id`),
- INDEX (`assessmentid`)
+ INDEX (`assessmentid`),
+ INDEX `exerciseid` (`exerciseid`)
) COMMENT='Info about individual grades given to each element';
# --------------------------------------------------------
exercise_refresh_events();
}
+ if ($oldversion < 2004111200) {
+ execute_sql('DROP INDEX prefix_exercise_course_idx;',false);
+ execute_sql('DROP INDEX prefix_exercise_submissions_exerciseid_idx;',false);
+ execute_sql('DROP INDEX prefix_exercise_assessments_exerciseid_idx;',false);
+ execute_sql('DROP INDEX prefix_exercise_rubrics_exerciseid_idx;',false);
+ execute_sql('DROP INDEX 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);');
+ }
+
return true;
}
password VARCHAR(32) NOT NULL default ''
);
+
+CREATE INDEX prefix_exercise_course_idx ON prefix_exercise (course);
+
# --------------------------------------------------------
#
isexercise INT NOT NULL default '0'
);
CREATE INDEX prefix_exercise_submissions_userid_idx ON prefix_exercise_submissions (userid);
+CREATE INDEX prefix_exercise_submissions_exerciseid_idx ON prefix_exercise_submissions (exerciseid);
+
# --------------------------------------------------------
#
# --------------------------------------------------------
CREATE INDEX prefix_exercise_assessments_submissionid_idx ON prefix_exercise_assessments (submissionid);
CREATE INDEX prefix_exercise_assessments_userid_idx ON prefix_exercise_assessments (userid);
+CREATE INDEX prefix_exercise_assessments_exerciseid_idx ON prefix_exercise_assessments (exerciseid);
# Table structure for table exercise_elements
#
rubricno INT NOT NULL default '0',
description text NOT NULL
);
+
+CREATE INDEX prefix_exercise_rubrics_exerciseid_idx ON prefix_exercise_rubrics (exerciseid);
+
# --------------------------------------------------------
#
);
CREATE INDEX prefix_exercise_grades_assessmentid_idx ON prefix_exercise_grades (assessmentid);
+CREATE INDEX prefix_exercise_grades_exerciseid_idx ON prefix_exercise_grades (exerciseid);
+
# --------------------------------------------------------
// This fragment is called by /admin/index.php
////////////////////////////////////////////////////////////////////////////////
-$module->version = 2004100800;
+$module->version = 2004111200;
$module->requires = 2004091700; // Requires this Moodle version
$module->cron = 60;