--- loncom/interface/statistics/lonstudentsubmissions.pm 2010/08/04 01:56:07 1.60 +++ loncom/interface/statistics/lonstudentsubmissions.pm 2011/10/09 01:11:39 1.63.2.1 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: lonstudentsubmissions.pm,v 1.60 2010/08/04 01:56:07 raeburn Exp $ +# $Id: lonstudentsubmissions.pm,v 1.63.2.1 2011/10/09 01:11:39 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -177,11 +177,28 @@ sub BuildStudentSubmissionsPage { &array_shuffle(\@Students); } # + + my $threshold = $env{'course.'.$env{'request.course.id'}.'.internal.anonsurvey_threshold'}; + if ($threshold eq '') { + my %domconfig = + &Apache::lonnet::get_dom('configuration',['coursedefaults'], + $env{'course.'.$env{'request.course.id'}.'.domain'}); + if (ref($domconfig{'coursedefaults'}) eq 'HASH') { + $threshold = $domconfig{'coursedefaults'}{'anonsurvey_threshold'}; + if ($threshold eq '') { + $threshold = 10; + } + } else { + $threshold = 10; + } + } $r->print('

'. &Apache::lonstatistics::section_and_enrollment_description(). '

'); if (! scalar(@Problems) || ! defined($Problems[0])) { - $r->print('resource is undefined'); + $r->print(&mt('resource is undefined')); + } elsif (!$show_named && @Students < $threshold) { + $r->print(&mt('The number of students matching the selection criteria is too few for display of submission data for anonymous surveys.').'
'.&mt('There must be at least [quant,_1,student].',$threshold).' '.&mt('Contact a Domain Coordinator if you need the threshold to be changed for this course.')); } else { if (scalar(@Problems) == 1) { my $resource = $Problems[0]; @@ -206,7 +223,7 @@ sub BuildStudentSubmissionsPage { &mt('Prepare Report').'" />'); $r->print(' 'x5); $r->print('

'. - &mt('Computing correct answers greatly increasese the amount of time required to prepare a report.'). + &mt('Computing correct answers greatly increases the amount of time required to prepare a report.'). '

'); $r->print('

'. &mt('Please select problems and use the [_1]Prepare Report[_2] button to continue.','',''). @@ -878,15 +895,8 @@ sub prepare_excel_output { $cols_output = 0; my $student_row = $max_row; foreach my $field (@StudentColumns) { - if ($show_named) { - $worksheet->write($student_row,$cols_output++, - $student->{$field}); - } else { - $worksheet->write($student_row,$cols_output++, - &mt('Anonymized')); - } + $cols_output ++; } - my $last_student_col = $cols_output-1; foreach my $prob (@$Problems) { my $symb = $prob->symb(); foreach my $partid (@{$prob->parts}) { @@ -941,8 +951,8 @@ sub prepare_excel_output { } } } - # Fill in the remaining rows with the students data - for (my $row = $student_row+1;$row<$max_row;$row++) { + # Prepend current student's user information to all rows + for (my $row = $student_row;$row<$max_row;$row++) { my $cols = 0; foreach my $field (@StudentColumns) { if ($show_named) {