return $self->load_login if $path =~ /opac\/login/;
return $self->load_logout if $path =~ /opac\/logout/;
return $self->load_rresults if $path =~ /opac\/results/;
- return $self->load_rdetail if $path =~ /opac\/rdetail/;
+ return $self->load_record if $path =~ /opac\/record/;
return $self->load_myopac if $path =~ /opac\/myopac/;
return $self->load_place_hold if $path =~ /opac\/place_hold/;
$ctx->{page} = 'rresult';
my $page = $cgi->param('page') || 0;
+ my $facet = $cgi->param('facet');
my $query = $cgi->param('query');
my $limit = $cgi->param('limit') || 10; # XXX user settings
my $args = {limit => $limit, offset => $page * $limit};
+ $query = "$query $facet" if $facet;
my $results;
try {
unless($cache{cmf}) {
$cache{cmf} = $e->search_config_metabib_field({id => {'!=' => undef}});
- $cache{cmc} = $e->search_config_metabib_class({name => {'!=' => undef}});
$ctx->{metabib_field} = $cache{cmf};
- $ctx->{metabib_class} = $cache{cmc};
+ #$cache{cmc} = $e->search_config_metabib_class({name => {'!=' => undef}});
+ #$ctx->{metabib_class} = $cache{cmc};
}
my @data;
for my $cmf_id (keys %$facets) { # quick-n-dirty
my ($cmf) = grep { $_->id eq $cmf_id } @{$cache{cmf}};
- $facets->{$cmf->label} = $facets->{$cmf_id};
- delete $facets->{$cmf_id};
+ $facets->{$cmf_id} = {cmf => $cmf, data => $facets->{$cmf_id}};
}
$ctx->{search_facets} = $facets;
# context additions:
# record : bre object
-sub load_rdetail {
+sub load_record {
my $self = shift;
my $rec_id = $self->ctx->{page_args}->[0]
my $self = shift;
$web_config_file = shift;
unless(-r $web_config_file) {
- warn "Invalid web config $web_config_file";
+ warn "Invalid web config $web_config_file\n";
return;
}
check_web_config();
return Apache2::Const::HTTP_INTERNAL_SERVER_ERROR;
}
- $r->log->warn("context loader resulted in status $stat");
+ $r->log->info("context loader resulted in status $stat");
return $stat;
}
</td>
</tr>
[% IF attrs.title %]<tr><td>Title</td><td>[% attrs.title %]</td></tr>[% END %]
- [% IF attrs.author %]<tr><td>Author</td><td><a href='results?query=au:[% attrs.author | uri %]'>[% attrs.author %]</a></td></tr>[% END %]
+ [% IF attrs.author %]<tr><td>Author</td><td><a href='../results?query=au:[% attrs.author | uri %]'>[% attrs.author %]</a></td></tr>[% END %]
[% IF attrs.isbn %]<tr><td>ISBN</td><td>[% attrs.isbn %]</td></tr>[% END %]
[% IF attrs.issn %]<tr><td>ISSN</td><td>[% attrs.issn %]</td></tr>[% END %]
[% IF attrs.upc %]<tr><td>UPC</td><td>[% attrs.upc %]</td></tr>[% END %]
s1 = node.childNodes.1.textContent;
%]
[% IF s0 %]
- <a href='results?query=su:[% s0 | url %]'>[% s0 %]</a>
+ <a href='../results?query=su:[% s0 | url %]'>[% s0 %]</a>
[% IF s1 %]
<span>--</span>
- <a href='results?query=su:[% s1 | url %]'>[% s1 %]</a>
+ <a href='../results?query=su:[% s1 | url %]'>[% s1 %]</a>
[% END %]
<br/>
[% END %]
</div>
<div>
[% FOR facet_type IN ctx.search_facets.keys %]
- <b>[% facet_type %]</b>
+ [% cmf = ctx.search_facets.$facet_type.cmf %]
+ <b>[% cmf.label %]</b>
<ul>
- [% FOR facet IN ctx.search_facets.$facet_type.keys %]
- <li>[% facet %] / [% ctx.search_facets.$facet_type.$facet %]</li>
+ [% FOR facet IN ctx.search_facets.$facet_type.data.keys %]
+ [% facet_count = ctx.search_facets.$facet_type.data.$facet %]
+ <li><a href='results?query=[% query | url %]&facet=[% cmf.field_class %]|[% cmf.name %][[% facet | url %]]'>[% facet_count %] / [% facet %]</a></li>
[% END %]
</ul>
[% END %]
</td>
<td width='auto'>
<div>
- <a href='rdetail/[% rec.bre.id %]'>[% attrs.title %]</a>
+ <a href='record/[% rec.bre.id %]'>[% attrs.title %]</a>
<span style='padding-left:10px;'>[% rec.copy_counts.available %] / [% rec.copy_counts.visible %]</span>
</div>
<div>[% attrs.author %]</div>