--- loncom/interface/lonstatistics.pm 2009/12/16 13:00:45 1.148 +++ loncom/interface/lonstatistics.pm 2010/09/11 19:08:19 1.148.2.4 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: lonstatistics.pm,v 1.148 2009/12/16 13:00:45 bisitz Exp $ +# $Id: lonstatistics.pm,v 1.148.2.4 2010/09/11 19:08:19 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -766,7 +766,19 @@ sub CreateMainMenu { icon => 'coprplot.png', linktext => ('Correct Problems Plot'), linktitle => ('Display a histogram of student performance in the course.')}, - ]}, + ]}); + if (&Apache::loncommon::needs_gci_custom()) { + push(@reports, + {categorytitle => 'Reports', + items => [ + {url => '/adm/statistics?reportSelected=student_submission_reports', + permission => 'F', + icon => 'edit-copy.png', + linktext => ('Student Submission Reports'), + linktitle => ('Prepare reports of student submissions.')}, + ]}); + } else { + push(@reports, {categorytitle => 'Reports', items => [ {url => '/adm/statistics?reportSelected=student_submission_reports', @@ -781,6 +793,7 @@ sub CreateMainMenu { linktext => ('Survey Reports'), linktitle => ('Prepare reports on survey results.')}, ]}); + } return &Apache::lonhtmlcommon::generate_menu(@reports); @@ -817,6 +830,28 @@ sub handler { &Apache::loncommon::content_type($r,'text/html'); $r->send_http_header; if ($r->header_only) { return OK; } + my $gcicustom = &Apache::loncommon::needs_gci_custom(); + if ($gcicustom) { + my $now = time; + my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; + my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; + my $courseopt=&Apache::lonnet::get_courseresdata($cnum,$cdom); + my $duedate = $courseopt->{$env{'request.course.id'}.'.0.duedate'}; + if ((!$duedate) || ($duedate > $now)) { + $r->print(&Apache::loncommon::start_page("Course Statistics")); + $r->print('

'.&mt('Display of statistics').'

'); + if ($duedate > $now) { + $r->print('

'.&mt('Aggregate test performance data will be available after the Concept Test end date: [_1].', + &Apache::lonlocal::locallocaltime($duedate)).'

'); + } else { + $r->print('

'. + &mt('Aggregate test performance data unavailable without definition of an end date for the Concept Test.').'

'); + } + $r->print(&Apache::loncommon::end_page()); + return OK; + } + } + # # Extract form elements from query string &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, @@ -902,9 +937,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 @@ -922,7 +957,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',