Diff for /loncom/interface/lonnavmaps.pm between versions 1.509.2.4 and 1.509.2.5

version 1.509.2.4, 2016/10/27 15:17:42 version 1.509.2.5, 2016/11/29 15:13:19
Line 996  sub render_resource { Line 996  sub render_resource {
             $linkopen = "";              $linkopen = "";
             $linkclose = "";              $linkclose = "";
         }          }
         if ((&Apache::lonnet::allowed('mdc',$env{'request.course.id'})) &&          if (((&Apache::lonnet::allowed('mdc',$env{'request.course.id'})) ||
                (&Apache::lonnet::allowed('cev',$env{'request.course.id'}))) &&
             ($resource->symb=~/\_\_\_[^\_]+\_\_\_uploaded/)) {              ($resource->symb=~/\_\_\_[^\_]+\_\_\_uploaded/)) {
             if (!$params->{'map_no_edit_link'}) {              if (!$params->{'map_no_edit_link'}) {
                 my $icon = &Apache::loncommon::lonhttpdurl('/res/adm/pages').'/editmap.png';                  my $icon = &Apache::loncommon::lonhttpdurl('/res/adm/pages').'/editmap.png';
Line 1541  END Line 1542  END
  $result.='</form>';   $result.='</form>';
     }      }
     if (($args->{'caller'} eq 'navmapsdisplay') &&      if (($args->{'caller'} eq 'navmapsdisplay') &&
         (&Apache::lonnet::allowed('mdc',$env{'request.course.id'}))) {          ((&Apache::lonnet::allowed('mdc',$env{'request.course.id'})) ||
            (&Apache::lonnet::allowed('cev',$env{'request.course.id'})))) {
         my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'};          my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'};
         my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};          my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};
         if ($env{'course.'.$env{'request.course.id'}.'.url'} eq           if ($env{'course.'.$env{'request.course.id'}.'.url'} eq 
Line 2732  sub parmval_real { Line 2734  sub parmval_real {
     if (defined($pack_def)) { return [$pack_def,'resource']; }      if (defined($pack_def)) { return [$pack_def,'resource']; }
     return [''];      return [''];
 }  }
   
   sub recurseup_maps {
       my ($self,$mapname) = @_;
       my @recurseup;
       if ($mapname) {
           my $res = $self->getResourceByUrl($mapname);
           if (ref($res)) {
               my @pcs = split(/,/,$res->map_hierarchy());
               shift(@pcs);
               if (@pcs) {
                   @recurseup = map { &Apache::lonnet::declutter($self->getByMapPc($_)->src()); } reverse(@pcs);
               }
           }
       }
       return @recurseup;
   }
   
 #  #
 #  Determines the open/close dates for printing a map that  #  Determines the open/close dates for printing a map that
 #  encloses a resource.  #  encloses a resource.
Line 2812  sub get_mapparam { Line 2831  sub get_mapparam {
  if (defined($$useropt{$courselevel})) {   if (defined($$useropt{$courselevel})) {
     return $$useropt{$courselevel};      return $$useropt{$courselevel};
  }   }
           if ($what =~ /\.(encrypturl|hiddenresource)$/) {
               unless ($recursed) {
                   @recurseup = $self->recurseup_maps($mapname);
                   $recursed = 1;
               }
               foreach my $item (@recurseup) {
                   my $norecursechk=$usercourseprefix.'.'.$item.'___(all).'.$what;
                   if (defined($$useropt{$norecursechk})) {
                       if ($what =~ /\.(encrypturl|hiddenresource)$/) {
                           return $$useropt{$norecursechk};
                       }
                   }
               }
           }
     }      }
   
     # Check course -- group      # Check course -- group
Line 2822  sub get_mapparam { Line 2855  sub get_mapparam {
  if (defined($$courseopt{$grplevel})) {   if (defined($$courseopt{$grplevel})) {
     return $$courseopt{$grplevel};      return $$courseopt{$grplevel};
  }   }
           if ($what =~ /\.(encrypturl|hiddenresource)$/) {
               unless ($recursed) {
                   @recurseup = $self->recurseup_maps($mapname);
                   $recursed = 1;
               }
               foreach my $item (@recurseup) {
                   my $norecursechk=$usercourseprefix.'.['.$cgroup.'].'.$item.'___(all).'.$what;
                   if (defined($$courseopt{$norecursechk})) {
                       if ($what =~ /\.(encrypturl|hiddenresource)$/) {
                           return $$courseopt{$norecursechk};
                       }
                   }
               }
           }
     }      }
   
     # Check course -- section      # Check course -- section
Line 2834  sub get_mapparam { Line 2881  sub get_mapparam {
  if (defined($$courseopt{$seclevel})) {   if (defined($$courseopt{$seclevel})) {
     return $$courseopt{$seclevel};      return $$courseopt{$seclevel};
  }   }
           if ($what =~ /\.(encrypturl|hiddenresource)$/) {
               unless ($recursed) {
                   @recurseup = $self->recurseup_maps($mapname);
                   $recursed = 1;
               }
               foreach my $item (@recurseup) {
                   my $norecursechk=$usercourseprefix.'.['.$csec.'].'.$item.'___(all).'.$what;
                   if (defined($$courseopt{$norecursechk})) {
                       if ($what =~ /\.(encrypturl|hiddenresource)$/) {
                           return $$courseopt{$norecursechk};
                       }
                   }
               }
           }
     }      }
     # Check the map parameters themselves:      # Check the map parameters themselves:
   
Line 2852  sub get_mapparam { Line 2913  sub get_mapparam {
  if (defined($$courseopt{$courselevel})) {   if (defined($$courseopt{$courselevel})) {
     return $$courseopt{$courselevel};      return $$courseopt{$courselevel};
  }   }
           if ($what =~ /\.(encrypturl|hiddenresource)$/) {
               unless ($recursed) {
                   @recurseup = $self->recurseup_maps($mapname);
                   $recursed = 1;
               }
               foreach my $item (@recurseup) {
                   my $norecursechk=$usercourseprefix.'.'.$item.'___(all).'.$what;
                   if (defined($$courseopt{$norecursechk})) {
                       if ($what =~ /\.(encrypturl|hiddenresource)$/) {
                           return $$courseopt{$norecursechk};
                       }
                   }
               }
           }
     }      }
     return undef; # Unefined if we got here.      return undef; # Unefined if we got here.
 }  }

Removed from v.1.509.2.4  
changed lines
  Added in v.1.509.2.5


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