Diff for /loncom/interface/lonnavmaps.pm between versions 1.434 and 1.440.2.3

version 1.434, 2009/05/04 16:45:57 version 1.440.2.3, 2010/11/15 22:46:47
Line 2 Line 2
 # Navigate Maps Handler  # Navigate Maps Handler
 #  #
 # $Id$  # $Id$
   
 #  #
 # Copyright Michigan State University Board of Trustees  # Copyright Michigan State University Board of Trustees
 #  #
Line 31 Line 32
   
 =head1 NAME  =head1 NAME
   
 Apache::lonnavmaps.pm  Apache::lonnavmaps - Subroutines to handle and render the navigation
   
 =head1 SYNOPSIS  =head1 SYNOPSIS
   
Line 504  my %statusIconMap = Line 505  my %statusIconMap =
      $resObj->ERROR        => ''       $resObj->ERROR        => ''
      );       );
   
 my %iconAltTags =   my %iconAltTags =   #texthash does not work here
     ( 'navmap.correct.gif' => 'Correct',      ( 'navmap.correct.gif'  => 'Correct',
       'navmap.wrong.gif'   => 'Incorrect',        'navmap.wrong.gif'    => 'Incorrect',
       'navmap.open.gif'    => 'Open' );        'navmap.open.gif'     => 'Open',
         'navmap.partial.gif'  => 'Partially Correct',
         'navmap.ellipsis.gif' => 'Attempted',
        );
   
 # Defines a status->color mapping, null string means don't color  # Defines a status->color mapping, null string means don't color
 my %colormap =   my %colormap = 
Line 597  sub getLinkForResource { Line 601  sub getLinkForResource {
     my ($map,$id,$src)=&Apache::lonnet::decode_symb($res->symb());      my ($map,$id,$src)=&Apache::lonnet::decode_symb($res->symb());
     if ($map=~/\.page$/) {      if ($map=~/\.page$/) {
  my $url=&Apache::lonnet::clutter($map);   my $url=&Apache::lonnet::clutter($map);
  $anchor=&escape($src->shown_symb());   $anchor=&escape($res->shown_symb());
  return ($url,$res->shown_symb(),$anchor);   return ($url,$res->shown_symb(),$anchor);
     }      }
         }          }
Line 695  sub getDescription { Line 699  sub getDescription {
         return &mt("Excused by instructor");          return &mt("Excused by instructor");
     }      }
     if ($status == $res->ATTEMPTED) {      if ($status == $res->ATTEMPTED) {
         return &mt("Answer submitted, not yet graded");          if ($res->src() eq '/res/gci/gci/internal/submission.problem') {
               return &mt('Question(s) submitted for review');
           } else {
               return &mt("Answer submitted, not yet graded");
           }
     }      }
     if ($status == $res->TRIES_LEFT) {      if ($status == $res->TRIES_LEFT) {
         my $tries = $res->tries($part);          my $tries = $res->tries($part);
Line 715  sub getDescription { Line 723  sub getDescription {
         }          }
     }      }
     if ($status == $res->ANSWER_SUBMITTED) {      if ($status == $res->ANSWER_SUBMITTED) {
         return &mt('Answer submitted');          if ($res->src() eq '/res/gci/gci/internal/submission.problem') {
               return &mt('Question(s) submitted for review');
           } else {
               return &mt('Answer submitted');
           }
     }      }
 }  }
   
