version 1.3, 2003/10/30 16:20:18
|
version 1.6, 2003/12/18 16:36:12
|
Line 69 sub render_resource {
|
Line 69 sub render_resource {
|
|
|
sub BuildSubmissionTimePage { |
sub BuildSubmissionTimePage { |
my ($r,$c)=@_; |
my ($r,$c)=@_; |
|
# |
|
my %Saveable_Parameters = ('Status' => 'scalar', |
|
'Section' => 'array'); |
|
&Apache::loncommon::store_course_settings('submissiontime_analysis', |
|
\%Saveable_Parameters); |
|
&Apache::loncommon::restore_course_settings('submissiontime_analysis', |
|
\%Saveable_Parameters); |
|
# |
|
&Apache::lonstatistics::PrepareClasslist(); |
|
# |
$r->print('<h2>'.&mt('Submission Time Plots').'</h2>'); |
$r->print('<h2>'.&mt('Submission Time Plots').'</h2>'); |
$r->print(&CreateInterface()); |
$r->print(&CreateInterface()); |
# |
# |
Line 231 sub analyze_times {
|
Line 241 sub analyze_times {
|
$Xlabel[$bincount] = ''; |
$Xlabel[$bincount] = ''; |
} |
} |
} |
} |
|
my $numstudents = scalar(@$students); |
|
for (my $i=0;$i<=$#AnsData;$i++) { |
|
$AnsData[$i] = int(100*($AnsData[$i]/$numstudents)); |
|
} |
my $title = 'Number of Submissions and Number Correct'; |
my $title = 'Number of Submissions and Number Correct'; |
my $xlabel; |
my $xlabel; |
(undef,undef,undef,$mday,$month,$year,$wday) = localtime($day_start); |
(undef,undef,undef,$mday,$month,$year,$wday) = localtime($day_start); |
Line 242 sub analyze_times {
|
Line 255 sub analyze_times {
|
join(' ',($Month[$month],$mday,1900+$year)); |
join(' ',($Month[$month],$mday,1900+$year)); |
$html .= &Apache::loncommon::DrawXYYGraph($title, |
$html .= &Apache::loncommon::DrawXYYGraph($title, |
$xlabel, |
$xlabel, |
'Number of Submissions per hour', |
'Submissions vs Time', |
$plotcolors, |
$plotcolors, |
\@Xlabel, |
\@Xlabel, |
\@Ydata, |
\@Ydata, |
0,$max, |
0,$max, |
\@AnsData, |
\@AnsData, |
0,scalar(@$students), |
0,100, |
(xskip => $bins_per_day, |
(xskip => $bins_per_day, |
x_ticks => $bins_per_day, |
x_ticks => $bins_per_day, |
x_tick_offset => $bins_per_day, |
x_tick_offset => $bins_per_day, |
width => 50+2*$bincount) |
width => 50+2*$bincount, |
|
y1_label=>'Number of Submissions per hour', |
|
y2_label=>'Percent of Students answering Correctly') |
); |
); |
$html .= '<br />'; |
$html .= '<br />'; |
return $html; |
return $html; |
Line 354 sub ProblemSelector {
|
Line 369 sub ProblemSelector {
|
if ($ENV{'form.problemchoice'} eq $value) { |
if ($ENV{'form.problemchoice'} eq $value) { |
$checked = 'checked '; |
$checked = 'checked '; |
} |
} |
|
my $title = $res->{'title'}; |
|
if (! defined($title) || $title eq '') { |
|
($title) = ($res->{'src'} =~ m:/([^/]*)$:); |
|
} |
|
# &Apache::lonnet::logthis('title = :'.$title.':'); |
$seq_str .= '<tr><td>'. |
$seq_str .= '<tr><td>'. |
'<input type="radio" name="problemchoice" value="'.$value.'" '.$checked.'/>'. |
'<input type="radio" name="problemchoice" value="'.$value.'" '.$checked.'/>'. |
'</td><td>'. |
'</td><td>'. |
'<a href="'.$res->{'src'}.'">'.$res->{'title'}.'</a> '; |
'<a href="'.$res->{'src'}.'">'.$title.'</a> '; |
} else { |
} else { |
|
my $title = $res->{'title'}; |
|
if (! defined($title) || $title eq '') { |
|
($title) = ($res->{'src'} =~ m:/([^/]*)$:); |
|
} |
$seq_str .= '<tr><td>'. |
$seq_str .= '<tr><td>'. |
' '.'</td><td>'. |
' '.'</td><td>'. |
'<a href="'.$res->{'src'}.'">'.$res->{'title'}.'</a>'. |
'<a href="'.$res->{'src'}.'">'.$title.'</a>'. |
"</td></tr>\n"; |
"</td></tr>\n"; |
foreach my $part (@{$res->{'parts'}}) { |
foreach my $part (@{$res->{'parts'}}) { |
my $value = &Apache::lonnet::escape |
my $value = &Apache::lonnet::escape |