Diff for /loncom/homework/matchresponse.pm between versions 1.41 and 1.46

version 1.41, 2004/05/27 04:32:19 version 1.46, 2004/10/07 20:28:30
Line 110  sub start_itemgroup { Line 110  sub start_itemgroup {
     } elsif ($target eq 'web' or $target eq 'tex') {      } elsif ($target eq 'web' or $target eq 'tex') {
  $Apache::matchresponse::itemtable{'location'}=   $Apache::matchresponse::itemtable{'location'}=
     &Apache::lonxml::get_param('location',$parstack,$safeeval);      &Apache::lonxml::get_param('location',$parstack,$safeeval);
    $Apache::matchresponse::TeXitemgroupwidth=&Apache::lonxml::get_param('TeXitemgroupwidth',$parstack,$safeeval,undef,0);
     }      }
     return $result;      return $result;
 }  }
Line 459  sub displayfoils { Line 460  sub displayfoils {
     my $text=$Apache::response::foilgroup{$name.'.text'};      my $text=$Apache::response::foilgroup{$name.'.text'};
     if ($target ne 'tex') {      if ($target ne 'tex') {
  if ($Apache::lonhomework::type ne 'exam') {   if ($Apache::lonhomework::type ne 'exam') {
     $question.='<br />'.$optionlist.$text."\n";      $question.="<br />\n".$optionlist.$text;
  } else {   } else {
     $question.='<br />'.$text."\n";      $question.="<br />\n".$text;
  }   }
  if ($Apache::lonhomework::type eq 'exam') {   if ($Apache::lonhomework::type eq 'exam') {
     $question.=&Apache::optionresponse::webbubbles(\@used_letters,\@used_letters,$temp,$last_letter);      my @blank;
       $question.=&Apache::optionresponse::webbubbles(\@used_letters,\@blank,$temp,$last_letter);
  }   }
     } else {      } else {
  if ($Apache::lonhomework::type eq 'exam') {   if ($Apache::lonhomework::type eq 'exam') {
Line 486  sub displayfoils { Line 488  sub displayfoils {
  $result=$question.$result;   $result=$question.$result;
     } elsif ($result=&itemdisplay('right')) {      } elsif ($result=&itemdisplay('right')) {
  if ($target ne 'tex') {   if ($target ne 'tex') {
     $result='<table><tr><td>'.$question.'</td><td>'.$result.      #remove the first <br />
  '</td></tr></table>';      $question=~s|<br />||;
       $result='<table><tr><td valign="top">'.$question.
    '</td><td valign="top">'.$result.'</td></tr></table>';
  } else {   } else {
     my $tabsize=&Apache::londefdef::recalc($ENV{'form.textwidth'});      my $tabsize=&Apache::londefdef::recalc($ENV{'form.textwidth'});
     $tabsize=~/(\d+\.?\d*)/;      my ($lefttabsize,$righttabsize)=(0,0);
     $tabsize=$1/2.1;      if ($Apache::matchresponse::TeXitemgroupwidth ne '') {
     $tabsize.=' mm ';   $Apache::matchresponse::TeXitemgroupwidth=~/(\d*.?\d*)/;
     $result='\setlength{\tabcolsep}{1 mm}\begin{tabular}{p{'.$tabsize.'}p{'.$tabsize.'}}\begin{minipage}{'.$tabsize.'}'.$question.'\end{minipage}&\begin{minipage}{'.$tabsize.'}'.$result.'\end{minipage}\end{tabular}';   $lefttabsize=$tabsize*$1/100;
    $righttabsize=0.95*($tabsize-$lefttabsize);
       } else {
    $tabsize=~/(\d+\.?\d*)/;
    $lefttabsize=$1/2.1;
    $righttabsize=0.95*($1-$lefttabsize);
       }
       $lefttabsize.=' mm ';
       $righttabsize.=' mm ';
       $result='\setlength{\tabcolsep}{1 mm}\begin{tabular}{p{'.$righttabsize.'}p{'.$lefttabsize.'}}\begin{minipage}{'.$righttabsize.'}'.$question.'\end{minipage}&\begin{minipage}{'.$lefttabsize.'}'.$result.'\end{minipage}\end{tabular}';
  }   }
     } elsif ($result=&itemdisplay('left')) {      } elsif ($result=&itemdisplay('left')) {
  if ($target ne 'tex') {   if ($target ne 'tex') {
     $result='<table><tr><td>'.$result.'</td><td>'.$question.      #remove the first <br />
  '</td></tr></table>';      $question=~s|<br />||;
       $result='<table><tr><td valign="top">'.$result.
    '</td><td valign="top">'.$question.'</td></tr></table>';
  } else {   } else {
     my $tabsize=&Apache::londefdef::recalc($ENV{'form.textwidth'});      my $tabsize=&Apache::londefdef::recalc($ENV{'form.textwidth'});
     $tabsize=~/(\d+\.?\d*)/;      my ($lefttabsize,$righttabsize)=(0,0);
     $tabsize=$1/2.1;      if ($Apache::matchresponse::TeXitemgroupwidth ne '') {
     $tabsize.=' mm ';   $Apache::matchresponse::TeXitemgroupwidth=~/(\d*.?\d*)/;
     $result='\setlength{\tabcolsep}{1 mm}\begin{tabular}{p{'.$tabsize.'}p{'.$tabsize.'}}\begin{minipage}{'.$tabsize.'}'.$result.'\end{minipage}&\begin{minipage}{'.$tabsize.'}'.$question.'\end{minipage}\end{tabular}';   $lefttabsize=$tabsize*$1/100;
    $righttabsize=0.95*($tabsize-$lefttabsize);
       } else {
    $tabsize=~/(\d+\.?\d*)/;
    $lefttabsize=$1/2.1;
    $righttabsize=0.95*($1-$lefttabsize);
       }
       $lefttabsize.=' mm ';
       $righttabsize.=' mm ';
       $result='\setlength{\tabcolsep}{1 mm}\begin{tabular}{p{'.$lefttabsize.'}p{'.$righttabsize.'}}\begin{minipage}{'.$lefttabsize.'}'.$result.'\end{minipage}&\begin{minipage}{'.$righttabsize.'}'.$question.'\end{minipage}\end{tabular}';
  }   }
     }      }
     if ($target ne 'tex') {$result.="<br />";} else {$result.=' \\\\ ';}      if ($target ne 'tex') {$result.="<br />";} else {$result.=' \\\\ ';}
Line 567  sub start_foil { Line 591  sub start_foil {
     my $result='';      my $result='';
     if ($target eq 'web' || $target eq 'tex' || $target eq 'analyze') {      if ($target eq 'web' || $target eq 'tex' || $target eq 'analyze') {
  &Apache::lonxml::startredirection;   &Apache::lonxml::startredirection;
    if ($target eq 'analyze') {
       &Apache::response::check_if_computed($token,$parstack,$safeeval,'value');
    }
     } elsif ($target eq 'edit') {      } elsif ($target eq 'edit') {
  $result=&Apache::edit::tag_start($target,$token,"Foil");   $result=&Apache::edit::tag_start($target,$token,"Foil");
  my $level='-2';   my $level='-2';

Removed from v.1.41  
changed lines
  Added in v.1.46


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