Line 880  sub render_resource { Line 892  sub render_resource {
     my $link = $params->{"resourceLink"};      my $link = $params->{"resourceLink"};
   
     #  The URL part is not escaped at this point, but the symb is...       #  The URL part is not escaped at this point, but the symb is... 
     #  The stuff to the left of the ? must have ' replaced by \' since  
     #  it will be quoted with ' in the href.  
   
     my ($left,$right) = split(/\?/, $link);  
     $link = $left.'?'.$right;  
   
     my $src = $resource->src();      my $src = $resource->src();
     my $it = $params->{"iterator"};      my $it = $params->{"iterator"};
Line 1095  sub render_quick_status { Line 1102  sub render_quick_status {
         if ($icon) {          if ($icon) {
     my $location=      my $location=
  &Apache::loncommon::lonhttpdurl("/adm/lonIcons/$icon");   &Apache::loncommon::lonhttpdurl("/adm/lonIcons/$icon");
             $result .= "$linkopen<img src='$location' alt='$alt' />$linkclose";   $result .= $linkopen.'<img src="'.$location.'" alt="'.&mt($alt).'" title="'.&mt($alt).'" />'.$linkclose;            
         } else {          } else {
             $result .= "&nbsp;";              $result .= "&nbsp;";
         }          }
Line 1489  END Line 1496  END
         
     if ($args->{'caller'} eq 'navmapsdisplay') {      if ($args->{'caller'} eq 'navmapsdisplay') {
         $result .= '<table><tr><td>'.          $result .= '<table><tr><td>'.
                    &Apache::loncommon::help_open_menu('Navigation Screen','Navigation_Screen',undef,'RAT').'</td>';                     &Apache::loncommon::help_open_menu('Navigation Screen','Navigation_Screen',undef,'RAT').'</td><td>&nbsp;</td>';
  if ($env{'environment.remotenavmap'} ne 'on') {  
     $result .= '<td>&nbsp;</td>';   
         } else {  
     $result .= '</tr><tr>';   
         }  
  $result.="<td class=\"LC_middle\">".mt('Tools:')."</td>";   $result.="<td class=\"LC_middle\">".mt('Tools:')."</td>";
  $result.=&show_linkitems_toolbar($args->{'linkitems'});   $result.=&show_linkitems_toolbar($args->{'linkitems'});
         if ($args->{'sort_html'}) {          if ($args->{'sort_html'}) {
Line 1502  END Line 1504  END
  $result.='<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>'.   $result.='<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>'.
     '<td align="right">'.$args->{'sort_html'}.'</td></tr>';      '<td align="right">'.$args->{'sort_html'}.'</td></tr>';
     } else {      } else {
  $result.='</tr><tr><td align="left"><br />'.   $result.='</tr><tr><td align="left" colspan="4"><br />'.
     $args->{'sort_html'}.'</td></tr>';      $args->{'sort_html'}.'</td></tr>';
     }      }
  }   }
Line 1529  END Line 1531  END
         ( $res->NETWORK_FAILURE    => 1,          ( $res->NETWORK_FAILURE    => 1,
           $res->NOTHING_SET        => 1,            $res->NOTHING_SET        => 1,
           $res->CORRECT            => 1 );            $res->CORRECT            => 1 );
     my @backgroundColors = ("LC_trEven", "LC_trOdd");  
   
     # Shared variables      # Shared variables
     $args->{'counter'} = 0; # counts the rows      $args->{'counter'} = 0; # counts the rows
Line 1764  END Line 1765  END
         # show them.          # show them.
         foreach my $part (@parts) {          foreach my $part (@parts) {
             $rownum ++;              $rownum ++;
             my $backgroundColor = $backgroundColors[$rownum % scalar(@backgroundColors)];  
                           
             $result .= &Apache::loncommon::start_data_table_row();              $result .= &Apache::loncommon::start_data_table_row();
   
Line 1887  sub show_linkitems_toolbar { Line 1887  sub show_linkitems_toolbar {
     my $result .='       my $result .=' 
               <td align="left">                <td align="left">
                        <span class="LC_nobreak">'."\n<ul id=\"LC_toolbar\">";                         <span class="LC_nobreak">'."\n<ul id=\"LC_toolbar\">";
  foreach my $link (@linkorder) {      foreach my $link (@linkorder) {
         my $link_id = "LC_content_toolbar_".$link;          my $link_id = "LC_content_toolbar_".$link;
  if (defined($linkitems->{$link})) {   if (defined($linkitems->{$link})) {
     if ($linkitems->{$link}{'text'} ne '') {      if ($linkitems->{$link}{'text'} ne '') {
Line 1907  sub show_linkitems_toolbar { Line 1907  sub show_linkitems_toolbar {
     }      }
  }   }
     }      }
       if ($env{'environment.remotenavmap'} eq 'on') {
           if (&Apache::loncommon::needs_gci_custom()) {
               if ($env{'request.course.id'} &&
                   &Apache::lonnet::allowed('mdc',$env{'request.course.id'})) {
                   $result .= '<li><a target="loncapaclient" href="/adm/menu" id="LC_content_toolbar_management" class="LC_toolbarItem" title="'.&mt('Test Management').'" /></a></li>';
               }
           }
       }
     $result .= '</ul>';      $result .= '</ul>';
     $result .= ' </span></td>'."\n";      $result .= ' </span></td>'."\n";
   
Line 2380  resource object. Line 2388  resource object.
 Based on the symb of the resource, get a resource object for that  Based on the symb of the resource, get a resource object for that
 resource. This is one of the proper ways to get a resource object.  resource. This is one of the proper ways to get a resource object.
   
 =item * B<getMapByMapPc>(map_pc):  =item * B<getByMapPc>(map_pc):
   
 Based on the map_pc of the resource, get a resource object for  Based on the map_pc of the resource, get a resource object for
 the given map. This is one of the proper ways to get a resource object.  the given map. This is one of the proper ways to get a resource object.
Line 3874  resource of the map. Line 3882  resource of the map.
   
 Returns a string with the type of the map in it.  Returns a string with the type of the map in it.
   
   =item *B<map_hierarchy>:
   
   Returns a string with a comma-separated ordered list of map_pc IDs
   for the hierarchy of maps containing a map, with the top level
   map first, then descending to deeper levels, with the enclosing map last.
   
 =back  =back
   
 =cut  =cut
Line 3904  sub map_type { Line 3918  sub map_type {
     my $pc = $self->map_pc();      my $pc = $self->map_pc();
     return $self->navHash("map_type_$pc", 0);      return $self->navHash("map_type_$pc", 0);
 }  }
   sub map_hierarchy {
       my $self = shift;
       my $pc = $self->map_pc();
       return $self->navHash("map_hierarchy_$pc", 0);
   }
   
 #####  #####
 # Property queries  # Property queries

Removed from v.1.434  
changed lines
  Added in v.1.440.2.3


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