--- loncom/interface/lonstatistics.pm 2008/12/12 17:11:27 1.142.2.1
+++ loncom/interface/lonstatistics.pm 2010/09/12 17:40:33 1.148.2.5
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonstatistics.pm,v 1.142.2.1 2008/12/12 17:11:27 raeburn Exp $
+# $Id: lonstatistics.pm,v 1.148.2.5 2010/09/12 17:40:33 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -28,19 +28,7 @@
#
###
-=pod
-
-=head1 NAME
-
-lonstatistics
-
-=head1 SYNOPSIS
-Main handler for statistics and chart.
-
-=over 4
-
-=cut
package Apache::lonstatistics;
@@ -78,33 +66,6 @@ use Apache::lonsurveyreports();
use Apache::longradinganalysis();
use LONCAPA;
-#######################################################
-#######################################################
-
-=pod
-
-=item Package Variables
-
-=item @FullClasslist The full classlist
-
-=item @Students The students we are concerned with for this invocation
-
-=item @Sections The sections available in this class
-
-=item @Groups The groups available in the class
-
-=item $curr_student The student currently being examined
-
-=item $prev_student The student previous in the classlist
-
-=item $next_student The student next in the classlist
-
-=over
-
-=cut
-
-#######################################################
-#######################################################
#
# Classlist variables
#
@@ -112,43 +73,7 @@ my $curr_student;
my $prev_student;
my $next_student;
-#######################################################
-#######################################################
-
-=pod
-
-=item &clear_classlist_variables()
-
-undef the following package variables:
-
-=over
-
-=item @FullClasslist
-
-=item @Students
-
-=item @Sections
-
-=item @Groups
-
-=item %StudentData
-
-=item @StudentDataOrder
-
-=item @SelectedStudentData
-
-=item $curr_student
-
-=item $prev_student
-
-=item $next_student
-
-=back
-
-=cut
-#######################################################
-#######################################################
sub clear_classlist_variables {
undef(@FullClasslist);
undef(@Students);
@@ -161,45 +86,7 @@ sub clear_classlist_variables {
undef($next_student);
}
-#######################################################
-#######################################################
-
-=pod
-
-=item &PrepareClasslist()
-
-Build up the classlist information. The classlist information is kept in
-the following package variables:
-
-=over
-
-=item @FullClasslist
-
-=item @Students
-
-=item @Sections
-
-=item @Groups
-=item %StudentData
-
-=item @SelectedStudentData
-
-=item $curr_student
-
-=item $prev_student
-
-=item $next_student
-
-=back
-
-$curr_student, $prev_student, and $next_student may not be defined, depending
-upon the calling context.
-
-=cut
-
-#######################################################
-#######################################################
sub PrepareClasslist {
my %Sections;
&clear_classlist_variables();
@@ -374,19 +261,7 @@ sub PrepareClasslist {
return;
}
-#######################################################
-#######################################################
-
-=pod
-
-=item get_selected_sections
-
-Returns an array of the selected sections
-=cut
-
-#######################################################
-#######################################################
sub get_selected_sections {
my @selected_sections =
&Apache::loncommon::get_env_multiple('form.Section');
@@ -404,19 +279,7 @@ sub get_selected_sections {
return @selected_sections;
}
-#######################################################
-#######################################################
-
-=pod
-
-=item get_selected_groups
-
-Returns an array of the selected groups
-
-=cut
-
-#######################################################
-#######################################################
+
sub get_selected_groups {
my @selected_groups =
&Apache::loncommon::get_env_multiple('form.Group');
@@ -430,21 +293,8 @@ sub get_selected_groups {
return @selected_groups;
}
-=pod
-=item §ion_and_enrollment_description
-Returns a string describing the currently selected section(s), group(s) and
-access status.
-
-Inputs: mode = 'plaintext' or 'localized' (defaults to 'localized')
- 'plaintext' is used for example in Excel spreadsheets.
-Returns: scalar description string.
-
-=cut
-
-#######################################################
-#######################################################
sub section_and_enrollment_description {
my ($mode) = @_;
if (! defined($mode)) { $mode = 'localized'; }
@@ -469,8 +319,8 @@ sub section_and_enrollment_description {
return $description;
}
-#######################################################
-#######################################################
+
+
sub section_or_group_text {
my ($mode,$type,@items) = @_;
@@ -513,16 +363,6 @@ sub section_or_group_text {
}
-=pod
-
-=item get_students
-
-Returns a list of the selected students
-
-=cut
-
-#######################################################
-#######################################################
sub get_students {
if (! @Students) {
&PrepareClasslist()
@@ -530,84 +370,26 @@ sub get_students {
return @Students;
}
-#######################################################
-#######################################################
-=pod
-
-=item ¤t_student()
-Returns a pointer to a hash containing data about the currently
-selected student.
-
-=cut
-
-#######################################################
-#######################################################
sub current_student {
return $curr_student;
}
-#######################################################
-#######################################################
-
-=pod
-=item &previous_student()
-Returns a pointer to a hash containing data about the student prior
-in the list of students. Or something.
-
-=cut
-
-#######################################################
-#######################################################
sub previous_student {
return $prev_student;
}
-#######################################################
-#######################################################
-
-=pod
-
-=item &next_student()
-
-Returns a pointer to a hash containing data about the next student
-to be viewed.
-=cut
-#######################################################
-#######################################################
sub next_student {
return $next_student;
}
-##############################################
-##############################################
-
-=pod
-
-=item &StudentDataSelect($elementname,$status,$numvisible,$selected)
-
-Returns html for a selection box allowing the user to choose one (or more)
-of the fields of student data available (fullname, username, id, section, etc)
-
-=over 4
-
-=item $elementname The name of the HTML form element
-=item $status 'multiple' or 'single' selection box
-
-=item $numvisible The number of options to be visible
-
-=back
-=cut
-
-##############################################
-##############################################
sub StudentDataSelect {
my ($elementname,$status,$numvisible)=@_;
if ($numvisible < 1) {
@@ -618,7 +400,7 @@ sub StudentDataSelect {
my $Str = "\n";
$Str .= '
');
$r->print('
'.
&mt('Course Statistics and Charts cannot be '.
- 'retrieved until the database is restarted. '.
+ 'retrieved until the database is restarted. '.
'Your data is intact but cannot be displayed '.
'at this time.').'
');
$r->print(&Apache::loncommon::end_page());
@@ -1234,9 +952,9 @@ ENDSTYLE
&Apache::lonsubmissiontimeanalysis::BuildSubmissionTimePage($r,$c);
} elsif($GoToPage eq 'student_submission_reports') {
&Apache::lonhtmlcommon::add_breadcrumb
- ({href=>
- '/adm/statistics?reportselected=student_submission_reports',
- text=>'Student Submission Reports'});
+ ({href=>
+ '/adm/statistics?reportselected=student_submission_reports',
+ text=>'Student Submission Reports'});
&Apache::lonstudentsubmissions::BuildStudentSubmissionsPage($r,$c);
} elsif($GoToPage eq 'survey_reports') {
&Apache::lonhtmlcommon::add_breadcrumb
@@ -1254,7 +972,11 @@ ENDSTYLE
&Apache::lonhtmlcommon::add_breadcrumb
({href=>'/adm/statistics?reportselected=student_assessment',
text=>'Chart'});
- &Apache::lonstudentassessment::BuildStudentAssessmentPage($r,$c);
+ if ($gcicustom) {
+ $r->print(&mt('Only aggregate performance data are available for Concept Tests.'));
+ } else {
+ &Apache::lonstudentassessment::BuildStudentAssessmentPage($r,$c);
+ }
} elsif($GoToPage eq 'grading_analysis') {
&Apache::lonhtmlcommon::add_breadcrumb
({href=>'/adm/statistics?reportselected=grading_anaylsis',
@@ -1272,17 +994,227 @@ ENDSTYLE
1;
-#######################################################
-#######################################################
+__END__
=pod
+=head1 NAME
+
+lonstatistics
+
+=head1 SYNOPSIS
+
+Main handler for statistics and chart.
+
+This is part of the LearningOnline Network with CAPA project
+described at http://www.lon-capa.org.
+
+
+=head1 PACKAGE VARIABLES
+
+=over
+
+=item @FullClasslist The full classlist
+
+=item @Students The students we are concerned with for this invocation
+
+=item @Sections The sections available in this class
+
+=item @Groups The groups available in the class
+
+=item $curr_student The student currently being examined
+
+=item $prev_student The student previous in the classlist
+
+=item $next_student The student next in the classlist
+
=back
-=cut
+=head1 SUBROUTINES
-#######################################################
-#######################################################
+=over
-__END__
+=item &clear_classlist_variables()
+
+undef the following package variables:
+
+=over 4
+
+=item * @FullClasslist
+
+=item * @Students
+
+=item * @Sections
+
+=item * @Groups
+
+=item * %StudentData
+
+=item * @StudentDataOrder
+
+=item * @SelectedStudentData
+
+=item * $curr_student
+
+=item * $prev_student
+
+=item * $next_student
+
+=back
+
+=item &PrepareClasslist()
+
+Build up the classlist information. The classlist information is kept in
+the following package variables:
+
+=over 4
+
+=item * @FullClasslist
+
+=item * @Students
+
+=item * @Sections
+
+=item * @Groups
+
+=item * %StudentData
+
+=item * @SelectedStudentData
+
+=item * $curr_student
+
+=item * $prev_student
+
+=item * $next_student
+
+=back
+
+$curr_student, $prev_student, and $next_student may not be defined, depending
+upon the calling context.
+
+=item get_selected_sections()
+
+Returns an array of the selected sections
+
+=item get_selected_groups()
+
+Returns an array of the selected groups
+
+=item §ion_and_enrollment_description()
+
+Returns a string describing the currently selected section(s), group(s) and
+access status.
+
+Inputs: mode = 'plaintext' or 'localized' (defaults to 'localized')
+ 'plaintext' is used for example in Excel spreadsheets.
+Returns: scalar description string.
+
+=item section_or_group_text()
+
+=item get_students()
+
+Returns a list of the selected students
+
+=item ¤t_student()
+
+Returns a pointer to a hash containing data about the currently
+selected student.
+
+=item &previous_student()
+
+Returns a pointer to a hash containing data about the student prior
+in the list of students. Or something.
+
+=item &next_student()
+
+Returns a pointer to a hash containing data about the next student
+to be viewed.
+
+=item &StudentDataSelect($elementname,$status,$numvisible,$selected)
+
+Returns html for a selection box allowing the user to choose one (or more)
+of the fields of student data available (fullname, username, id, section, etc)
+
+=over 4
+
+=item * $elementname The name of the HTML form element
+
+=item * $status 'multiple' or 'single' selection box
+
+=item * $numvisible The number of options to be visible
+
+=back
+
+=item &get_selected_maps($elementname)
+
+Input: Name of the form element used to specify the maps.
+
+Returns: Array of symbs of selected maps or the description 'all'.
+ If form.$elementname does not exist, 'all' is returned.
+
+=item &selected_sequences_with_assessments()
+
+Retrieve the sequences which were selected by the user to show.
+
+Input: $mode: scalar. Either 'selected' or 'all'. If not specified,
+ 'selected' is used.
+
+Returns: an array containing a navmap object and navmap resources,
+ or an array containing a scalar with an error message.
+
+=item &map_select($elementname,$status,$numvisible,$restriction)
+
+Returns html for a selection box allowing the user to choose one (or more)
+of the sequences in the course. The values of the sequences are the symbs.
+If the top sequence is selected, the value 'top' will result.
+
+=over 4
+
+=item * $elementname The name of the HTML form element
+
+=item * $status 'multiple' or 'single' selection box
+
+=item * $numvisible The number of options to be visible
+
+=back
+
+=item &SectionSelect($elementname,$status,$numvisible)
+
+Returns html for a selection box allowing the user to choose one (or more)
+of the sections in the course.
+
+Uses the package variables @Sections
+
+=over 4
+
+=item * $elementname The name of the HTML form element
+
+=item * $status 'multiple' or 'single' selection box
+
+=item * $numvisible The number of options to be visible
+
+=back
+
+=item &GroupSelect($elementname,$status,$numvisible)
+
+Returns html for a selection box allowing the user to choose one (or more)
+of the groups in the course.
+
+Uses the package variables @Groups
+
+=over 4
+
+=item * $elementname The name of the HTML form element
+
+=item * $status 'multiple' or 'single' selection box
+
+=item * $numvisible The number of options to be visible
+
+=back
+
+=item CreateMainMenu()
+
+=back
+
+=cut