]> git.mjollnir.org Git - moodle.git/commitdiff
A bit more usable now
authormoodler <moodler>
Mon, 21 Jul 2003 03:37:53 +0000 (03:37 +0000)
committermoodler <moodler>
Mon, 21 Jul 2003 03:37:53 +0000 (03:37 +0000)
mod/chat/report.php

index 0e8311df0e4f6de8574730a4a5ae20bfe83215ed..b00a30273d0fb19cc15bef96b8b2a1c5d39edf72 100644 (file)
     }
 
     $sessiongap = 5 * 60;    // 5 minutes
-    $sessionstart = 0;
-    $sessionend   = 0;
+    $sessionend = 0;
+    $sessionstart   = 0;
     $sessionusers = array();
-    $timelast   = 0;
+    $lasttime   = 0;
 
-    foreach ($messages as $message) {
-        if (!$timelast) {
-            $timelast = $message->timestamp;
+    foreach ($messages as $message) {  // We are walking BACKWARDS throuhg messages
+        if (!$lasttime) {
+            $lasttime = $message->timestamp;
         }
-        if (!$sessionstart) {
-            $sessionstart = $message->timestamp;
+        if (!$sessionend) {
+            $sessionend = $message->timestamp;
         }
-        if ($message->timestamp - $timelast < $sessiongap) {  // Same session
-            $sessionusers[$message->user] = $message->timestamp;  // Remember user
+        if (($lasttime - $message->timestamp) < $sessiongap) {  // Same session
+            if ($message->userid and !$message->system) {
+                $sessionusers[$message->userid] = $message->timestamp;  // Remember user
+            }
         } else {  
-            $sessionend = $lasttime;
+            $sessionstart = $lasttime;
 
-            print_heading(usertime($sessionstart)." --> ". usertime($sessionend));
+            if ($sessionend - $sessionstart > 60 and count($sessionusers) > 1) {
 
-            print_simple_box_start("center");
+                print_heading(userdate($sessionstart)." --> ". userdate($sessionend));
 
-            foreach ($sessionusers as $sessionuser => $lastusertime) {
-                $user = get_record("user", "id", $sessionuser);
-                print_user_picture($user->id, $course->id, $user->picture);
-            }
+                print_simple_box_start("center");
 
-            print_simple_box_end();
+                foreach ($sessionusers as $sessionuser => $lastusertime) {
+                    if ($user = get_record("user", "id", $sessionuser)) {
+                        print_user_picture($user->id, $course->id, $user->picture);
+                        echo "&nbsp;$user->firstname $user->lastname<br clear=all />";
+                    }
+                }
+
+                print_simple_box_end();
+            }
 
-            $sessionstart = $message->timestamp;
+            $sessionend = $message->timestamp;
             $sessionusers = array();
-            $sessionusers[$message->user] = $message->timestamp;  // Remember user
+            $sessionusers[$message->userid] = $message->timestamp;  // Remember user
         }
-        $timelast = $message->timestamp;
+        $lasttime = $message->timestamp;
     }
 
 /// Finish the page