version 1.355, 2022/05/29 03:19:00
|
version 1.359, 2023/12/30 03:45:44
|
Line 176 sub handler {
|
Line 176 sub handler {
|
} |
} |
my $crumb_text = 'Portfolio Search'; |
my $crumb_text = 'Portfolio Search'; |
if (@allowed_searches ==2) { |
if (@allowed_searches ==2) { |
$crumb_text = 'Portfolio and Catalog Search'; |
$crumb_text = 'Portfolio and Content Library Search'; |
} |
} |
my $target = '_top'; |
my $target = '_top'; |
if ((($env{'request.lti.login'}) && ($env{'request.lti.target'} eq 'iframe')) || |
if ((($env{'request.lti.login'}) && ($env{'request.lti.target'} eq 'iframe')) || |
Line 184 sub handler {
|
Line 184 sub handler {
|
if ($env{'form.phase'} =~ /^(sort|run_search)$/) { |
if ($env{'form.phase'} =~ /^(sort|run_search)$/) { |
$target = '_parent'; |
$target = '_parent'; |
} else { |
} else { |
$target = ''; |
$target = '_self'; |
} |
} |
} |
} |
&Apache::lonhtmlcommon::add_breadcrumb |
&Apache::lonhtmlcommon::add_breadcrumb |
Line 337 END
|
Line 337 END
|
['query','customquery','customshow', |
['query','customquery','customshow', |
'libraries','pretty_string','domains']); |
'libraries','pretty_string','domains']); |
if ($env{'form.phase'} eq 'sort') { |
if ($env{'form.phase'} eq 'sort') { |
&print_sort_form($r,$pretty_string); |
&print_sort_form($r,$pretty_string,$target); |
} elsif ($env{'form.phase'} eq 'run_search') { |
} elsif ($env{'form.phase'} eq 'run_search') { |
&run_search($r,$query,$customquery,$customshow, |
&run_search($r,$query,$customquery,$customshow, |
$libraries,$pretty_string,$env{'form.area'},$domainsref); |
$libraries,$pretty_string,$env{'form.area'},$domainsref,$target); |
} |
} |
} elsif(($env{'form.phase'} eq 'basic_search') || |
} elsif(($env{'form.phase'} eq 'basic_search') || |
($env{'form.phase'} eq 'adv_search')) { |
($env{'form.phase'} eq 'adv_search')) { |
Line 474 sub setup_basic_search {
|
Line 474 sub setup_basic_search {
|
my ($r,$area,$hidden_fields,$closebutton) = @_; |
my ($r,$area,$hidden_fields,$closebutton) = @_; |
# Define interface components |
# Define interface components |
my %lt = &Apache::lonlocal::texthash ( |
my %lt = &Apache::lonlocal::texthash ( |
res => 'LON-CAPA Catalog Search', |
res => 'Content Library Search', |
portfolio => 'Portfolio Search', |
portfolio => 'Portfolio Search', |
); |
); |
my ($userelatedwords,$onlysearchdomain,$inclext,$adv_search_link,$scrout); |
my ($userelatedwords,$onlysearchdomain,$inclext,$adv_search_link,$scrout); |
Line 658 function additional_metadata() {
|
Line 658 function additional_metadata() {
|
'standards','mime') { |
'standards','mime') { |
$scrout .= &Apache::lonhtmlcommon::row_title(&titlefield($fields{$field})) |
$scrout .= &Apache::lonhtmlcommon::row_title(&titlefield($fields{$field})) |
.&Apache::lonmeta::prettyinput($field, |
.&Apache::lonmeta::prettyinput($field, |
$env{'form.'.$field}, |
$env{'form.'.$field},'', |
$field, |
$field, |
'advsearch', |
'advsearch', |
$related_word_search{$field}, |
$related_word_search{$field}, |
Line 675 function additional_metadata() {
|
Line 675 function additional_metadata() {
|
foreach my $field ('lowestgradelevel','highestgradelevel') { |
foreach my $field ('lowestgradelevel','highestgradelevel') { |
$scrout .= &Apache::lonhtmlcommon::row_title(&titlefield($fields{$field})) |
$scrout .= &Apache::lonhtmlcommon::row_title(&titlefield($fields{$field})) |
.&Apache::lonmeta::prettyinput($field, |
.&Apache::lonmeta::prettyinput($field, |
$env{'form.'.$field}, |
$env{'form.'.$field},'', |
$field, |
$field, |
'advsearch', |
'advsearch', |
0) |
0) |
Line 710 function additional_metadata() {
|
Line 710 function additional_metadata() {
|
if ($env{'form.area'} ne 'portfolio') { |
if ($env{'form.area'} ne 'portfolio') { |
$scrout .= &Apache::lonhtmlcommon::row_title(&titlefield(&mt('Copyright/Distribution'))) |
$scrout .= &Apache::lonhtmlcommon::row_title(&titlefield(&mt('Copyright/Distribution'))) |
.&Apache::lonmeta::selectbox('copyright', |
.&Apache::lonmeta::selectbox('copyright', |
$env{'form.copyright'}, |
$env{'form.copyright'},'', |
\&Apache::loncommon::copyrightdescription, |
\&Apache::loncommon::copyrightdescription, |
( undef, |
( undef, |
&Apache::loncommon::copyrightids) |
&Apache::loncommon::copyrightids) |
Line 720 function additional_metadata() {
|
Line 720 function additional_metadata() {
|
|
|
$scrout .= &Apache::lonhtmlcommon::row_title(&titlefield(&mt('Language'))) |
$scrout .= &Apache::lonhtmlcommon::row_title(&titlefield(&mt('Language'))) |
.&Apache::lonmeta::selectbox('language', |
.&Apache::lonmeta::selectbox('language', |
$env{'form.language'}, |
$env{'form.language'},'', |
\&Apache::loncommon::languagedescription, |
\&Apache::loncommon::languagedescription, |
('any',&Apache::loncommon::languageids) |
('any',&Apache::loncommon::languageids) |
) |
) |
Line 956 sub viewoptions {
|
Line 956 sub viewoptions {
|
$scrout .= '<span class="LC_nobreak">' |
$scrout .= '<span class="LC_nobreak">' |
.&mt('Type:').' ' |
.&mt('Type:').' ' |
.&Apache::lonmeta::selectbox('viewselect', |
.&Apache::lonmeta::selectbox('viewselect', |
$env{'form.viewselect'}, |
$env{'form.viewselect'},'', |
\&viewoptiontext, |
\&viewoptiontext, |
sort(keys(%Views))) |
sort(keys(%Views))) |
.'</span>'; |
.'</span>'; |
my $countselect = &Apache::lonmeta::selectbox('show', |
my $countselect = &Apache::lonmeta::selectbox('show', |
$env{'form.show'}, |
$env{'form.show'},'', |
undef, |
undef, |
(10,20,50,100,1000,10000)); |
(10,20,50,100,1000,10000)); |
$scrout .= ' <span class="LC_nobreak">' |
$scrout .= ' <span class="LC_nobreak">' |
Line 2063 a link to change the search query.
|
Line 2063 a link to change the search query.
|
###################################################################### |
###################################################################### |
###################################################################### |
###################################################################### |
sub print_sort_form { |
sub print_sort_form { |
my ($r,$pretty_query_string) = @_; |
my ($r,$pretty_query_string,$target) = @_; |
|
|
## |
## |
my %SortableFields=&Apache::lonlocal::texthash( |
my %SortableFields=&Apache::lonlocal::texthash( |
Line 2096 sub print_sort_form {
|
Line 2096 sub print_sort_form {
|
&Apache::lonnet::logthis(&Apache::lonmysql::get_error()); |
&Apache::lonnet::logthis(&Apache::lonmysql::get_error()); |
return; |
return; |
} |
} |
my $target = '_top'; |
|
my $args; |
my $args; |
if ((($env{'request.lti.login'}) && ($env{'request.lti.target'} eq 'iframe')) || |
if ($target eq '_parent') { |
(($env{'request.deeplink.login'}) && ($env{'request.deeplink.target'} eq '_self'))) { |
|
$target = '_parent'; |
|
$args = {'links_target' => $target}; |
$args = {'links_target' => $target}; |
} |
} |
my $start_page = &Apache::loncommon::start_page('Results',undef,$args); |
my $start_page = &Apache::loncommon::start_page('Results',undef,$args); |
my $breadcrumbs= |
my $breadcrumbs= |
&Apache::lonhtmlcommon::breadcrumbs('Searching','Searching', |
&Apache::lonhtmlcommon::breadcrumbs('Searching','Searching', |
$env{'form.catalogmode'} ne 'import'); |
$env{'form.catalogmode'} ne 'import', |
|
'','','','','','',$target); |
|
|
my $result = <<END; |
my $result = <<END; |
$start_page |
$start_page |
Line 2362 results into MySQL.
|
Line 2360 results into MySQL.
|
###################################################################### |
###################################################################### |
sub run_search { |
sub run_search { |
my ($r,$query,$customquery,$customshow,$serverlist, |
my ($r,$query,$customquery,$customshow,$serverlist, |
$pretty_string,$area,$domainsref) = @_; |
$pretty_string,$area,$domainsref,$target) = @_; |
my $tabletype = 'metadata'; |
my $tabletype = 'metadata'; |
if ($area eq 'portfolio') { |
if ($area eq 'portfolio') { |
$tabletype = 'portfolio_search'; |
$tabletype = 'portfolio_search'; |
Line 2371 sub run_search {
|
Line 2369 sub run_search {
|
# |
# |
# Print run_search header |
# Print run_search header |
# |
# |
my $start_page = &Apache::loncommon::start_page('Search Status',undef); |
my $args; |
|
if ($target eq '_parent') { |
|
$args = {'links_target' => $target}; |
|
} |
|
my $start_page = &Apache::loncommon::start_page('Search Status',undef,$args); |
my $breadcrumbs = |
my $breadcrumbs = |
&Apache::lonhtmlcommon::breadcrumbs('Searching','Searching', |
&Apache::lonhtmlcommon::breadcrumbs('Searching','Searching', |
$env{'form.catalogmode'} ne 'import'); |
$env{'form.catalogmode'} ne 'import', |
|
'','','','','','',$target); |
$r->print(<<END); |
$r->print(<<END); |
$start_page |
$start_page |
$breadcrumbs |
$breadcrumbs |
Line 2561 END
|
Line 2564 END
|
|
|
if ($area eq 'portfolio') { |
if ($area eq 'portfolio') { |
next if (defined($matches{$Fields{'url'}})); |
next if (defined($matches{$Fields{'url'}})); |
# Skip if inaccessible |
# Skip unless access control set to public or passphrase-protected |
next if (!&Apache::lonnet::portfolio_access($Fields{'url'})); |
next unless (($Fields{'scope'} eq 'public') || ($Fields{'scope'} eq 'guest')); |
$matches{$Fields{'url'}} = 1; |
$matches{$Fields{'url'}} = 1; |
} |
} |
# |
# |