--- loncom/lonsql 2001/03/22 19:25:52 1.10 +++ loncom/lonsql 2001/03/27 02:09:50 1.18 @@ -234,7 +234,7 @@ sub make_new_child { else { my $r1=$sth->fetchall_arrayref; my @r2; map {my $a=$_; my @b=map {escape($_)} @$a; push @r2,join(",", @b)} (@$r1); - $result=join("&",@r2) . "\n"; + $result=join("&",@r2); } # do custom metadata searching here and build into result @@ -248,8 +248,26 @@ sub make_new_child { # if file is not in sql database, output error. # if file is indicated in sql database and is # part of query result list, then do the pattern match. + my $customresult=''; + foreach my $m (@metalist) { + my $fh=IO::File->new($m); + my @lines=<$fh>; + my $stuff=join('',@lines); + if ($stuff=~/$custom/s) { + foreach my $f ('abstract','author','copyright', + 'creationdate','keywords','language', + 'lastrevisiondate','mime','notes', + 'owner','subject','title') { + $stuff=~s/\<$f[^\>]*\>.*?<\/$f[^\>]*\>//; + } + &logthis("found: $stuff"); + $customresult.='&custom='.escape($stuff); + } + } + $result.=$customresult; } # reply with result + $result.="\n" if $result; &reply("queryreply:$queryid:$result",$conserver); }