X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=serials%2Fserials-edit.pl;h=34f10316f60049d6217513874d630033be315c22;hb=26b2bd1fe02012115a5bf9736e8d446f4bc52a9e;hp=9ecd09fe91ed08e9edb885fc6e8797dc0e606bd0;hpb=c8df6bdcc9fe2523a77c839270b31304d8e13ee5;p=koha.git diff --git a/serials/serials-edit.pl b/serials/serials-edit.pl index 9ecd09fe91..34f10316f6 100755 --- a/serials/serials-edit.pl +++ b/serials/serials-edit.pl @@ -72,6 +72,7 @@ use C4::Koha; use C4::Output; use C4::Context; use C4::Serials; +use C4::Search qw/enabled_staff_search_views/; use List::MoreUtils qw/uniq/; my $query = CGI->new(); @@ -115,7 +116,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( query => $query, type => 'intranet', authnotrequired => 0, - flagsrequired => { serials => 1 }, + flagsrequired => { serials => 'receive_serials' }, debug => 1, } ); @@ -150,6 +151,7 @@ foreach my $serialid (@serialids) { ) || $serinfo->{'cannotedit'} ); + $serinfo->{editdisable} ||= ($serinfo->{status8} and $serinfo->{closed}); push @serialdatalist, $serinfo; $processedserialid{$serialid} = 1; } @@ -316,8 +318,12 @@ if ( $op and $op eq 'serialchangestatus' ) { if ( C4::Context->preference('autoBarcode') eq 'incremental' ) { - if ( !$bib_record->field($barcodetagfield) - ->subfield($barcodetagsubfield) ) + if ( + !( + $bib_record->field($barcodetagfield) + && $bib_record->field($barcodetagfield)->subfield($barcodetagsubfield) + ) + ) { my $sth_barcode = $dbh->prepare( 'select max(abs(barcode)) from items'); @@ -393,24 +399,28 @@ my $default_bib_view = get_default_view(); $template->param( serialsadditems => $serialdatalist[0]->{'serialsadditems'}, callnumber => $serialdatalist[0]->{'callnumber'}, + internalnotes => $serialdatalist[0]->{'internalnotes'}, bibliotitle => $biblio->{'title'}, biblionumber => $serialdatalist[0]->{'biblionumber'}, serialslist => \@serialdatalist, default_bib_view => $default_bib_view, location => $locationlib, + (uc(C4::Context->preference("marcflavour"))) => 1 + ); output_html_with_http_headers $query, $cookie, $template->output; sub get_default_view { my $defaultview = C4::Context->preference('IntranetBiblioDefaultView'); - my $views = { C4::Search::enabled_staff_search_views }; - if ($defaultview eq 'isbd' && $views->{can_view_ISBD}) { + my %views = C4::Search::enabled_staff_search_views(); + if ( $defaultview eq 'isbd' && $views{can_view_ISBD} ) { return 'ISBDdetail'; - } elsif ($defaultview eq 'marc' && $views->{can_view_MARC}) { + } + elsif ( $defaultview eq 'marc' && $views{can_view_MARC} ) { return 'MARCdetail'; - } elsif ($defaultview eq 'labeled_marc' && $views->{can_view_labeledMARC}) { + } + elsif ( $defaultview eq 'labeled_marc' && $views{can_view_labeledMARC} ) { return 'labeledMARCdetail'; - } else { - return 'detail'; } + return 'detail'; }