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 |
- |
|
|