Diff for /loncom/homework/structuretags.pm between versions 1.332 and 1.332.2.2

version 1.332, 2006/01/27 23:36:48 version 1.332.2.2, 2006/03/29 22:43:29
Line 44  BEGIN { Line 44  BEGIN {
 sub start_web {  sub start_web {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
     my $bodytext=&Apache::lonxml::get_all_text("/web",$parser,$style);      my $bodytext=&Apache::lonxml::get_all_text("/web",$parser,$style);
     if ($target eq 'web') {      if ($target eq 'web' || $target eq 'webgrade') {
  return $bodytext;   return $bodytext;
     }      }
     return '';      return '';
Line 113  sub page_start { Line 113  sub page_start {
     &Apache::lonhtmlcommon::htmlareaheaders().      &Apache::lonhtmlcommon::htmlareaheaders().
     &Apache::lonhtmlcommon::spellheader().      &Apache::lonhtmlcommon::spellheader().
     &Apache::lonxml::fontsettings();           &Apache::lonxml::fontsettings();     
    my $css_href = &Apache::lonnet::EXT('resource.0.cssfile');
    if ($css_href =~ /\S/) {
       &Apache::lonxml::extlink($css_href);
       $head_tag_start = 
    '<link rel="stylesheet" type="text/css" href="'.$css_href.'" />';
    }
  if ($target eq 'edit') {   if ($target eq 'edit') {
     $head_tag_start.=&Apache::edit::js_change_detection();      $head_tag_start.=&Apache::edit::js_change_detection();
  }   }
Line 974  sub start_block { Line 980  sub start_block {
   
     my $result;      my $result;
   
     if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' ||      if ($target eq 'web' || $target eq 'grade'   || $target eq 'answer'  ||
  $target eq 'tex' || $target eq 'analyze') {   $target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') {
  my $code = $token->[2]->{'condition'};   my $code = $token->[2]->{'condition'};
  if (defined($code)) {   if (defined($code)) {
     if (!$Apache::lonxml::default_homework_loaded) {      if (!$Apache::lonxml::default_homework_loaded) {
Line 1018  sub start_languageblock { Line 1024  sub start_languageblock {
   
     my $result;      my $result;
   
     if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' ||      if ($target eq 'web' || $target eq 'grade'   || $target eq 'answer' ||
  $target eq 'tex' || $target eq 'analyze') {   $target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') {
  my $include = $token->[2]->{'include'};   my $include = $token->[2]->{'include'};
  my $exclude = $token->[2]->{'exclude'};   my $exclude = $token->[2]->{'exclude'};
         my %languages=&Apache::loncommon::display_languages();          my %languages=&Apache::loncommon::display_languages();
Line 1071  sub start_instructorcomment { Line 1077  sub start_instructorcomment {
   
     my $result;      my $result;
   
     if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' ||      if ($target eq 'web' || $target eq 'grade'   || $target eq 'answer' ||
  $target eq 'tex' || $target eq 'analyze') {   $target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') {
         $result=($env{'request.role'}=~/^(in|cc|au|ca|li)/);          $result=($env{'request.role'}=~/^(in|cc|au|ca|li)/);
  if ( (! $result) or ($env{'form.instructor_comments'} eq 'hide')) {   if ( (! $result) or ($env{'form.instructor_comments'} eq 'hide')) {
     my $skip=&Apache::lonxml::get_all_text("/instructorcomment",      my $skip=&Apache::lonxml::get_all_text("/instructorcomment",
Line 1100  sub start_while { Line 1106  sub start_while {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
   
     my $result;      my $result;
     if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' ||      if ($target eq 'web' || $target eq 'grade'   || $target eq 'answer' ||
  $target eq 'tex' || $target eq 'analyze') {   $target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') {
  my $code = $token->[2]->{'condition'};   my $code = $token->[2]->{'condition'};
   
  push( @Apache::structuretags::whileconds, $code);   push( @Apache::structuretags::whileconds, $code);
Line 1133  sub end_while { Line 1139  sub end_while {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
     my $result;      my $result;
   
     if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' ||      if ($target eq 'web' || $target eq 'grade'   || $target eq 'answer' ||
  $target eq 'tex' || $target eq 'analyze') {   $target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') {
  my $code = pop(@Apache::structuretags::whileconds);   my $code = pop(@Apache::structuretags::whileconds);
  my $bodytext = pop(@Apache::structuretags::whilebody);   my $bodytext = pop(@Apache::structuretags::whilebody);
  my $line = pop(@Apache::structuretags::whileline);   my $line = pop(@Apache::structuretags::whileline);
Line 1167  sub end_while { Line 1173  sub end_while {
 sub start_randomlist {  sub start_randomlist {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
     my $result;      my $result;
     if ($target eq 'answer' || $target eq 'grade' || $target eq 'web' ||      if ($target eq 'answer' || $target eq 'grade'   || $target eq 'web' ||
  $target eq 'tex' || $target eq 'analyze') {   $target eq 'tex'    || $target eq 'analyze' || $target eq 'webgrade') {
  my $body= &Apache::lonxml::get_all_text("/randomlist",$parser);   my $body= &Apache::lonxml::get_all_text("/randomlist",$parser);
  my $b_parser= HTML::LCParser->new(\$body);   my $b_parser= HTML::LCParser->new(\$body);
  $b_parser->xml_mode(1);   $b_parser->xml_mode(1);
Line 1408  sub end_part { Line 1414  sub end_part {
   
 sub start_preduedate {  sub start_preduedate {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
     if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' || $target eq 'tex') {      if ($target eq 'web' || $target eq 'grade'    || $target eq 'answer' ||
    $target eq 'tex' || $target eq 'webgrade') {
  &Apache::lonxml::debug("State in preduedate is ". $Apache::inputtags::status['-1']);   &Apache::lonxml::debug("State in preduedate is ". $Apache::inputtags::status['-1']);
  if (!$Apache::lonhomework::scantronmode &&   if (!$Apache::lonhomework::scantronmode &&
     $Apache::inputtags::status['-1'] ne 'CAN_ANSWER' &&      $Apache::inputtags::status['-1'] ne 'CAN_ANSWER' &&
Line 1426  sub end_preduedate { Line 1433  sub end_preduedate {
   
 sub start_postanswerdate {  sub start_postanswerdate {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
     if ($target eq 'web' || $target eq 'grade') {      if ($target eq 'web' || $target eq 'grade' || $target eq 'webgrade') {
  if ($Apache::lonhomework::scantronmode ||   if ($Apache::lonhomework::scantronmode ||
     $Apache::inputtags::status['-1'] ne 'SHOW_ANSWER') {      $Apache::inputtags::status['-1'] ne 'SHOW_ANSWER') {
     &Apache::lonxml::get_all_text("/postanswerdate",$parser,$style);      &Apache::lonxml::get_all_text("/postanswerdate",$parser,$style);
Line 1444  sub end_postanswerdate { Line 1451  sub end_postanswerdate {
 sub start_notsolved {  sub start_notsolved {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
     if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' ||      if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' ||
  $target eq 'tex') {   $target eq 'tex' || $target eq 'webgrade') {
  my $gradestatus=$Apache::lonhomework::history{"resource.$Apache::inputtags::part.solved"};   my $gradestatus=$Apache::lonhomework::history{"resource.$Apache::inputtags::part.solved"};
  &Apache::lonxml::debug("not solved has :$gradestatus:");   &Apache::lonxml::debug("not solved has :$gradestatus:");
  if ($gradestatus =~ /^correct/ &&   if ($gradestatus =~ /^correct/ &&
Line 1480  sub end_solved { Line 1487  sub end_solved {
 sub start_problemtype {  sub start_problemtype {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
     my $result;      my $result;
     if ($target eq 'web' || $target eq 'grade' || $target eq 'answer' ||      if ($target eq 'web' || $target eq 'grade'   || $target eq 'answer' ||
  $target eq 'tex' || $target eq 'analyze') {   $target eq 'tex' || $target eq 'analyze' || $target eq 'webgrade') {
  my $mode=lc(&Apache::lonxml::get_param('mode',$parstack,$safeeval));   my $mode=lc(&Apache::lonxml::get_param('mode',$parstack,$safeeval));
  if (!defined($mode)) { $mode='show'; }   if (!defined($mode)) { $mode='show'; }
  my $for=&Apache::lonxml::get_param('for',$parstack,$safeeval);   my $for=&Apache::lonxml::get_param('for',$parstack,$safeeval);

Removed from v.1.332  
changed lines
  Added in v.1.332.2.2


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