Lines 289-297
if ( $template_type eq 'advsearch' ) {
Link Here
|
289 |
$template->param(outer_sup_servers_loop => $secondary_servers_loop,); |
289 |
$template->param(outer_sup_servers_loop => $secondary_servers_loop,); |
290 |
|
290 |
|
291 |
# set the default sorting |
291 |
# set the default sorting |
292 |
my $default_sort_by = C4::Context->preference('defaultSortField')."_".C4::Context->preference('defaultSortOrder') |
292 |
if ( C4::Context->preference('OPACdefaultSortField') |
293 |
if (C4::Context->preference('OPACdefaultSortField') && C4::Context->preference('OPACdefaultSortOrder')); |
293 |
&& C4::Context->preference('OPACdefaultSortOrder') ) { |
294 |
$template->param($default_sort_by => 1); |
294 |
my $default_sort_by = |
|
|
295 |
C4::Context->preference('defaultSortField') . '_' |
296 |
. C4::Context->preference('defaultSortOrder'); |
297 |
$template->param( $default_sort_by => 1 ); |
298 |
} |
295 |
|
299 |
|
296 |
# determine what to display next to the search boxes (ie, boolean option |
300 |
# determine what to display next to the search boxes (ie, boolean option |
297 |
# shouldn't appear on the first one, scan indexes should, adding a new |
301 |
# shouldn't appear on the first one, scan indexes should, adding a new |
Lines 354-361
my $params = $cgi->Vars;
Link Here
|
354 |
# sort by is used to sort the query |
358 |
# sort by is used to sort the query |
355 |
# in theory can have more than one but generally there's just one |
359 |
# in theory can have more than one but generally there's just one |
356 |
my @sort_by; |
360 |
my @sort_by; |
357 |
my $default_sort_by = C4::Context->preference('defaultSortField')."_".C4::Context->preference('defaultSortOrder') |
361 |
my $default_sort_by; |
358 |
if (C4::Context->preference('defaultSortField') && C4::Context->preference('defaultSortOrder')); |
362 |
if ( C4::Context->preference('defaultSortField') |
|
|
363 |
&& C4::Context->preference('defaultSortOrder') ) { |
364 |
$default_sort_by = |
365 |
C4::Context->preference('defaultSortField') . '_' |
366 |
. C4::Context->preference('defaultSortOrder'); |
367 |
} |
359 |
|
368 |
|
360 |
@sort_by = split("\0",$params->{'sort_by'}) if $params->{'sort_by'}; |
369 |
@sort_by = split("\0",$params->{'sort_by'}) if $params->{'sort_by'}; |
361 |
$sort_by[0] = $default_sort_by unless $sort_by[0]; |
370 |
$sort_by[0] = $default_sort_by unless $sort_by[0]; |
Lines 585-591
for (my $i=0;$i<@servers;$i++) {
Link Here
|
585 |
# default page number |
594 |
# default page number |
586 |
my $current_page_number = 1; |
595 |
my $current_page_number = 1; |
587 |
$current_page_number = ($offset / $results_per_page + 1) if $offset; |
596 |
$current_page_number = ($offset / $results_per_page + 1) if $offset; |
588 |
my $previous_page_offset = $offset - $results_per_page unless ($offset - $results_per_page <0); |
597 |
my $previous_page_offset; |
|
|
598 |
if ( $offset >= $results_per_page ) { |
599 |
$previous_page_offset = $offset - $results_per_page; |
600 |
} |
589 |
my $next_page_offset = $offset + $results_per_page; |
601 |
my $next_page_offset = $offset + $results_per_page; |
590 |
# If we're within the first 10 pages, keep it simple |
602 |
# If we're within the first 10 pages, keep it simple |
591 |
#warn "current page:".$current_page_number; |
603 |
#warn "current page:".$current_page_number; |
Lines 599-608
for (my $i=0;$i<@servers;$i++) {
Link Here
|
599 |
my $this_offset = (($i*$results_per_page)-$results_per_page); |
611 |
my $this_offset = (($i*$results_per_page)-$results_per_page); |
600 |
# the page number for this page |
612 |
# the page number for this page |
601 |
my $this_page_number = $i; |
613 |
my $this_page_number = $i; |
602 |
# it should only be highlighted if it's the current page |
|
|
603 |
my $highlight = 1 if ($this_page_number == $current_page_number); |
604 |
# put it in the array |
614 |
# put it in the array |
605 |
push @page_numbers, { offset => $this_offset, pg => $this_page_number, highlight => $highlight, sort_by => join " ",@sort_by }; |
615 |
push @page_numbers, |
|
|
616 |
{ offset => $this_offset, |
617 |
pg => $this_page_number, |
618 |
# it should only be highlighted if it's the current page |
619 |
highlight => $this_page_number == $current_page_number, |
620 |
sort_by => join ' ', @sort_by |
621 |
}; |
606 |
|
622 |
|
607 |
} |
623 |
} |
608 |
|
624 |
|
Lines 613-621
for (my $i=0;$i<@servers;$i++) {
Link Here
|
613 |
for (my $i=$current_page_number; $i<=($current_page_number + 20 );$i++) { |
629 |
for (my $i=$current_page_number; $i<=($current_page_number + 20 );$i++) { |
614 |
my $this_offset = ((($i-9)*$results_per_page)-$results_per_page); |
630 |
my $this_offset = ((($i-9)*$results_per_page)-$results_per_page); |
615 |
my $this_page_number = $i-9; |
631 |
my $this_page_number = $i-9; |
616 |
my $highlight = 1 if ($this_page_number == $current_page_number); |
632 |
if ( $this_page_number <= $pages ) { |
617 |
if ($this_page_number <= $pages) { |
633 |
push @page_numbers, |
618 |
push @page_numbers, { offset => $this_offset, pg => $this_page_number, highlight => $highlight, sort_by => join " ",@sort_by }; |
634 |
{ offset => $this_offset, |
|
|
635 |
pg => $this_page_number, |
636 |
highlight => $this_page_number == $current_page_number, |
637 |
sort_by => join ' ', @sort_by |
638 |
}; |
619 |
} |
639 |
} |
620 |
} |
640 |
} |
621 |
} |
641 |
} |
622 |
- |
|
|