Bugzilla – Attachment 22177 Details for
Bug 11091
limits in catalog search when creating subscription
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 11091 - peltidy on serials/subscription-bib-search.pl
Bug-11091---peltidy-on-serialssubscription-bib-sea.patch (text/plain), 9.73 KB, created by
David Noe
on 2013-10-21 19:31:54 UTC
(
hide
)
Description:
Bug 11091 - peltidy on serials/subscription-bib-search.pl
Filename:
MIME Type:
Creator:
David Noe
Created:
2013-10-21 19:31:54 UTC
Size:
9.73 KB
patch
obsolete
>From 23359b40cca6674b5b080d87fcd2d9d5aa67b392 Mon Sep 17 00:00:00 2001 >From: Fridolyn SOMERS <fridolyn.somers@biblibre.com> >Date: Mon, 21 Oct 2013 12:13:17 +0200 >Subject: [PATCH] Bug 11091 - peltidy on serials/subscription-bib-search.pl > >Signed-off-by: David Noe <drnoe@bywatersolutions.com> >--- > serials/subscription-bib-search.pl | 174 +++++++++++++++++++----------------- > 1 files changed, 92 insertions(+), 82 deletions(-) > >diff --git a/serials/subscription-bib-search.pl b/serials/subscription-bib-search.pl >index c512ac4..8d6310c 100755 >--- a/serials/subscription-bib-search.pl >+++ b/serials/subscription-bib-search.pl >@@ -19,7 +19,6 @@ > # with Koha; if not, write to the Free Software Foundation, Inc., > # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. > >- > =head1 NAME > > subscription-bib-search.pl >@@ -47,7 +46,6 @@ to multipage gestion. > > =cut > >- > use strict; > use warnings; > >@@ -60,63 +58,66 @@ use C4::Search; > use C4::Biblio; > use C4::Debug; > >-my $input=new CGI; >-# my $type=$query->param('type'); >+my $input = new CGI; > my $op = $input->param('op') || q{}; > my $dbh = C4::Context->dbh; > >-my $startfrom=$input->param('startfrom'); >-$startfrom=0 unless $startfrom; >-my ($template, $loggedinuser, $cookie); >+my $startfrom = $input->param('startfrom'); >+$startfrom = 0 unless $startfrom; >+my ( $template, $loggedinuser, $cookie ); > my $resultsperpage; > >-my $itype_or_itemtype = (C4::Context->preference("item-level_itypes"))?'itype':'itemtype'; >+my $itype_or_itemtype = >+ ( C4::Context->preference("item-level_itypes") ) ? 'itype' : 'itemtype'; > > my $query = $input->param('q'); >+ > # don't run the search if no search term ! >-if ($op eq "do_search" && $query) { >+if ( $op eq "do_search" && $query ) { > > ( $template, $loggedinuser, $cookie ) = get_template_and_user( >- { template_name => "serials/result.tmpl", >+ { >+ template_name => "serials/result.tmpl", > query => $input, > type => "intranet", > authnotrequired => 0, >- flagsrequired => {catalogue => 1, serials => '*'}, >+ flagsrequired => { catalogue => 1, serials => '*' }, > debug => 1, > } > ); > > # add the limits if applicable > my $itemtypelimit = $input->param('itemtypelimit'); >- my $ccodelimit = $input->param('ccodelimit'); >+ my $ccodelimit = $input->param('ccodelimit'); > my $op = C4::Context->preference('UseQueryParser') ? '&&' : 'and'; > $query .= " $op $itype_or_itemtype:$itemtypelimit" if $itemtypelimit; > $query .= " $op ccode:$ccodelimit" if $ccodelimit; > $debug && warn $query; >- $resultsperpage= $input->param('resultsperpage'); >- $resultsperpage = 20 if(!defined $resultsperpage); >+ $resultsperpage = $input->param('resultsperpage'); >+ $resultsperpage = 20 if ( !defined $resultsperpage ); > >- my ($error, $marcrecords, $total_hits) = SimpleSearch($query, $startfrom*$resultsperpage, $resultsperpage); >+ my ( $error, $marcrecords, $total_hits ) = >+ SimpleSearch( $query, $startfrom * $resultsperpage, $resultsperpage ); > my $total = 0; >- if (defined $marcrecords ) { >+ if ( defined $marcrecords ) { > $total = scalar @{$marcrecords}; > } > >- if (defined $error) { >- $template->param(query_error => $error); >- warn "error: ".$error; >+ if ( defined $error ) { >+ $template->param( query_error => $error ); >+ warn "error: " . $error; > output_html_with_http_headers $input, $cookie, $template->output; > exit; > } > my @results; > >- for(my $i=0;$i<$total;$i++) { >+ for ( my $i = 0 ; $i < $total ; $i++ ) { > my %resultsloop; >- my $marcrecord = MARC::File::USMARC::decode($marcrecords->[$i]); >- my $biblio = TransformMarcToKoha(C4::Context->dbh,$marcrecord,''); >+ my $marcrecord = MARC::File::USMARC::decode( $marcrecords->[$i] ); >+ my $biblio = TransformMarcToKoha( C4::Context->dbh, $marcrecord, '' ); > > #build the hash for the template. >- $resultsloop{highlight} = ($i % 2)?(1):(0); >+ $resultsloop{highlight} = ( $i % 2 ) ? (1) : (0); > $resultsloop{title} = $biblio->{'title'}; > $resultsloop{subtitle} = $biblio->{'subtitle'}; > $resultsloop{biblionumber} = $biblio->{'biblionumber'}; >@@ -129,87 +130,95 @@ if ($op eq "do_search" && $query) { > } > > # multi page display gestion >- my $displaynext=0; >- my $displayprev=$startfrom; >- if(($total_hits - (($startfrom+1)*($resultsperpage))) > 0 ){ >+ my $displaynext = 0; >+ my $displayprev = $startfrom; >+ if ( ( $total_hits - ( ( $startfrom + 1 ) * ($resultsperpage) ) ) > 0 ) { > $displaynext = 1; > } > >- > my @numbers = (); > >- if ($total_hits>$resultsperpage) >- { >- for (my $i=1; $i<$total/$resultsperpage+1; $i++) >- { >- if ($i<16) >- { >- my $highlight=0; >- ($startfrom==($i-1)) && ($highlight=1); >- push @numbers, { number => $i, >- highlight => $highlight , >- searchdata=> \@results, >- startfrom => ($i-1)}; >+ if ( $total_hits > $resultsperpage ) { >+ for ( my $i = 1 ; $i < $total / $resultsperpage + 1 ; $i++ ) { >+ if ( $i < 16 ) { >+ my $highlight = 0; >+ ( $startfrom == ( $i - 1 ) ) && ( $highlight = 1 ); >+ push @numbers, >+ { >+ number => $i, >+ highlight => $highlight, >+ searchdata => \@results, >+ startfrom => ( $i - 1 ) >+ }; > } > } > } > > my $from = 0; >- $from = $startfrom*$resultsperpage+1 if($total_hits > 0); >+ $from = $startfrom * $resultsperpage + 1 if ( $total_hits > 0 ); > my $to; > >- if($total_hits < (($startfrom+1)*$resultsperpage)) >- { >+ if ( $total_hits < ( ( $startfrom + 1 ) * $resultsperpage ) ) { > $to = $total; >- } else { >- $to = (($startfrom+1)*$resultsperpage); >+ } >+ else { >+ $to = ( ( $startfrom + 1 ) * $resultsperpage ); > } > $template->param( >- query => $query, >- resultsloop => \@results, >- startfrom=> $startfrom, >- displaynext=> $displaynext, >- displayprev=> $displayprev, >- resultsperpage => $resultsperpage, >- startfromnext => $startfrom+1, >- startfromprev => $startfrom-1, >- total=>$total_hits, >- from=>$from, >- to=>$to, >- numbers=>\@numbers, >- ); >-} # end of if ($op eq "do_search" & $query) >+ query => $query, >+ resultsloop => \@results, >+ startfrom => $startfrom, >+ displaynext => $displaynext, >+ displayprev => $displayprev, >+ resultsperpage => $resultsperpage, >+ startfromnext => $startfrom + 1, >+ startfromprev => $startfrom - 1, >+ total => $total_hits, >+ from => $from, >+ to => $to, >+ numbers => \@numbers, >+ ); >+} # end of if ($op eq "do_search" & $query) > else { >- ($template, $loggedinuser, $cookie) >- = get_template_and_user({template_name => "serials/subscription-bib-search.tmpl", >- query => $input, >- type => "intranet", >- authnotrequired => 0, >- flagsrequired => {catalogue => 1, serials => '*'}, >- debug => 1, >- }); >+ ( $template, $loggedinuser, $cookie ) = get_template_and_user( >+ { >+ template_name => "serials/subscription-bib-search.tmpl", >+ query => $input, >+ type => "intranet", >+ authnotrequired => 0, >+ flagsrequired => { catalogue => 1, serials => '*' }, >+ debug => 1, >+ } >+ ); > > # load the itemtypes > my $itemtypes = GetItemTypes(); > my @itemtypesloop; >- foreach my $thisitemtype ( sort {$itemtypes->{$a}->{'description'} cmp $itemtypes->{$b}->{'description'} } keys %$itemtypes ) { >- my %row =( >- code => $thisitemtype, >- description => $itemtypes->{$thisitemtype}->{'description'}, >- ); >- push @itemtypesloop, \%row; >- } >+ foreach my $thisitemtype ( >+ sort { >+ $itemtypes->{$a}->{'description'} >+ cmp $itemtypes->{$b}->{'description'} >+ } keys %$itemtypes >+ ) >+ { >+ my %row = ( >+ code => $thisitemtype, >+ description => $itemtypes->{$thisitemtype}->{'description'}, >+ ); >+ push @itemtypesloop, \%row; >+ } > > # load Collection Codes >- my $authvalues = GetAuthorisedValues('CCODE'); >- my @ccodesloop; >- for my $thisauthvalue (sort {$a->{'lib'} cmp $b->{'lib'}} @$authvalues) { >- my %row =( >- code => $thisauthvalue->{'authorised_value'}, >- description => $thisauthvalue->{'lib'}, >- ); >- push @ccodesloop, \%row; >- } >+ my $authvalues = GetAuthorisedValues('CCODE'); >+ my @ccodesloop; >+ for my $thisauthvalue ( sort { $a->{'lib'} cmp $b->{'lib'} } @$authvalues ) >+ { >+ my %row = ( >+ code => $thisauthvalue->{'authorised_value'}, >+ description => $thisauthvalue->{'lib'}, >+ ); >+ push @ccodesloop, \%row; >+ } > > $template->param( > itemtypeloop => \@itemtypesloop, >@@ -217,6 +226,7 @@ else { > no_query => $op eq "do_search" ? 1 : 0, > ); > } >+ > # Print the page > output_html_with_http_headers $input, $cookie, $template->output; > >-- >1.7.2.5
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 11091
:
22152
|
22153
|
22174
|
22176
|
22177
|
22178
|
22179
|
22479
|
22480