version 1.251, 2006/02/05 20:56:57
|
version 1.254, 2006/02/08 21:17:58
|
Line 1540 sub parse_advanced_search {
|
Line 1540 sub parse_advanced_search {
|
## |
## |
## Deal with restrictions to given domains |
## Deal with restrictions to given domains |
## |
## |
my ($libraries_to_query,$pretty_domains_string,$domain_sql_restriction) = |
my ($libraries_to_query,$pretty_domains_string) = &parse_domain_restrictions(); |
&parse_domain_restrictions(); |
if ($pretty_domains_string) { |
if ((defined($domain_sql_restriction)) && ($domain_sql_restriction ne '')) { |
|
push(@queries,$domain_sql_restriction); |
|
$pretty_search_string .= $pretty_domains_string."<br />\n"; |
$pretty_search_string .= $pretty_domains_string."<br />\n"; |
} |
} |
# |
# |
Line 1568 sub parse_domain_restrictions {
|
Line 1566 sub parse_domain_restrictions {
|
# |
# |
my %domain_hash = (); |
my %domain_hash = (); |
my $pretty_domains_string; |
my $pretty_domains_string; |
my $domain_sql_restriction; |
|
foreach (@allowed_domains) { |
foreach (@allowed_domains) { |
$domain_hash{$_}++; |
$domain_hash{$_}++; |
} |
} |
if ($domain_hash{'any'}) { |
if ($domain_hash{'any'}) { |
$pretty_domains_string = "In all LON-CAPA domains."; |
$pretty_domains_string = "In all LON-CAPA domains."; |
$domain_sql_restriction = undef; |
|
} else { |
} else { |
if (@allowed_domains > 1) { |
if (@allowed_domains > 1) { |
$pretty_domains_string = "In LON-CAPA domains:"; |
$pretty_domains_string = "In LON-CAPA domains:"; |
} else { |
} else { |
$pretty_domains_string = "In LON-CAPA domain "; |
$pretty_domains_string = "In LON-CAPA domain "; |
} |
} |
$domain_sql_restriction = |
|
'(domain="'.join('" OR domain="',@allowed_domains).'")'; |
|
foreach (sort @allowed_domains) { |
foreach (sort @allowed_domains) { |
$pretty_domains_string .= "<b>".$_."</b> "; |
$pretty_domains_string .= "<b>".$_."</b> "; |
} |
} |
Line 1593 sub parse_domain_restrictions {
|
Line 1587 sub parse_domain_restrictions {
|
} |
} |
} |
} |
return ($libraries_to_query, |
return ($libraries_to_query, |
$pretty_domains_string, |
$pretty_domains_string); |
$domain_sql_restriction); |
|
} |
} |
|
|
###################################################################### |
###################################################################### |
Line 1623 sub parse_basic_search {
|
Line 1616 sub parse_basic_search {
|
$env{"form.$_"}=&Apache::lonnet::unescape($env{"form.$_"}); |
$env{"form.$_"}=&Apache::lonnet::unescape($env{"form.$_"}); |
$env{"form.$_"}=~s/[^\w\/\s\(\)\=\-\"\']//g; |
$env{"form.$_"}=~s/[^\w\/\s\(\)\=\-\"\']//g; |
} |
} |
my ($libraries_to_query,$pretty_domains_string,$domain_sql_restriction) = |
my ($libraries_to_query,$pretty_domains_string) = &parse_domain_restrictions(); |
&parse_domain_restrictions(); |
|
# |
# |
# Check to see if enough of a query is filled in |
# Check to see if enough of a query is filled in |
my $search_string = $env{'form.basicexp'}; |
my $search_string = $env{'form.basicexp'}; |
Line 1647 sub parse_basic_search {
|
Line 1639 sub parse_basic_search {
|
return; |
return; |
} |
} |
push(@Queries,$SQLQuery); |
push(@Queries,$SQLQuery); |
if (defined($domain_sql_restriction) && $domain_sql_restriction ne '') { |
|
push(@Queries,$domain_sql_restriction); |
|
} |
|
#foreach my $q (@Queries) { |
#foreach my $q (@Queries) { |
# &Apache::lonnet::logthis(' '.$q); |
# &Apache::lonnet::logthis(' '.$q); |
#} |
#} |
Line 3739 sub cleanup {
|
Line 3728 sub cleanup {
|
} |
} |
&untiehash(); |
&untiehash(); |
&Apache::lonmysql::disconnect_from_db(); |
&Apache::lonmysql::disconnect_from_db(); |
|
return OK; |
} |
} |
|
|
__END__ |
__END__ |