Diff for /loncom/homework/radiobuttonresponse.pm between versions 1.104 and 1.108

version 1.104, 2005/10/11 20:02:31 version 1.108, 2006/12/07 23:10:42
Line 32  use HTML::Entities(); Line 32  use HTML::Entities();
 use Apache::lonlocal;  use Apache::lonlocal;
 use Apache::lonnet;  use Apache::lonnet;
   
   my $exam_max_bubbles = 10;
   
 BEGIN {  BEGIN {
     &Apache::lonxml::register('Apache::radiobuttonresponse',('radiobuttonresponse'));      &Apache::lonxml::register('Apache::radiobuttonresponse',('radiobuttonresponse'));
 }  }
Line 234  sub displayallfoils { Line 236  sub displayallfoils {
     my ($direction)=@_;      my ($direction)=@_;
     my $result;      my $result;
     &Apache::lonxml::debug("survey style display");      &Apache::lonxml::debug("survey style display");
     my @names = @{ $Apache::response::foilgroup{'names'} };      my @names;
       if ( $Apache::response::foilgroup{'names'} ) {
    @names= @{ $Apache::response::foilgroup{'names'} };
       }
     my $temp=0;      my $temp=0;
     my $id=$Apache::inputtags::response['-1'];      my $id=$Apache::inputtags::response['-1'];
     my $part=$Apache::inputtags::part;      my $part=$Apache::inputtags::part;
Line 271  sub displayallfoils { Line 276  sub displayallfoils {
                 $result .= '<label>';                  $result .= '<label>';
  $result.="<input type=\"radio\" name=\"HWVAL_$Apache::inputtags::response['-1']\" value=\"$temp\" ";   $result.="<input type=\"radio\" name=\"HWVAL_$Apache::inputtags::response['-1']\" value=\"$temp\" ";
  if (defined($lastresponse{$name})) { $result .= 'checked="on"'; }   if (defined($lastresponse{$name})) { $result .= 'checked="on"'; }
  $result .= '>'.$Apache::response::foilgroup{$name.'.text'}.   $result .= ' />'.$Apache::response::foilgroup{$name.'.text'}.
                     '</label>';                      '</label>';
  $temp++;   $temp++;
  if ($direction eq 'horizontal') { $result.="</td>"; }   if ($direction eq 'horizontal') { $result.="</td>"; }
Line 484  sub displayfoils { Line 489  sub displayfoils {
                 $result.= '<label>';                  $result.= '<label>';
  $result.="<input type=\"radio\" name=\"HWVAL_$Apache::inputtags::response['-1']\" value=\"$temp\" ";   $result.="<input type=\"radio\" name=\"HWVAL_$Apache::inputtags::response['-1']\" value=\"$temp\" ";
  if (defined($lastresponse{$name})) { $result .= 'checked="on"'; }   if (defined($lastresponse{$name})) { $result .= 'checked="on"'; }
  $result .= '>'.$Apache::response::foilgroup{$name.'.text'}."</label>";   $result .= ' />'.$Apache::response::foilgroup{$name.'.text'}."</label>";
     } else {      } else {
  if ($Apache::lonhomework::type eq 'exam') {   if ($Apache::lonhomework::type eq 'exam') {
       
       # If necessary, start a new group of bubbles
       # in the next row on the scantron sheet:
       #
       if ($i >= $exam_max_bubbles) {
    $i = 0; # Back to A.
    $Apache::lonxml::counter++; # Next row of bubbles...
    $result .= '\item[\textbf{'.$Apache::lonxml::counter.'}.]';
       }
   
     $result .= '{\small \textbf{'.$alphabet[$i].'}}$\bigcirc$'.$Apache::response::foilgroup{$name.'.text'}.'\\\\';  #' stupid emacs      $result .= '{\small \textbf{'.$alphabet[$i].'}}$\bigcirc$'.$Apache::response::foilgroup{$name.'.text'}.'\\\\';  #' stupid emacs
     $i++;      $i++;
   
  } else {   } else {
     $result .= '\vspace*{-2 mm}\item '.$Apache::response::foilgroup{$name.'.text'};      $result .= '\vspace*{-2 mm}\item '.$Apache::response::foilgroup{$name.'.text'};
  }   }
Line 507  sub displayfoils { Line 523  sub displayfoils {
 }  }
   
 sub displayallanswers {  sub displayallanswers {
     my @names = @{ $Apache::response::foilgroup{'names'} };      my @names;
       if ( $Apache::response::foilgroup{'names'} ) {
    @names= @{ $Apache::response::foilgroup{'names'} };
       }
       
     my $result=&Apache::response::answer_header('radiobuttonresponse');      my $result=&Apache::response::answer_header('radiobuttonresponse');
     foreach my $name (@names) {      foreach my $name (@names) {
Line 522  sub displayanswers { Line 541  sub displayanswers {
     my ($max,$randomize)=@_;      my ($max,$randomize)=@_;
     my ($answer,@whichopt) = &whichfoils($max,$randomize);      my ($answer,@whichopt) = &whichfoils($max,$randomize);
     my $result=&Apache::response::answer_header('radiobuttonresponse');      my $result=&Apache::response::answer_header('radiobuttonresponse');
       if ($Apache::lonhomework::type eq 'exam') {
    my $correct = ('A'..'Z')[$answer];
    $result.=&Apache::response::answer_part('radiobuttonresponse',
    $correct);
       }
     foreach my $name (@whichopt) {      foreach my $name (@whichopt) {
  $result.=&Apache::response::answer_part('radiobuttonresponse',   $result.=&Apache::response::answer_part('radiobuttonresponse',
  $Apache::response::foilgroup{$name.'.value'})   $Apache::response::foilgroup{$name.'.value'});
  }      }
     $result.=&Apache::response::answer_footer('radiobuttonresponse');      $result.=&Apache::response::answer_footer('radiobuttonresponse');
     return $result;      return $result;
 }  }

Removed from v.1.104  
changed lines
  Added in v.1.108


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>