Calculate the sum of statuses for all users in each session
authorNadav Kavalerchik <nadavkav@gmail.com>
Mon, 20 Jan 2014 17:42:49 +0000 (19:42 +0200)
committerNadav Kavalerchik <nadavkav@gmail.com>
Mon, 20 Jan 2014 17:42:49 +0000 (19:42 +0200)
Hi Dan,

Here is another patch the calculates the sum of statuses for all users in each session.

Please review and see if you can accept.

Nadav :-)

renderer.php

index ab1983f..e3af1ad 100755 (executable)
@@ -812,6 +812,27 @@ class mod_attendance_renderer extends plugin_renderer_base {
             $table->data[] = $row;
         }
 
+        // Calculate the sum of statuses for each user
+        $statrow = new html_table_row();
+        $statrow->cells[] = '';
+        $statrow->cells[] = get_string('summary');
+        foreach ($reportdata->sessions as $sess) {
+            $sessionstats = array();
+            foreach ($reportdata->users as $user) {
+                foreach($reportdata->statuses as $status) {
+                    if ($reportdata->sessionslog[$user->id][$sess->id]->statusid == $status->id) $sessionstats[$status->id]++;
+                }
+            }
+
+            $statsoutput = '<br/>';
+            foreach($reportdata->statuses as $status) {
+                $statsoutput .= "$status->description:".$sessionstats[$status->id]." <br/>";
+            }
+            $statrow->cells[] = $statsoutput;
+
+        }
+        $table->data[] = $statrow;
+        
         return html_writer::table($table);
     }