--- loncom/interface/statistics/lonstathelpers.pm	2009/03/25 15:49:53	1.58
+++ loncom/interface/statistics/lonstathelpers.pm	2010/04/17 22:48:56	1.61
@@ -1,6 +1,6 @@
 # The LearningOnline Network with CAPA
 #
-# $Id: lonstathelpers.pm,v 1.58 2009/03/25 15:49:53 bisitz Exp $
+# $Id: lonstathelpers.pm,v 1.61 2010/04/17 22:48:56 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -135,9 +135,9 @@ Skips 'survey' problems.
 ####################################################
 ####################################################
 sub problem_selector {
-    my ($AcceptedResponseTypes,$sequence_addendum) = @_;
+    my ($AcceptedResponseTypes,$sequence_addendum,$symbmode) = @_;
     my $Str;
-    $Str = "\n<table>\n";
+    $Str = &Apache::loncommon::start_data_table();
     my $rb_count =0;
     my ($navmap,@sequences) = 
         &Apache::lonstatistics::selected_sequences_with_assessments('all');
@@ -158,14 +158,16 @@ sub problem_selector {
                                                      resptype=>$resptype});
                         my $checked = '';
                         if ($env{'form.problemchoice'} eq $value) {
-                            $checked = 'checked="checked" ';
+                            $checked = ' checked="checked"';
                         }
                         my $title = $res->compTitle;
                         if (! defined($title) || $title eq '') {
                             ($title) = ($res->src =~ m:/([^/]*)$:);
                         }
-                        $seq_str .= '<tr>'.
-                            qq{<td><input type="radio" id="$rb_count" name="problemchoice" value="$value" $checked /></td>}.
+                        $seq_str .=  &Apache::loncommon::start_data_table_row().
+                            ($symbmode?
+                             '<td><input type="radio" id="'.$rb_count.'" name="symb" value="'.&HTML::Entities::encode($res->symb,'<>&"').'" '.$checked.' /></td>'
+                            :qq{<td><input type="radio" id="$rb_count" name="problemchoice" value="$value"$checked /></td>}).
                             '<td><label for="'.$rb_count.'">'.$resptype.'</label></td>'.
                             '<td><label for="'.$rb_count.'">'.$title.'</label>';
                         if (scalar(@response_ids) > 1) {
@@ -174,25 +176,25 @@ sub problem_selector {
                         my $link = $res->link.'?symb='.&escape($res->shown_symb);
                         $seq_str .= ('&nbsp;'x2).
                             '<a target="preview" href="'.$link.'">'.&mt('view').'</a>';
-                        $seq_str .= "</td></tr>\n";
+                        $seq_str .= "</td>". &Apache::loncommon::end_data_table_row()."\n";
                         $rb_count++;
                     }
                 }
             }
         }
         if ($seq_str ne '') {
-            $Str .= '<tr><td>&nbsp;</td>'.
-                '<td colspan="2"><b>'.$seq->compTitle.'</b></td>'.
-                "</tr>\n".$seq_str;
+            $Str .= &Apache::loncommon::start_data_table_header_row().
+                '<th colspan="3">'.$seq->compTitle.'</th>'.
+                &Apache::loncommon::end_data_table_header_row()."\n".$seq_str;
             if (defined($sequence_addendum)) {
-                $Str .= '<tr>'.
+                $Str .= &Apache::loncommon::start_data_table_header_row().
                     ('<td>&nbsp;</td>'x2).
                     '<td align="right">'.$sequence_addendum.'</td>'.
-                    "</tr>\n";
+                    &Apache::loncommon::end_data_table_header_row()."\n";
             }
         }
     }
-    $Str .= "</table>\n";
+    $Str .= &Apache::loncommon::end_data_table()."\n";
     return $Str;
 }
 
@@ -464,7 +466,8 @@ sub get_prev_curr_next {
         my @resources = &get_resources($navmap,$seq);
         foreach my $res (@resources) {
             foreach my $part (@{$res->parts}) {
-                if ($res->is_survey($part) && ($granularity eq 'part_survey')){
+                if (($res->is_survey($part) || ($res->is_anonsurvey($part))) && 
+                    ($granularity eq 'part_survey')) {
                     push (@Resource,
                           { symb     => $res->symb,
                             part     => $part,