Diff for /loncom/homework/bridgetask.pm between versions 1.170 and 1.171

version 1.170, 2006/06/13 20:48:05 version 1.171, 2006/06/13 21:34:28
Line 1916  sub start_Dimension { Line 1916  sub start_Dimension {
  $previous_dim = $Apache::bridgetask::dimension[-1];   $previous_dim = $Apache::bridgetask::dimension[-1];
  push(@{$Apache::bridgetask::dimension{$previous_dim}{'contains'}},   push(@{$Apache::bridgetask::dimension{$previous_dim}{'contains'}},
      $dim);       $dim);
  # FIXME need to add as a 'criteria' for nesting  
  $dimension{$previous_dim}{'criteria.'.$dim}='';   $dimension{$previous_dim}{'criteria.'.$dim}='';
  $dimension{$previous_dim}{'criteria.'.$dim.'.type'}='dimension';   $dimension{$previous_dim}{'criteria.'.$dim.'.type'}='dimension';
  $dimension{$previous_dim}{'criteria.'.$dim.'.mandatory'}=   $dimension{$previous_dim}{'criteria.'.$dim.'.mandatory'}=
     &Apache::lonxml::get_param('Mandatory',$parstack,$safeeval);      &Apache::lonxml::get_param('Mandatory',$parstack,$safeeval);
  push(@{$dimension{$previous_dim}{'criterias'}},$dim);   push(@{$dimension{$previous_dim}{'criterias'}},$dim);
    $dimension{$dim}{'nested'}=$previous_dim;
     } else {      } else {
  $Apache::bridgetask::top_dimensionlist{$dim}{'manadatory'}=   $Apache::bridgetask::top_dimensionlist{$dim}{'manadatory'}=
     &Apache::lonxml::get_param('Mandatory',$parstack,$safeeval);      &Apache::lonxml::get_param('Mandatory',$parstack,$safeeval);
Line 2072  sub get_criteria { Line 2072  sub get_criteria {
   
     foreach my $id (@{$dimension{$dim}{$instance.'.criterias'}},      foreach my $id (@{$dimension{$dim}{$instance.'.criterias'}},
     @{$dimension{$dim}{'criterias'}}) {      @{$dimension{$dim}{'criterias'}}) {
  # FIXME need to collect the dimension style criteria   
  # and output them here.  
  my $type = $dimension{$dim}{'criteria.'.$id.'.type'};   my $type = $dimension{$dim}{'criteria.'.$id.'.type'};
  next if ($type eq 'dimension');   if ($type eq 'dimension') {
       $result.=$dimension{$id}{'result'};
       next;
    }
  my $status= &get_criteria('status', $version,$dim,$id);   my $status= &get_criteria('status', $version,$dim,$id);
  my $comment=&get_criteria('comment',$version,$dim,$id);   my $comment=&get_criteria('comment',$version,$dim,$id);
  my $mandatory=($dimension{$dim}{'criteria.'.$id.'.mandatory'} ne 'N');   my $mandatory=($dimension{$dim}{'criteria.'.$id.'.mandatory'} ne 'N');
Line 2105  sub get_criteria { Line 2106  sub get_criteria {
     }      }
  }   }
     }      }
       if (exists($dimension{$dim}{'nested'})) {
    $dimension{$dim}{'result'}=$result;
    undef($result);
       }
  } elsif ($target eq 'webgrade') {   } elsif ($target eq 'webgrade') {
     # in case of any side effects that we need      # in case of any side effects that we need
     @Apache::scripttag::parser_env = @_;      @Apache::scripttag::parser_env = @_;
Line 2115  sub get_criteria { Line 2120  sub get_criteria {
     &Apache::scripttag::xmlparse($dimension{$dim}{'questiontext'});      &Apache::scripttag::xmlparse($dimension{$dim}{'questiontext'});
     foreach my $id (@{$dimension{$dim}{$instance.'.criterias'}},      foreach my $id (@{$dimension{$dim}{$instance.'.criterias'}},
     @{$dimension{$dim}{'criterias'}} ) {      @{$dimension{$dim}{'criterias'}} ) {
  # dimensional 'criteria' don't get assigned grades  
  my $type = $dimension{$dim}{'criteria.'.$id.'.type'};   my $type = $dimension{$dim}{'criteria.'.$id.'.type'};
  next if ($type eq 'dimension');   if ($type eq 'dimension') {
       # dimensional 'criteria' don't get assigned grades
       $result.=$dimension{$id}{'result'};
       next;
    }
   
  my $link=&link($id);   my $link=&link($id);
  my $status= &get_criteria('status',$version,$dim,$id);   my $status= &get_criteria('status',$version,$dim,$id);
Line 2144  sub get_criteria { Line 2152  sub get_criteria {
  $result.=&grading_history($version,$dim,$id);   $result.=&grading_history($version,$dim,$id);
  $last_link=$link;   $last_link=$link;
     }      }
       if (exists($dimension{$dim}{'nested'})) {
    $dimension{$dim}{'result'}=$result;
    undef($result);
       }
  } elsif ($target eq 'grade' && $env{'form.webgrade'}) {   } elsif ($target eq 'grade' && $env{'form.webgrade'}) {
     my $optional_passed=0;      my $optional_passed=0;
     my $mandatory_failed=0;      my $mandatory_failed=0;

Removed from v.1.170  
changed lines
  Added in v.1.171


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