--- loncom/lonnet/perl/lonnet.pm 2002/06/18 15:04:05 1.240 +++ loncom/lonnet/perl/lonnet.pm 2002/06/18 19:39:13 1.241 @@ -1,7 +1,7 @@ # The LearningOnline Network # TCP networking package # -# $Id: lonnet.pm,v 1.240 2002/06/18 15:04:05 www Exp $ +# $Id: lonnet.pm,v 1.241 2002/06/18 19:39:13 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1836,7 +1836,7 @@ sub log_query { my $uhome=&homeserver($uname,$udom); if ($uhome eq 'no_host') { return 'error: no_host'; } my $uhost=$hostname{$uhome}; - my $command=&escape(join('&',map{$_.'='.$filters{$_}} keys %filters)); + my $command=&escape(join(':',map{$_.'='.$filters{$_}} keys %filters)); my $queryid=&reply("querysend:".$query.':'.$udom.':'.$uname.':'.$command, $uhome); unless ($queryid=~/^$uhost\_/) { return 'error: '.$queryid; } @@ -1844,7 +1844,6 @@ sub log_query { my $reply=''; for (1..100) { sleep 2; - &logthis('wait'); if (-e $replyfile.'.end') { if (my $fh=Apache::File->new($replyfile)) { $reply.=<$fh>; @@ -1857,12 +1856,25 @@ sub log_query { } sub courselog_query { +# +# possible filters: +# url: url or symb +# username +# domain +# action: view, submit, grade +# start: timestamp +# end: timestamp +# my (%filters)=@_; unless ($ENV{'request.course.id'}) { return 'no_course'; } + if ($filters{'url'}) { + $filters{'url'}=&symbclean(&declutter($filters{'url'})); + $filters{'url'}=~s/\.(\w+)$/(\\.\\d+)*\\.$1/; + $filters{'url'}=~s/\.(\w+)\_\_\_/(\\.\\d+)*\\.$1/; + } my $cname=$ENV{'course.'.$ENV{'request.course.id'}.'.num'}; my $cdom=$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}; return &log_query($cname,$cdom,'courselog',%filters); - } sub userlog_query {