Tables for grades for postgres (and a fix to timezone update for postgres)

This commit is contained in:
mjollnir_
2005-03-29 03:51:14 +00:00
parent 61c787cea2
commit 8a72bfa258
2 changed files with 109 additions and 2 deletions
+54 -2
View File
@@ -946,7 +946,7 @@ function main_upgrade($oldversion=0) {
if ($oldversion < 2005032300) {
table_column('user', 'dstpreset', 'timezonename', 'varchar', '100');
execute_sql('UPDATE `'.$CFG->prefix.'user` SET timezonename = \'\'');
execute_sql('UPDATE '.$CFG->prefix.'user SET timezonename = \'\'');
}
@@ -973,7 +973,59 @@ function main_upgrade($oldversion=0) {
}
if ($oldversion < 2005032800) {
/// Need GRADE TABLES HERE!
modify_database('',"CREATE TABLE prefix_grade_category (
id SERIAL PRIMARY KEY,
name varchar(64) default NULL,
courseid integer NOT NULL default '0',
drop_x_lowest integer NOT NULL default '0',
bonus_points integer NOT NULL default '0',
hidden integer NOT NULL default '0',
weight decimal(4,2) default '0.00'
);");
modify_database('',"CREATE INDEX prefix_grade_category_courseid_idx ON prefix_grade_category (courseid);");
modify_database('',"CREATE TABLE prefix_grade_exceptions (
id SERIAL PRIMARY KEY,
courseid integer NOT NULL default '0',
grade_itemid integer NOT NULL default '0',
userid integer NOT NULL default '0'
);");
modify_database('',"CREATE INDEX prefix_grade_exceptions_courseid_idx ON prefix_grade_exceptions (courseid);");
modify_database('',"CREATE TABLE prefix_grade_item (
id SERIAL PRIMARY KEY,
courseid integer default NULL,
category integer default NULL,
modid integer default NULL,
cminstance integer default NULL,
scale_grade float(11) default '1.0000000000',
extra_credit integer NOT NULL default '0',
sort_order integer NOT NULL default '0'
);");
modify_database('',"CREATE INDEX prefix_grade_item_courseid_idx ON prefix_grade_item (courseid);");
modify_database('',"CREATE TABLE prefix_grade_letter (
id SERIAL PRIMARY KEY,
courseid integer NOT NULL default '0',
letter varchar(8) NOT NULL default 'NA',
grade_high decimal(4,2) NOT NULL default '100.00',
grade_low decimal(4,2) NOT NULL default '0.00'
);");
modify_database('',"CREATE INDEX prefix_grade_letter_courseid_idx ON prefix_grade_letter (courseid);");
modify_database('',"CREATE TABLE prefix_grade_preferences (
id SERIAL PRIMARY KEY,
courseid integer default NULL,
preference integer NOT NULL default '0',
value integer NOT NULL default '0'
);");
modify_database('',"CREATE UNIQUE INDEX prefix_grade_prefs_courseidpref_uk ON prefix_grade_preferences (courseid,preference);");
}
return $result;
+55
View File
@@ -127,6 +127,61 @@ CREATE INDEX prefix_event_userid_idx ON prefix_event (userid);
CREATE INDEX prefix_event_timestart_idx ON prefix_event (timestart);
CREATE INDEX prefix_event_timeduration_idx ON prefix_event (timeduration);
CREATE TABLE prefix_grade_category (
id SERIAL PRIMARY KEY,
name varchar(64) default NULL,
courseid integer NOT NULL default '0',
drop_x_lowest integer NOT NULL default '0',
bonus_points integer NOT NULL default '0',
hidden integer NOT NULL default '0',
weight decimal(4,2) default '0.00'
);
CREATE INDEX prefix_grade_category_courseid_idx ON prefix_grade_category (courseid);
CREATE TABLE prefix_grade_exceptions (
id SERIAL PRIMARY KEY,
courseid integer NOT NULL default '0',
grade_itemid integer NOT NULL default '0',
userid integer NOT NULL default '0'
);
CREATE INDEX prefix_grade_exceptions_courseid_idx ON prefix_grade_exceptions (courseid);
CREATE TABLE prefix_grade_item (
id SERIAL PRIMARY KEY,
courseid integer default NULL,
category integer default NULL,
modid integer default NULL,
cminstance integer default NULL,
scale_grade float(11) default '1.0000000000',
extra_credit integer NOT NULL default '0',
sort_order integer NOT NULL default '0'
);
CREATE INDEX prefix_grade_item_courseid_idx ON prefix_grade_item (courseid);
CREATE TABLE prefix_grade_letter (
id SERIAL PRIMARY KEY,
courseid integer NOT NULL default '0',
letter varchar(8) NOT NULL default 'NA',
grade_high decimal(4,2) NOT NULL default '100.00',
grade_low decimal(4,2) NOT NULL default '0.00'
);
CREATE INDEX prefix_grade_letter_courseid_idx ON prefix_grade_letter (courseid);
CREATE TABLE prefix_grade_preferences (
id SERIAL PRIMARY KEY,
courseid integer default NULL,
preference integer NOT NULL default '0',
value integer NOT NULL default '0'
);
CREATE UNIQUE INDEX prefix_grade_prefs_courseidpref_uk ON prefix_grade_preferences (courseid,preference);
CREATE TABLE prefix_groups (
id SERIAL PRIMARY KEY,
courseid integer NOT NULL default '0',