--- loncom/lonnet/perl/lonnet.pm 2002/05/08 15:21:04 1.215 +++ loncom/lonnet/perl/lonnet.pm 2002/05/08 17:40:03 1.216 @@ -1,7 +1,7 @@ # The LearningOnline Network # TCP networking package # -# $Id: lonnet.pm,v 1.215 2002/05/08 15:21:04 www Exp $ +# $Id: lonnet.pm,v 1.216 2002/05/08 17:40:03 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -2524,23 +2524,33 @@ sub symblist { sub symbverify { my ($symb,$thisfn)=@_; $thisfn=&declutter($thisfn); - - &logthis("Symb verify: $symb $thisfn"); - # direct jump to resource in page or to a sequence - will construct own symbs if ($thisfn=~/\.(page|sequence)$/) { return 1; } # check URL part my ($map,$resid,$url)=split(/\_\_\_/,$symb); unless (&symbclean($url) eq &symbclean($thisfn)) { return 0; } -# FIXME: done for now - return 1; + $symb=&symbclean($symb); my %bighash; my $okay=0; if (tie(%bighash,'GDBM_File',$ENV{'request.course.fn'}.'.db', &GDBM_READER,0640)) { - + my $ids=$bighash{'ids_/res/'.$thisfn}; + unless ($ids) { + $ids=$bighash{'ids_/'.$thisfn}; + } + if ($ids) { +# ------------------------------------------------------------------- Has ID(s) + foreach (split(/\,/,$ids)) { + my ($mapid,$resid)=split(/\./,$_); + if ( + &symbclean(&declutter($bighash{'map_id_'.$mapid}).'___'.$resid.'___'.$thisfn) + eq $symb) { + $okay=1; + } + } + } untie(%bighash); } return $okay;