Diff for /loncom/interface/lonnavmaps.pm between versions 1.538 and 1.541

version 1.538, 2017/12/21 03:50:57 version 1.541, 2018/01/31 14:05:12
Line 71  processed. Line 71  processed.
   
 Apache::lonnavmaps provides an object model for manipulating this  Apache::lonnavmaps provides an object model for manipulating this
 information in a higher-level fashion than directly manipulating   information in a higher-level fashion than directly manipulating 
 the hash. It also provides access to several auxilary functions   the hash. It also provides access to several auxiliary functions 
 that aren't necessarily stored in the Big Hash, but are a per-  that aren't necessarily stored in the Big Hash, but are a per-
 resource sort of value, like whether there is any feedback on   resource sort of value, like whether there is any feedback on 
 a given resource.  a given resource.
Line 92  graded for named user(s) or specific COD Line 92  graded for named user(s) or specific COD
 domain, or CODE can be passed as arguments when creating a new   domain, or CODE can be passed as arguments when creating a new 
 navmap object.  navmap object.
   
 Note if you want things like "due dates for another student,  Note if you want things like "due dates for another student",
 you would use the EXT function instead of lonnavmaps.  you would use the EXT function instead of lonnavmaps.
 That said, the lonnavmaps module can still help, because many  That said, the lonnavmaps module can still help, because many
 things, such as the course structure, are usually constant  things, such as the course structure, are usually constant
Line 702  sub getDescription { Line 702  sub getDescription {
     }      }
     if (($status == $res->ANSWER_OPEN || $status == $res->PARTIALLY_CORRECT)      if (($status == $res->ANSWER_OPEN || $status == $res->PARTIALLY_CORRECT)
  && $res->handgrade($part) ne 'yes') {   && $res->handgrade($part) ne 'yes') {
         return &Apache::lonhtmlcommon::direct_parm_link(&mt("Answer available"),$res->symb(),'answerdate,duedate',$part);          my $msg = &mt('Answer available');
           my $parmlist = 'answerdate,duedate';
           if (($res->is_tool) && ($res->is_gradable())) {
               if (($status == $res->PARTIALLY_CORRECT) && ($res->parmval('retrypartial',$part))) {
                   $msg = &mt('Grade received');
                   $parmlist = 'retrypartial';
               } else {
                   $msg = &mt('Grade available');
               }
           }
           return &Apache::lonhtmlcommon::direct_parm_link($msg,$res->symb(),$parmlist,$part);
     }      }
     if ($status == $res->EXCUSED) {      if ($status == $res->EXCUSED) {
         return &mt("Excused by instructor");          return &mt("Excused by instructor");
Line 956  sub render_resource { Line 966  sub render_resource {
     # links to open and close the folder      # links to open and close the folder
   
     my $whitespace = $location.'/whitespace_21.gif';      my $whitespace = $location.'/whitespace_21.gif';
     my $linkopen = "<img src='$whitespace' alt='' />"."<a href=\"$link\">";      my $linkopen = "<img src='$whitespace' alt='' />";
       my $nomodal;
       if (($params->{'modalLink'}) && (!$resource->is_sequence())) {
           if ($link =~m{^(?:|/adm/wrapper)/ext/([^#]+)}) {
               my $exturl = $1;
               if (($ENV{'SERVER_PORT'} == 443) && ($exturl !~ /^https:/)) {
                   $nomodal = 1;
               }
           } elsif (($link eq "/public/$LONCAPA::match_domain/$LONCAPA::match_courseid/syllabus") &&
                    ($env{'request.course.id'}) && ($ENV{'SERVER_PORT'} == 443) &&
                    ($env{'course.'.$env{'request.course.id'}.'.externalsyllabus'} =~ m{^http://})) {
                $nomodal = 1;
           }
           my $esclink = &js_escape($link);
           if ($nomodal) {
               $linkopen .= "<a href=\"#\" onclick=\"javascript:window.open('$esclink','resourcepreview','height=400,width=500,scrollbars=1,resizable=1,menubar=0,location=1'); return false;\" />";
           } else {
               $linkopen .= "<a href=\"$link\" onclick=\"javascript:openMyModal('$esclink',600,500,'yes','true'); return false;\">";
           }
       } else {
           $linkopen .= "<a href=\"$link\">";
       }
     my $linkclose = "</a>";      my $linkclose = "</a>";
   
     # Default icon: unknown page      # Default icon: unknown page
Line 1084  sub render_resource { Line 1115  sub render_resource {
     }      }
   
     if (!$params->{'resource_nolink'} && !$resource->is_sequence() && !$resource->is_empty_sequence) {      if (!$params->{'resource_nolink'} && !$resource->is_sequence() && !$resource->is_empty_sequence) {
         $result .= "$curMarkerBegin<a href=\"$link\">$title$partLabel</a>$curMarkerEnd$editmapLink$nonLinkedText</td>";          $linkclose = '</a>';
     } else {          if ($params->{'modalLink'}) {
         $result .= "$curMarkerBegin$linkopen$title$partLabel</a>$curMarkerEnd$editmapLink$nonLinkedText</td>";              my $esclink = &js_escape($link);
               if ($nomodal) {
                   $linkopen = "<a href=\"#\" onclick=\"javascript:window.open('$esclink','resourcepreview','height=400,width=500,scrollbars=1,resizable=1,menubar=0,location=1'); return false;\" />";
               } else {
                   $linkopen = "<a href=\"$link\" onclick=\"javascript:openMyModal('$esclink',600,500,'yes','true'); return false;\">";
               }
           } else {
               $linkopen = "<a href=\"$link\">";
           }
     }      }
       $result .= "$curMarkerBegin$linkopen$title$partLabel$linkclose$curMarkerEnd$editmapLink$nonLinkedText</td>";
   
     return $result;      return $result;
 }  }
Line 1725  END Line 1765  END
         $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};          $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};
     }      }
   
       my $inhibitmenu;
       if ($args->{'modalLink'}) {
           $inhibitmenu = '&amp;inhibitmenu=yes';
       }
   
     while (1) {      while (1) {
  if ($args->{'sort'}) {   if ($args->{'sort'}) {
     $curRes = shift(@resources);      $curRes = shift(@resources);
Line 1878  END Line 1923  END
     } else {      } else {
         $args->{"resourceLink"} = $src.          $args->{"resourceLink"} = $src.
     ($srcHasQuestion?'&amp;':'?') .      ($srcHasQuestion?'&amp;':'?') .
     'symb=' . &escape($symb).$anchor;      'symb=' . &escape($symb).$inhibitmenu.$anchor;
     }      }
  }   }
         # Now, we've decided what parts to show. Loop through them and          # Now, we've decided what parts to show. Loop through them and

Removed from v.1.538  
changed lines
  Added in v.1.541


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