--- rat/lonpage.pm 2000/09/22 10:28:41 1.7 +++ rat/lonpage.pm 2000/10/10 20:34:09 1.11 @@ -4,7 +4,8 @@ # (TeX Content Handler # # 05/29/00,05/30 Gerd Kortemeyer) -# 08/30,08/31,09/06,09/14,09/15,09/16,09/19,09/20,09/21 Gerd Kortemeyer +# 08/30,08/31,09/06,09/14,09/15,09/16,09/19,09/20,09/21,09/23, +# 10/02,10/10 Gerd Kortemeyer package Apache::lonpage; @@ -73,10 +74,28 @@ sub tracetable { } if (defined($hash{'to_'.$rid})) { + my $mincond=1; + my $next=''; map { - my $now=&tracetable($sofar,$hash{'goesto_'.$_},$beenhere); - if ($now>$further) { $further=$now; } + my $thiscond= + &Apache::lonnet::directcondval($hash{'condid_'.$hash{'undercond_'.$_}}); + if ($thiscond>=$mincond) { + if ($next) { + $next.=','.$_.':'.$thiscond; + } else { + $next=$_.':'.$thiscond; + } + if ($thiscond>$mincond) { $mincond=$thiscond; } + } } split(/\,/,$hash{'to_'.$rid}); + map { + my ($linkid,$condval)=split(/\:/,$_); + if ($condval>=$mincond) { + my $now=&tracetable($sofar,$hash{'goesto_'.$linkid},$beenhere); + if ($now>$further) { $further=$now; } + } + } split(/\,/,$next); + } } return $further; @@ -122,7 +141,22 @@ sub handler { } } +# ------------------------------------------------------------ Add to symb list + my $i; + my %symbhash=(); + for ($i=0;$i<=$#rows;$i++) { + if ($rows[$i]) { + my @colcont=split(/\&/,$rows[$i]); + map { + $symbhash{$hash{'src_'.$_}}=''; + } @colcont; + } + } + &Apache::lonnet::symblist($requrl,%symbhash); + +# ------------------------------------------------------------------ Page parms + my $j; my $lcm=1; my $contents=0; @@ -158,7 +192,7 @@ sub handler { # --------------------------------------------------------- This is an SSI cell my $prefix=$_.'_'; my %posthash=('request.prefix' => $prefix); - if (($ENV{'$form.'.$prefix.'submit'}) + if (($ENV{'form.'.$prefix.'submit'}) || ($ENV{'form.all_submit'})) { map { if ($_=~/^form.$prefix/) { @@ -246,7 +280,6 @@ sub handler { } else { $r->print(''); } - # ------------------------------------------------------------------ Start form if ($nforms) { $r->print('