Skip to content

Commit

Permalink
Improvements to user activity report - including graphs
Browse files Browse the repository at this point in the history
  • Loading branch information
martin committed Jul 27, 2002
1 parent 96e0ad2 commit c24d307
Show file tree
Hide file tree
Showing 2 changed files with 78 additions and 3 deletions.
76 changes: 76 additions & 0 deletions course/loggraph.php
@@ -0,0 +1,76 @@
<?PHP // $Id$

require("../config.php");
require("lib.php");
require("$CFG->libdir/graphlib.php");

require_variable($id); // Course ID
require_variable($type); // Graph Type
optional_variable($user); // Student ID

if (! $course = get_record("course", "id", $id)) {
error("Course is misconfigured");
}

require_login($course->id);

if (!isteacher($course->id)) {
if (! ($type == "student.png" and $user == $USER->id) ) {
error("Sorry, you aren't allowed to see this.");
}
}

if ($user) {
if (! $user = get_record("user", "id", $user)) {
error("Can not find that user");
}
}


$timenow = time();

switch ($type) {

case "user.png":

$timestart = $course->startdate;
$i = 0;
while ($timestart < $timenow) {
$timefinish = $timestart + (3600 * 24);
if (! $logcount = get_record_sql("SELECT COUNT(*) as count FROM log
WHERE user = '$user->id' AND course = '$course->id'
AND `time` > '$timestart' AND `time` < '$timefinish'")) {
$logs[$i] = 0;
}
$logs[$i] = $logcount->count;
$days[$i] = date("j M", $timestart);
$i++;
$timestart = $timefinish;
}

$maxlogs = max($logs);


$graph = new graph(600, 300);
$graph->parameter['title'] = "Rough usage of $course->shortname by $user->firstname $user->lastname";

$graph->x_data = $days;

$graph->y_data['logs'] = $logs;
$graph->y_format['logs'] = array('colour' => 'blue','bar' => 'fill','legend' =>'actual','bar_size' => 0.4);
$graph->y_label_left = "Hits";

$graph->y_order = array('logs');


$graph->parameter['shadow'] = 'none';

$graph->draw_stack();

break;

default:
break;
}

?>
5 changes: 2 additions & 3 deletions course/user.php
Expand Up @@ -55,10 +55,9 @@

switch ($mode) {
case "summary" :
echo "<P>Not done yet</P>";
echo "<P>Graph goes here that shows accesses by day over the course</P>";
echo "<HR>";
echo "<P>Table goes here that summarises all activity by this student by module. eg 3/7 journals done, 3/3 surveys, 12 posts in all discussions. Each of these are links so that you can drill down to see all the surveys on one page, or all the posts, or all their journals.";
echo "<CENTER><IMG SRC=\"loggraph.php?id=$course->id&user=$user->id&type=user.png\">";
echo "<HR>";
break;

case "outline" :
Expand Down

0 comments on commit c24d307

Please sign in to comment.