--- loncom/interface/statistics/lonproblemstatistics.pm	2009/03/05 09:12:14	1.117
+++ loncom/interface/statistics/lonproblemstatistics.pm	2012/05/03 11:21:33	1.122
@@ -1,6 +1,6 @@
 # The LearningOnline Network with CAPA
 #
-# $Id: lonproblemstatistics.pm,v 1.117 2009/03/05 09:12:14 bisitz Exp $
+# $Id: lonproblemstatistics.pm,v 1.122 2012/05/03 11:21:33 goltermann Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -52,6 +52,7 @@ package Apache::lonproblemstatistics;
 use strict;
 use Apache::lonnet;
 use Apache::loncommon();
+use Apache::lonquickgrades();
 use Apache::lonhtmlcommon;
 use Apache::loncoursedata;
 use Apache::lonstatistics;
@@ -610,8 +611,6 @@ sub CreateInterface {
     &parse_field_selection();
     #
     my $Str = '';
-    $Str .= &Apache::lonhtmlcommon::breadcrumbs('Overall Problem Statistics',
-						'Statistics_Overall_Key');
     $Str .= '<p>';
     $Str .= &Apache::loncommon::start_data_table();
     $Str .= &Apache::loncommon::start_data_table_header_row();
@@ -645,12 +644,6 @@ sub CreateInterface {
     $Str .=  &Apache::loncommon::end_data_table_row();
     $Str .= &Apache::loncommon::end_data_table();
     #
-    $Str .= '<p><span class="LC_nobreak">'
-           .&mt('Status: [_1]',
-                    '<input type="text" name="stats_status"'
-                   .' size="60" value="" readonly="readonly" />')
-           .'</span></p>';
-    #
     $Str .= '</p>';
     $Str .= '<input type="submit" name="GenerateStatistics" value="'.
         &mt('Generate Statistics').'" />';
@@ -704,6 +697,10 @@ sub BuildProblemStatisticsPage {
     undef(%SeqStat);
     #
     # Finally let the user know we are here
+    $r->print(&Apache::lonhtmlcommon::breadcrumbs('Overall Problem Statistics',
+                                                'Statistics_Overall_Key'));
+    &Apache::lonquickgrades::startGradeScreen($r,'statistics');
+
     my $interface = &CreateInterface($r);
     $r->print($interface);
     $r->print('<input type="hidden" name="sortby" value="'.$env{'form.sortby'}.
@@ -744,17 +741,17 @@ sub BuildProblemStatisticsPage {
         return;
     }
     if (exists($env{'form.Excel'})) {
-        $r->print('<h4>'.
+        $r->print('<p>'.
                   &Apache::lonstatistics::section_and_enrollment_description().
-                  '</h4>');
+                  '</p>');
         &Excel_output($r);
     } else {
         $r->print('<input type="submit" name="Excel" value="'.
                   &mt('Produce Excel Output').'" />'.'&nbsp;'x5);
         $r->rflush();
-        $r->print('<h4>'.
+        $r->print('<p>'.
                   &Apache::lonstatistics::section_and_enrollment_description().
-                  '</h4>');
+                  '</p>');
         my $count = 0;
         foreach my $seq (@sequences) {
             my @resources =
@@ -798,17 +795,15 @@ sub output_sequence_statistics {
     $r->print('<h2>'.&mt('Sequence Statistics').
 	      &Apache::loncommon::help_open_topic('Statistics_Sequence').
 	      '</h2>');
-    $r->print('<table border="0"><tr><td bgcolor="#777777">'."\n".
-              '<table border="0" cellpadding="3">'."\n".
-              '<tr bgcolor="#FFFFE6">');
+    $r->print(&Apache::loncommon::start_data_table().&Apache::loncommon::start_data_table_header_row());
     $r->print(&sequence_html_header());
+    $r->print(&Apache::loncommon::end_data_table_header_row());
     foreach my $seq (@sequences) {
         last if ($c->aborted);
         &compute_sequence_statistics($seq);
         $r->print(&sequence_html_output($seq));
     }
-    $r->print('</table>');
-    $r->print('</table>');
+    $r->print(&Apache::loncommon::end_data_table());
     $r->rflush();
     return;
 }
@@ -824,22 +819,22 @@ sub output_sequence_statistics {
 sub output_html_by_sequence {
     my ($r) = @_;
     my $c = $r->connection();
-    $r->print(&html_preamble());
+    $r->print('<br>'.&html_preamble());
     #
     foreach my $seq (@sequences) {
         last if ($c->aborted);
         $r->print("<h3>".$seq->compTitle."</h3>".
-                  '<table border="0"><tr><td bgcolor="#777777">'."\n".
-                  '<table border="0" cellpadding="3">'."\n".
-                  '<tr bgcolor="#FFFFE6">'.
-                  &statistics_table_header('no container')."</tr>\n");
+                    &Apache::loncommon::start_data_table().
+                    &Apache::loncommon::start_data_table_header_row().
+                    &statistics_table_header('no container').
+                    &Apache::loncommon::end_data_table_header_row()."\n");
         my @Data = &compute_statistics_on_sequence($seq);
         foreach my $data (@Data) {
-            $r->print('<tr>'.&statistics_html_table_data($data,
-                                                         'no container').
-                      "</tr>\n");
+            $r->print(&Apache::loncommon::start_data_table_row().
+                    &statistics_html_table_data($data,'no container').
+                    &Apache::loncommon::end_data_table_row()."\n");
         }
-        $r->print('</table>'."\n".'</table>'."\n");
+        $r->print(&Apache::loncommon::end_data_table()."\n");
         $r->rflush();
     }
     return;
@@ -854,17 +849,17 @@ sub output_html_stats {
     my $count=0;
     foreach my $data (@StatsArray) {
         if ($count++ % 50 == 0) {
-            $r->print("</table>\n</table>\n");
-            $r->print('<table border="0"><tr><td bgcolor="#777777">'."\n".
-                      '<table border="0" cellpadding="3">'."\n".
-                      '<tr bgcolor="#FFFFE6">'.
-                      '<tr bgcolor="#FFFFE6">'.
-                      &statistics_table_header().
-                      "</tr>\n");
-        }
-        $r->print('<tr>'.&statistics_html_table_data($data)."</tr>\n");
+            $r->print(&Apache::loncommon::end_data_table());
+            $r->print(&Apache::loncommon::start_data_table().
+                    &Apache::loncommon::start_data_table_row().
+                    &statistics_table_header().
+                    &Apache::loncommon::end_data_table_row());
+        }
+        $r->print(&Apache::loncommon::start_data_table_row().
+                &statistics_html_table_data($data).
+                &Apache::loncommon::end_data_table_row());
     }
-    $r->print("</table>\n</table>\n");
+    $r->print(&Apache::loncommon::end_data_table_row());
     return;
 }
 
@@ -881,8 +876,8 @@ sub html_preamble {
                            &Apache::lonlocal::locallocaltime($endtime)
                            ).'</h3>';
     }
-    $Str .= "<h3>".&mt('Compiled on [_1]',
-                       &Apache::lonlocal::locallocaltime(time))."</h3>";
+    $Str .= "<p>".&mt('Compiled on [_1]',
+                       &Apache::lonlocal::locallocaltime(time))."</p>";
     return $Str;
 }
 
@@ -900,7 +895,7 @@ sub statistics_html_table_data {
     foreach my $field (@Fields) {
         next if ($options =~ /no $field->{'name'}/);
         next if ($field->{'selected'} ne 'yes');
-        $row .= '<td bgcolor="'.$field->{'color'}.'"';
+        $row .= '<td style="background-color:'.$field->{'color'}.'"';
         if (exists($field->{'align'})) {
             $row .= ' align="'.$field->{'align'}.'"';
             }
@@ -1457,7 +1452,7 @@ sub compute_statistics_on_sequence {
     my @Data;
     foreach my $res (&Apache::lonstathelpers::get_resources($navmap,$seq)) {
         foreach my $part (@{$res->parts}) {
-            next if ($res->is_survey($part));
+            next if (($res->is_survey($part)) || ($res->is_anonsurvey($part))) ;
             #
             # This is where all the work happens
             my $data = &get_statistics($seq,$res,$part,scalar(@StatsArray)+1);
@@ -1592,7 +1587,6 @@ sub get_statistics {
         $data->{'sections'}=$sections;
         $data->{'course'} = $env{'request.course.id'};
         my $urlres=(&Apache::lonnet::decode_symb($resource->symb))[2];
-        $data->{'urlres'}=$urlres;
         my %storestats =
             &LONCAPA::lonmetadata::dynamic_metadata_storage($data);
         my ($dom,$user) = ($urlres=~m{^($LONCAPA::domain_re)/($LONCAPA::username_re)});