From: toyomoyo Date: Tue, 12 Sep 2006 06:08:57 +0000 (+0000) Subject: adding new table for keeping track of user's last access time for any course page X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=b277dd0a53b35613fa4e73c53334e16a3912d9e5;p=moodle.git adding new table for keeping track of user's last access time for any course page --- diff --git a/lib/db/migrate2utf8.xml b/lib/db/migrate2utf8.xml index 7efc35a2e1..5971f21f58 100755 --- a/lib/db/migrate2utf8.xml +++ b/lib/db/migrate2utf8.xml @@ -8,7 +8,7 @@ - +
diff --git a/lib/db/mysql.php b/lib/db/mysql.php index eae85f8967..fa3e6f1771 100644 --- a/lib/db/mysql.php +++ b/lib/db/mysql.php @@ -2186,6 +2186,20 @@ function main_upgrade($oldversion=0) { execute_sql("ALTER TABLE {$CFG->prefix}course_sections CHANGE sequence sequence text NULL AFTER section"); } + // table to keep track of course page access times, used in online participants block, and participants list + if ($oldversion < 2006091200) { + execute_sql("CREATE TABLE {$CFG->prefix}user_lastaccess ( + `id` int(10) unsigned NOT NULL auto_increment, + `userid` int(10) unsigned NOT NULL default '0', + `courseid` int(10) unsigned NOT NULL default '0', + `timeaccess` int(10) unsigned NOT NULL default '0', + KEY `userid` (`userid`), + KEY `courseid` (`courseid`), + UNIQUE KEY `userid-courseid` (`userid`, `courseid`), + PRIMARY KEY (`id`) + )TYPE=MYISAM COMMENT ='time user last accessed any page in a course';", true); + } + return $result; } diff --git a/lib/db/mysql.sql b/lib/db/mysql.sql index a82e0adcb5..2fe88c2793 100644 --- a/lib/db/mysql.sql +++ b/lib/db/mysql.sql @@ -1001,6 +1001,17 @@ CREATE TABLE prefix_role_names ( PRIMARY KEY (`id`) ) TYPE=MYISAM COMMENT ='role names in native strings'; +CREATE TABLE prefix_user_lastaccess ( + `id` int(10) unsigned NOT NULL auto_increment, + `userid` int(10) unsigned NOT NULL default '0', + `courseid` int(10) unsigned NOT NULL default '0', + `timeaccess` int(10) unsigned NOT NULL default '0', + KEY `userid` (`userid`), + KEY `courseid` (`courseid`), + UNIQUE KEY `userid-courseid` (`userid`, `courseid`), + PRIMARY KEY (`id`) +) TYPE=MYISAM COMMENT ='time user last accessed any page in a course'; + INSERT INTO prefix_log_display (module, action, mtable, field) VALUES ('user', 'view', 'user', 'CONCAT(firstname," ",lastname)'); INSERT INTO prefix_log_display (module, action, mtable, field) VALUES ('course', 'user report', 'user', 'CONCAT(firstname," ",lastname)'); INSERT INTO prefix_log_display (module, action, mtable, field) VALUES ('course', 'view', 'course', 'fullname'); diff --git a/lib/db/postgres7.php b/lib/db/postgres7.php index 7b5111a240..44ef464074 100644 --- a/lib/db/postgres7.php +++ b/lib/db/postgres7.php @@ -1786,6 +1786,20 @@ function main_upgrade($oldversion=0) { execute_sql("ALTER TABLE {$CFG->prefix}course_sections ALTER COLUMN sequence DROP DEFAULT"); } + // table to keep track of course page access times, used in online participants block, and participants list + if ($oldversion < 2006091200) { + execute_sql("CREATE TABLE {$CFG->prefix}user_lastaccess ( + id SERIAL PRIMARY KEY, + userid integer NOT NULL default 0, + courseid integer NOT NULL default 0, + timeaccess integer NOT NULL default 0 + );", true); + + execute_sql("CREATE INDEX {$CFG->prefix}user_lastaccess_userid_idx ON {$CFG->prefix}user_lastaccess (userid);", true); + execute_sql("CREATE INDEX {$CFG->prefix}user_lastaccess_courseid_idx ON {$CFG->prefix}user_lastaccess (courseid);", true); + execute_sql("CREATE UNIQUE INDEX {$CFG->prefix}user_lastaccess_useridcourseid_idx ON {$CFG->prefix}user_lastaccess (userid, courseid);", true); + + } return $result; } diff --git a/lib/db/postgres7.sql b/lib/db/postgres7.sql index 65f752fb8d..e1071f90c9 100644 --- a/lib/db/postgres7.sql +++ b/lib/db/postgres7.sql @@ -764,6 +764,17 @@ CREATE INDEX prefix_role_names_roleid_idx ON prefix_role_names (roleid); CREATE INDEX prefix_role_names_contextid_idx ON prefix_role_names (contextid); CREATE UNIQUE INDEX prefix_role_names_roleidcontextid_idx ON prefix_role_names (roleid, contextid); +CREATE TABLE prefix_user_lastaccess ( + id SERIAL PRIMARY KEY, + userid integer NOT NULL default 0, + courseid integer NOT NULL default 0, + timeaccess integer NOT NULL default 0 +); + +CREATE INDEX prefix_user_lastaccess_userid_idx ON prefix_user_lastaccess (userid); +CREATE INDEX prefix_user_lastaccess_courseid_idx ON prefix_user_lastaccess (courseid); +CREATE UNIQUE INDEX prefix_user_lastaccess_useridcourseid_idx ON prefix_user_lastaccess (userid, courseid); + INSERT INTO prefix_log_display (module, action, mtable, field) VALUES ('user', 'view', 'user', 'firstname||\' \'||lastname'); INSERT INTO prefix_log_display (module, action, mtable, field) VALUES ('course', 'user report', 'user', 'firstname||\' \'||lastname'); INSERT INTO prefix_log_display (module, action, mtable, field) VALUES ('course', 'view', 'course', 'fullname');