[Koha-patches] [PATCH] Fix bug on opac-detail.pl with switch statement
Frédéric Demians
f.demians at tamil.fr
Wed Nov 10 23:00:54 CET 2010
---
opac/opac-detail.pl | 50 ++++++++++++--------------------------------------
1 files changed, 12 insertions(+), 38 deletions(-)
diff --git a/opac/opac-detail.pl b/opac/opac-detail.pl
index 629ebd2..29a299f 100755
--- a/opac/opac-detail.pl
+++ b/opac/opac-detail.pl
@@ -596,44 +596,18 @@ if (my $search_for_title = C4::Context->preference('OPACSearchForTitleIn')){
# We try to select the best default tab to show, according to what
# the user wants, and what's available for display
-my $defaulttab = '';
-switch (C4::Context->preference('opacSerialDefaultTab')) {
-
- # If the user wants subscriptions by default
- case "subscriptions" {
- # And there are subscriptions, we display them
- if ($subscriptionsnumber) {
- $defaulttab = 'subscriptions';
- } else {
- # Else, we try next option
- next;
- }
- }
-
- case "serialcollection" {
- if (scalar(@serialcollections) > 0) {
- $defaulttab = 'serialcollection' ;
- } else {
- next;
- }
- }
-
- case "holdings" {
- if ($dat->{'count'} > 0) {
- $defaulttab = 'holdings';
- } else {
- # As this is the last option, we try other options if there are no items
- if ($subscriptionsnumber) {
- $defaulttab = 'subscriptions';
- } elsif (scalar(@serialcollections) > 0) {
- $defaulttab = 'serialcollection' ;
- }
- }
-
- }
-
-}
+my $opac_serial_default = C4::Context->preference('opacSerialDefaultTab');
+my $defaulttab =
+ $opac_serial_default eq 'subscriptions' && $subscriptionsnumber
+ ? 'subscriptions' :
+ $opac_serial_default eq 'serialcollection' && @serialcollections > 0
+ ? 'serialcollection' :
+ $opac_serial_default eq 'holdings' && $dat->{'count'} > 0
+ ? 'holdings' :
+ $subscriptionsnumber
+ ? 'subscriptions' :
+ @serialcollections > 0
+ ? 'serialcollection' : 'subscription';
$template->param('defaulttab' => $defaulttab);
-
output_html_with_http_headers $query, $cookie, $template->output;
--
1.7.3.2
More information about the Koha-patches
mailing list