# The LearningOnline Network with CAPA
# Metadata Database Handler
#
# 02/20/2001 Scott Harrison
package Apache::lonsql;
use strict;
use Opcode;
use Apache::lonnet;
use Apache::Constants qw(:common :http);
use CGI;
# ================================================================ Main handler
#
# Interactive call to screen
#
#
sub handler {
my $r=shift;
if ($r->header_only) {
$r->content_type('text/html');
$r->send_http_header;
return OK;
}
# ------------------------------------------------------------------- Open page
my $query=new CGI;
my $searchquery;
my $searchresults;
my @regexps;
my $logic;
my $logic_operator;
if ($query->{'SUBMIT'}) {
$logic_operator=$query->{'logic'}->[0];
$searchquery="
Your search was:\n";
$searchquery.="
$_: " . $query->{$_}->[0] . "\n" for ('title','author','subject','notes','abstract','mime','language','creationdate','lastrevisiondate','owner','copyright');
for ('title','author','subject','notes','abstract','mime','language','creationdate','lastrevisiondate','owner','copyright') {
push @regexps, ($_ . " regexp '" . $query->{$_}->[0] . "'") if $query->{$_}->[0];
}
$logic="where " . join(" $logic_operator ",@regexps) if @regexps;
}
my $sqlcommand="SELECT * FROM metadata $logic";
$searchquery.="
SQL command: $sqlcommand
\n"; $r->content_type('text/html'); $r->header_out('Cache-control','no-cache'); $r->header_out('Pragma','no-cache'); $r->send_http_header; my $output=<