Diff for /loncom/interface/lonnavmaps.pm between versions 1.349.2.7 and 1.353

version 1.349.2.7, 2006/05/11 21:55:37 version 1.353, 2005/12/05 19:30:22
Line 57  my %statusIconMap = Line 57  my %statusIconMap =
      $resObj->CLOSED       => '',       $resObj->CLOSED       => '',
      $resObj->OPEN         => 'navmap.open.gif',       $resObj->OPEN         => 'navmap.open.gif',
      $resObj->CORRECT      => 'navmap.correct.gif',       $resObj->CORRECT      => 'navmap.correct.gif',
      $resObj->PARTIALLY_CORRECT      => 'navmap.partial.gif',       $resObj->PARTIALLY_CORRECT      => 'navmap.ellipsis.gif',
      $resObj->INCORRECT    => 'navmap.wrong.gif',       $resObj->INCORRECT    => 'navmap.wrong.gif',
      $resObj->ATTEMPTED    => 'navmap.ellipsis.gif',       $resObj->ATTEMPTED    => 'navmap.ellipsis.gif',
      $resObj->ERROR        => ''       $resObj->ERROR        => ''
Line 530  sub getDescription { Line 530  sub getDescription {
     if ($status == $res->PAST_DUE_NO_ANSWER) {      if ($status == $res->PAST_DUE_NO_ANSWER) {
         return &mt("Was due")." " . timeToHumanString($res->duedate($part),'end');          return &mt("Was due")." " . timeToHumanString($res->duedate($part),'end');
     }      }
     if (($status == $res->ANSWER_OPEN || $status == $res->PARTIALLY_CORRECT)      if ($status == $res->ANSWER_OPEN || $status == $res->PARTIALLY_CORRECT) {
  && $res->handgrade($part) ne 'yes') {  
         return &mt("Answer available");          return &mt("Answer available");
     }      }
     if ($status == $res->EXCUSED) {      if ($status == $res->EXCUSED) {
Line 2266  sub get_user_data { Line 2265  sub get_user_data {
     $self->{RETRIEVED_USER_DATA} = 1;      $self->{RETRIEVED_USER_DATA} = 1;
 }  }
   
 sub get_discussion_data {  
     my $self = shift;  
     if ($self->{RETRIEVED_DISCUSSION_DATA}) {  
          return  $self->{DISCUSSION_DATA};  
     }  
                                                                                   
     my $cid=$env{'request.course.id'};  
     my $cdom=$env{'course.'.$cid.'.domain'};  
     my $cnum=$env{'course.'.$cid.'.num'};  
                                                                                   
     # Retrieve discussion data for resources in course  
     my %discussion_data = &Apache::lonnet::dump($cid,$cdom,$cnum);  
                                                                                   
     $self->{DISCUSSION_DATA} = \%discussion_data;  
     $self->{RETRIEVED_DISCUSSION_DATA} = 1;  
     return $self->{DISCUSSION_DATA};  
 }  
   
   
 # Internal function: Takes a key to look up in the nav hash and implements internal  # Internal function: Takes a key to look up in the nav hash and implements internal
 # memory caching of that key.  # memory caching of that key.
 sub navhash {  sub navhash {
Line 2495  sub parmval_real { Line 2475  sub parmval_real {
   
     my $cid=$env{'request.course.id'};      my $cid=$env{'request.course.id'};
     my $csec=$env{'request.course.sec'};      my $csec=$env{'request.course.sec'};
       my $cgroup='';
       my @cgrps=split(/:/,$env{'request.course.groups'});
       if (@cgrps > 0) {
           @cgrps = sort(@cgrps);
           $cgroup = $cgrps[0];
       } 
     my $uname=$env{'user.name'};      my $uname=$env{'user.name'};
     my $udom=$env{'user.domain'};      my $udom=$env{'user.domain'};
   
Line 2512  sub parmval_real { Line 2498  sub parmval_real {
     my $mapparm=$mapname.'___(all).'.$what;      my $mapparm=$mapname.'___(all).'.$what;
     my $usercourseprefix=$cid;      my $usercourseprefix=$cid;
   
       my $grplevel=$usercourseprefix.'.['.$cgroup.'].'.$what;
       my $grplevelr=$usercourseprefix.'.['.$cgroup.'].'.$symbparm;
       my $grplevelm=$usercourseprefix.'.['.$cgroup.'].'.$mapparm;
   
     my $seclevel= $usercourseprefix.'.['.$csec.'].'.$what;      my $seclevel= $usercourseprefix.'.['.$csec.'].'.$what;
     my $seclevelr=$usercourseprefix.'.['.$csec.'].'.$symbparm;      my $seclevelr=$usercourseprefix.'.['.$csec.'].'.$symbparm;
     my $seclevelm=$usercourseprefix.'.['.$csec.'].'.$mapparm;      my $seclevelm=$usercourseprefix.'.['.$csec.'].'.$mapparm;
Line 2532  sub parmval_real { Line 2522  sub parmval_real {
     }      }
   
 # ------------------------------------------------------- second, check course  # ------------------------------------------------------- second, check course
       if ($cgroup ne '' and defined($courseopt)) {
           if (defined($$courseopt{$grplevelr})) { return $$courseopt{$grplevelr}; }
           if (defined($$courseopt{$grplevelm})) { return $$courseopt{$grplevelm}; }
           if (defined($$courseopt{$grplevel})) { return $$courseopt{$grplevel}; }
       }
   
     if ($csec and defined($courseopt)) {      if ($csec and defined($courseopt)) {
         if (defined($$courseopt{$seclevelr})) { return $$courseopt{$seclevelr}; }          if (defined($$courseopt{$seclevelr})) { return $$courseopt{$seclevelr}; }
         if (defined($$courseopt{$seclevelm})) { return $$courseopt{$seclevelm}; }          if (defined($$courseopt{$seclevelm})) { return $$courseopt{$seclevelm}; }
Line 3641  sub condition { Line 3637  sub condition {
 }  }
 sub condval {  sub condval {
     my $self=shift;      my $self=shift;
     my ($pathname,$filename) =       my $uri=&Apache::lonnet::deversion(&Apache::lonnet::declutter($self->src()));
  &Apache::lonnet::split_uri_for_cond($self->src());      my ($pathname,$filename)=($uri=~m|(.*)/([^/]*)|);
       $pathname=~s/^adm\/wrapper\///;    
   
     my $match=($env{'acc.res.'.$env{'request.course.id'}.'.'.$pathname}=~      my $match=($env{'acc.res.'.$env{'request.course.id'}.'.'.$pathname}=~
        /\&\Q$filename\E\:([\d\|]+)\&/);         /\&\Q$filename\E\:([\d\|]+)\&/);
Line 3728  sub contains_problem { Line 3725  sub contains_problem {
 }  }
 sub is_sequence {  sub is_sequence {
     my $self=shift;      my $self=shift;
       my $src = $self->src();
     return $self->navHash("is_map_", 1) &&       return $self->navHash("is_map_", 1) && 
  $self->navHash("map_type_" . $self->map_pc()) eq 'sequence';   $self->navHash("map_type_" . $self->map_pc()) eq 'sequence';
 }  }
Line 3797  Returns a string with the type of the ma Line 3795  Returns a string with the type of the ma
 sub map_finish {  sub map_finish {
     my $self = shift;      my $self = shift;
     my $src = $self->src();      my $src = $self->src();
     $src = &Apache::lonnet::deversion(&Apache::lonnet::clutter($src));      $src = Apache::lonnet::clutter($src);
     my $res = $self->navHash("map_finish_$src", 0);      my $res = $self->navHash("map_finish_$src", 0);
     $res = $self->{NAV_MAP}->getById($res);      $res = $self->{NAV_MAP}->getById($res);
     return $res;      return $res;
 }  }
 sub map_pc {  sub map_pc {
     my $self = shift;      my $self = shift;
     my $src = &Apache::lonnet::deversion($self->src());      my $src = $self->src();
     return $self->navHash("map_pc_$src", 0);      return $self->navHash("map_pc_$src", 0);
 }  }
 sub map_start {  sub map_start {
     my $self = shift;      my $self = shift;
     my $src = $self->src();      my $src = $self->src();
     $src = &Apache::lonnet::deversion(&Apache::lonnet::clutter($src));      $src = Apache::lonnet::clutter($src);
     my $res = $self->navHash("map_start_$src", 0);      my $res = $self->navHash("map_start_$src", 0);
     $res = $self->{NAV_MAP}->getById($res);      $res = $self->{NAV_MAP}->getById($res);
     return $res;      return $res;

Removed from v.1.349.2.7  
changed lines
  Added in v.1.353


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