]> git.mjollnir.org Git - moodle.git/commitdiff
adding new table for keeping track of user's last access time for any course page
authortoyomoyo <toyomoyo>
Tue, 12 Sep 2006 06:08:57 +0000 (06:08 +0000)
committertoyomoyo <toyomoyo>
Tue, 12 Sep 2006 06:08:57 +0000 (06:08 +0000)
lib/db/migrate2utf8.xml
lib/db/mysql.php
lib/db/mysql.sql
lib/db/postgres7.php
lib/db/postgres7.sql

index 7efc35a2e1f26a9b7694d24eeb7caa4cb13e8669..5971f21f58d6af6400139b8313d5f9e2b351097f 100755 (executable)
@@ -8,7 +8,7 @@
         <FIELD name="tracer" method="NO_CONV" type="text" length="0" />
       </FIELDS>
     </TABLE>
+    <TABLE name="user_lastaccess" />
     <TABLE name="role">
          <FIELDS>
            <FIELD name="name" method="PHP_FUNCTION" type="varchar" length="255">
index eae85f8967f855dc63f7beee1b4640ec0d31d536..fa3e6f1771db9b1e8749dcb850dc39dfe51e5f2e 100644 (file)
@@ -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;
 }
 
index a82e0adcb5d00908ec85c25e2edc7ebd03b357fa..2fe88c27935f649c617ae94d6c9b33f415b174c8 100644 (file)
@@ -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');
index 7b5111a240acf9a2fbef2fdd8b9b7022d6c880ba..44ef464074a61be7f88d06b0a7889150a290278d 100644 (file)
@@ -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;
 }
 
index 65f752fb8de7f58706c07bc5d88ee169d1d80202..e1071f90c9a6a38d6f9e199b0bd736f00bc2a25b 100644 (file)
@@ -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');