use C4::Members;
use C4::VirtualShelves;
use C4::XSLT;
-use Switch;
BEGIN {
if (C4::Context->preference('BakerTaylorEnabled')) {
# We try to select the best default tab to show, according to what
# the user wants, and what's available for display
- my $defaulttab = '';
- my $deftab = C4::Context->preference('opacSerialDefaultTab');
- # If the user wants subscriptions by default
- if ($deftab eq 'subscriptions') {
- # And there are subscriptions, we display them
- if ($subscriptionsnumber) {
- $defaulttab = 'subscriptions';
- } else {
- # Else, we try next option
- $deftab = 'serialcollection';
- }
- }
- if ($deftab eq 'serialcollection') {
- if (scalar(@serialcollections) > 0) {
- $defaulttab = 'serialcollection' ;
- } else {
- $deftab = 'holdings';
- }
- }
-
- if ($deftab eq '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;