[LON-CAPA-cvs] cvs: loncom /interface lonnavmaps.pm
albertel
lon-capa-cvs@mail.lon-capa.org
Sat, 16 Mar 2002 09:11:01 -0000
albertel Sat Mar 16 04:11:01 2002 EDT
Modified files:
/loncom/interface lonnavmaps.pm
Log:
- for a .page inside of a .page need to link to the original .page not the nested one.
Index: loncom/interface/lonnavmaps.pm
diff -u loncom/interface/lonnavmaps.pm:1.32 loncom/interface/lonnavmaps.pm:1.33
--- loncom/interface/lonnavmaps.pm:1.32 Sat Mar 16 03:56:53 2002
+++ loncom/interface/lonnavmaps.pm Sat Mar 16 04:11:01 2002
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Navigate Maps Handler
#
-# $Id: lonnavmaps.pm,v 1.32 2002/03/16 08:56:53 albertel Exp $
+# $Id: lonnavmaps.pm,v 1.33 2002/03/16 09:11:01 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -338,7 +338,6 @@
sub tracetable {
my ($sofar,$rid,$beenhere,$showtypes,$indent,$linkid)=@_;
my $newshowtypes=$showtypes;
- my $newlinkid=$linkid;
my $further=$sofar;
#$Apache::lonxml::debug=1;
&Apache::lonxml::debug("$rid ; $linkid ; $sofar ; $beenhere ; ".$hash{'src_'.$rid});
@@ -355,9 +354,11 @@
eq 'page') {
$tprefix='j';
if ($indent) { $tprefix='i'.$indent.','.$tprefix; }
+ if ($linkid) { $tprefix='l'.$linkid.','.$tprefix; }
$newshowtypes='problems';
$indent++;
- $newlinkid=$rid;
+ #if in a .page continue to link the encompising .page
+ if (!$linkid) { $linkid=$rid; }
}
if (defined($rows[$sofar])) {
$rows[$sofar].='&'.$tprefix.$rid;
@@ -368,10 +369,10 @@
(defined($hash{'map_finish_'.$hash{'src_'.$rid}}))) {
my $frid=$hash{'map_finish_'.$hash{'src_'.$rid}};
$sofar=&tracetable($sofar,$hash{'map_start_'.$hash{'src_'.$rid}},
- '&'.$frid.'&',$newshowtypes,$indent,$newlinkid);
+ '&'.$frid.'&',$newshowtypes,$indent,$linkid);
&addresource($hash{'src_'.$frid},\$sofar,$frid,$newshowtypes,
- $indent,$newlinkid);
- if ($tprefix =~ /j$/) { $indent--; }
+ $indent,$linkid);
+ if ($tprefix =~ /j$/) { $indent--; $linkid=''; }
}
} else {
&addresource($hash{'src_'.$rid},\$sofar,$rid,$showtypes,
@@ -660,7 +661,7 @@
$hwke='</b> ('.$ctext.')</font>';
}
}
- if ($hash{'src_'.$rid} eq $currenturl) {
+ if ($rid && $hash{'src_'.$rid} eq $currenturl) {
$add=$add.'<a name="curloc"></a>'.
'<font color=red size=+2><b>> </b></font>';
$adde=
@@ -703,9 +704,12 @@
for(my $i=-1;$i<$indent;$i++) { $indentstr.=$is; }
}
if (!$linkid) { $linkid=$rid; }
- $r->print($add.$indentstr.
- '<a href="'.$hash{'src_'.$linkid}.'">'.$hwk.
- $hash{'title_'.$rid}.$hwke.'</a>'.$adde);
+ $r->print($add.$indentstr);
+ if ($rid) {
+ $r->print('<a href="'.$hash{'src_'.$linkid}.'">'.
+ $hwk.$hash{'title_'.$rid}.$hwke.'</a>');
+ }
+ $r->print($adde);
}
$r->print('</tr>');
}