--- loncom/xml/lonxml.pm 2007/04/07 01:21:59 1.443 +++ loncom/xml/lonxml.pm 2007/05/14 08:42:13 1.445 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # XML Parser Module # -# $Id: lonxml.pm,v 1.443 2007/04/07 01:21:59 albertel Exp $ +# $Id: lonxml.pm,v 1.445 2007/05/14 08:42:13 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -42,6 +42,7 @@ package Apache::lonxml; use vars qw(@pwd @outputstack $redirection $import @extlinks $metamode $evaluate %insertlist @namespace $errorcount $warningcount); use strict; +use LONCAPA; use HTML::LCParser(); use HTML::TreeBuilder(); use HTML::Entities(); @@ -1208,7 +1209,7 @@ sub writeallows { my %httpref=(); foreach (@extlinks) { $httpref{'httpref.'. - &Apache::lonnet::hreflocation($thisdir,$_)}=$thisurl; + &Apache::lonnet::hreflocation($thisdir,&unescape($_))}=$thisurl; } @extlinks=(); &Apache::lonnet::appenv(%httpref); @@ -1743,10 +1744,12 @@ sub register_insert_xml { # parse the allows and ignore tags set to no foreach my $tag (@alltags) { + next if (!exists($insertlist{"$tag.allow"})); my $allow = $insertlist{"$tag.allow"}; foreach my $element (split(',',$allow)) { $element =~ s/(^\s*|\s*$ )//gx; - if ($insertlist{"$element.show"} ne 'no') { + if (exists($insertlist{"$element.show"}) + && $insertlist{"$element.show"} ne 'no') { push(@{ $insertlist{$tag.'.which'} },$element); } }