--- loncom/homework/radiobuttonresponse.pm 2003/04/02 15:09:00 1.64 +++ loncom/homework/radiobuttonresponse.pm 2003/04/18 17:10:08 1.70 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # mutliple choice style responses # -# $Id: radiobuttonresponse.pm,v 1.64 2003/04/02 15:09:00 sakharuk Exp $ +# $Id: radiobuttonresponse.pm,v 1.70 2003/04/18 17:10:08 sakharuk Exp $ # # Copyright Michigan State University Board of Trustees # @@ -62,6 +62,16 @@ sub start_radiobuttonresponse { $safeeval,'max','randomize'); if ($constructtag) { $result = &Apache::edit::rebuild_tag($token); } } elsif ($target eq 'tex') { + my $type=&Apache::lonxml::get_param('TeXtype',$parstack,$safeeval,undef,0); + if ($type eq '1') { + $result .= ' \renewcommand{\labelenumi}{\arabic{enumi}.}'; + } elsif ($type eq 'A') { + $result .= ' \renewcommand{\labelenumi}{\Alph{enumi}.}'; + } elsif ($type eq 'a') { + $result .= ' \renewcommand{\labelenumi}{\alph{enumi}.}'; + } elsif ($type eq 'i') { + $result .= ' \renewcommand{\labelenumi}{\roman{enumi}.}'; + } $result .= '\begin{enumerate}'; } return $result; @@ -87,14 +97,13 @@ sub start_foilgroup { &Apache::response::setrandomnumber(); if ($target eq 'tex' && $Apache::lonhomework::type eq 'exam') { $result.='\item[\textbf{'.$Apache::lonxml::counter.'}.]'; - &Apache::lonxml::increment_counter(); } return $result; } sub storesurvey { if ( !defined($ENV{'form.submitted'})) { return ''; } - my $response = $ENV{'form.HWVAL'.$Apache::inputtags::response['-1']}; + my $response = $ENV{'form.HWVAL_'.$Apache::inputtags::response['-1']}; &Apache::lonxml::debug("Here I am!:$response:"); if ( $response !~ /[0-9]+/) { return ''; } my $id = $Apache::inputtags::response['-1']; @@ -112,7 +121,12 @@ sub grade_response { #keep the random numbers the same must always call this my ($answer,@whichfoils)=&whichfoils($max,$randomize); if (!defined($ENV{'form.submitted'})) { return; } - my $response = $ENV{'form.HWVAL'.$Apache::inputtags::response['-1']}; + my $response; + if ($ENV{'form.submitted'} eq 'scantron') { + $response=&Apache::response::getresponse(); + } else { + $response = $ENV{'form.HWVAL_'.$Apache::inputtags::response['-1']}; + } if ( $response !~ /[0-9]+/) { return; } my $part=$Apache::inputtags::part; my $id = $Apache::inputtags::response['-1']; @@ -160,6 +174,7 @@ sub end_foilgroup { } } } + &Apache::lonxml::increment_counter(); return $result; } @@ -206,7 +221,7 @@ sub displayallfoils { } else { foreach my $name (@names) { if ($Apache::response::foilgroup{$name.'.value'} ne 'unused') { - $result.="
\n"; $temp++; @@ -379,9 +394,7 @@ sub displayfoils { my %lastresponse=&Apache::lonnet::str2hash($lastresponse); foreach my $name (@whichfoils) { if ($target ne 'tex') { - my $ValueForInput; - if ($Apache::lonhomework::type ne 'exam') {$ValueForInput=$temp;} else {$ValueForInput=$alphabet[$temp];} - $result.="
\n"; } else {