--- loncom/interface/lontrackstudent.pm 2005/04/07 06:56:23 1.15 +++ loncom/interface/lontrackstudent.pm 2005/06/30 17:56:28 1.16 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: lontrackstudent.pm,v 1.15 2005/04/07 06:56:23 albertel Exp $ +# $Id: lontrackstudent.pm,v 1.16 2005/06/30 17:56:28 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -49,6 +49,8 @@ use Apache::lonnet; use Apache::lonlocal; use Time::HiRes; +my $num_records=500; + sub get_data { my ($r,$prog_state,$navmap,$mode) = @_; ## @@ -107,6 +109,12 @@ sub get_data { ($r,$prog_state,&mt('Parsing results')); # &output_results($r,$results_file,$navmap,$mode); + my ($sname,$sdom) = ($mode=~/^student:(.*):(.*)$/); + $r->print(&Apache::loncommon::track_student_link( + 'View more activity by this student', + $sname,$sdom,undef, + ($env{'form.start'}+$num_records))); + &Apache::lonhtmlcommon::Update_PrgWin($r,$prog_state,&mt('Finished!')); return; } @@ -188,6 +196,7 @@ sub build_query { my $home = $env{'course.'.$cid.'.home'}; my $course = $env{'course.'.$cid.'.num'}; my $prefix = $course.'_'.$domain.'_'; + my $start = ($env{'form.start'}+0); # my %table = &table_names(); # @@ -200,7 +209,7 @@ sub build_query { LEFT JOIN $table{'student'} AS C ON C.student_id=A.student_id LEFT JOIN $table{'machine'} AS E ON E.machine_id=A.machine_id ORDER BY A.time DESC - LIMIT 500 + LIMIT $start, $num_records }; } elsif ($mode =~ /^student:(.*):(.*)$/) { my $student = $1.':'.$2; @@ -212,7 +221,7 @@ sub build_query { LEFT JOIN $table{'machine'} AS E ON E.machine_id=A.machine_id WHERE C.student='$student' ORDER BY A.time DESC - LIMIT 500 + LIMIT $start, $num_records }; } $query =~ s|$/||g; @@ -262,7 +271,7 @@ sub output_results { ''.&mt('Data').''. ''.$/; } - my $count = -1; + my $count = $env{'form.start'}-1; $r->rflush(); ## ## @@ -336,7 +345,7 @@ sub output_results { $values = &display_values($action,$values); # # Build the row for output - my $tablerow = qq{}; + my $tablerow = qq{}.($count+1).qq{}; if ($src =~ m|^/adm/|) { $tablerow .= ''.$title.''; @@ -357,7 +366,7 @@ sub output_results { ''; $r->print($tablerow.$/); } - $r->print(''.$/) if (! $count % 50); + $r->print(''.$/);### if (! $count % 50); close(ACTIVITYDATA); return; } @@ -488,7 +497,7 @@ sub handler { # # Extract form elements from query string &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, - ['selected_student']); + ['selected_student','start']); # # We will almost always need this... my $navmap = Apache::lonnavmaps::navmap->new();