|
Lines 38-43
Koha::AdditionalContents - Koha Additional content object set class
Link Here
|
| 38 |
|
38 |
|
| 39 |
=cut |
39 |
=cut |
| 40 |
|
40 |
|
|
|
41 |
=head3 get_public_query_search_params |
| 42 |
|
| 43 |
my $public_query_search_params = $self->get_public_query_search_params($params); |
| 44 |
|
| 45 |
=cut |
| 46 |
|
| 47 |
sub get_public_query_search_params { |
| 48 |
my ($params) = @_; |
| 49 |
|
| 50 |
my $search_params; |
| 51 |
$search_params->{'additional_content.id'} = $params->{id} if $params->{id}; |
| 52 |
$search_params->{location} = $params->{location}; |
| 53 |
$search_params->{branchcode} = $params->{library_id} ? [ $params->{library_id}, undef ] : undef; |
| 54 |
$search_params->{published_on} = { '<=' => \'CAST(NOW() AS DATE)' } unless $params->{id}; |
| 55 |
$search_params->{expirationdate} = [ '-or', { '>=' => \'CAST(NOW() AS DATE)' }, undef ] unless $params->{id}; |
| 56 |
$search_params->{category} = $params->{category} if $params->{category}; |
| 57 |
|
| 58 |
return $search_params; |
| 59 |
} |
| 60 |
|
| 41 |
=head3 search_for_display |
61 |
=head3 search_for_display |
| 42 |
|
62 |
|
| 43 |
my $contents = Koha::AdditionalContents->search_for_display({ |
63 |
my $contents = Koha::AdditionalContents->search_for_display({ |
|
Lines 80-94
sub search_for_display {
Link Here
|
| 80 |
my $subquery = |
100 |
my $subquery = |
| 81 |
qq|(SELECT COUNT(*) FROM additional_contents_localizations WHERE lang='$lang' AND additional_content_id=me.additional_content_id)=0|; |
101 |
qq|(SELECT COUNT(*) FROM additional_contents_localizations WHERE lang='$lang' AND additional_content_id=me.additional_content_id)=0|; |
| 82 |
|
102 |
|
| 83 |
my $search_params; |
103 |
my $search_params = get_public_query_search_params($params); |
| 84 |
$search_params->{'additional_content.id'} = $params->{id} if $params->{id}; |
104 |
$search_params->{lang} = 'default' if !$lang || $lang eq 'default'; |
| 85 |
$search_params->{location} = $params->{location}; |
105 |
$search_params->{-or} = [ { 'lang' => $lang }, '-and' => [ 'lang', 'default', \$subquery ] ] |
| 86 |
$search_params->{branchcode} = $params->{library_id} ? [ $params->{library_id}, undef ] : undef; |
|
|
| 87 |
$search_params->{published_on} = { '<=' => \'CAST(NOW() AS DATE)' } unless $params->{id}; |
| 88 |
$search_params->{expirationdate} = [ '-or', { '>=' => \'CAST(NOW() AS DATE)' }, undef ] unless $params->{id}; |
| 89 |
$search_params->{category} = $params->{category} if $params->{category}; |
| 90 |
$search_params->{lang} = 'default' if !$lang || $lang eq 'default'; |
| 91 |
$search_params->{-or} = [ { 'lang' => $lang }, '-and' => [ 'lang', 'default', \$subquery ] ] |
| 92 |
if !$search_params->{lang}; |
106 |
if !$search_params->{lang}; |
| 93 |
|
107 |
|
| 94 |
my $attribs = { prefetch => 'additional_content', order_by => 'additional_content.number' }; |
108 |
my $attribs = { prefetch => 'additional_content', order_by => 'additional_content.number' }; |
| 95 |
- |
|
|