From f8ed88e98ea1d4091cd8628e631285fe8b6bfcd6 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Fri, 5 Jul 2024 14:47:42 +0200 Subject: [PATCH] Bug 37247: Fix display of "closed" The subscription was not shown as closed after we closed it. This is because "closed" is not passed to the template. It seems more reliable to rely on the subscription object (that is passed to both serials/serials-collection.tt and serials/subscription-detail.tt, the others are not showing the Reopen/Close buttons) Also fetch the subscription object after and reopen/close it to display accurate values. Signed-off-by: Chris Cormack Signed-off-by: Martin Renvoize --- .../intranet-tmpl/prog/en/includes/serials-toolbar.inc | 6 +++--- .../prog/en/modules/serials/subscription-detail.tt | 4 ++-- serials/subscription-detail.pl | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc index 85811729dd..6eaa4916d1 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc @@ -49,14 +49,14 @@ [% END %] [% IF not cannotedit or CAN_user_serials_receive_serials %] - [% IF CAN_user_serials_renew_subscription and not closed %] + [% IF CAN_user_serials_renew_subscription and not subscription.closed %] [% END %] - [% IF CAN_user_serials_receive_serials and not closed %] + [% IF CAN_user_serials_receive_serials and not subscription.closed %] [% END %] [% UNLESS cannotedit %] - [% IF closed %] + [% IF subscription.closed %] [% ELSE %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/subscription-detail.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/subscription-detail.tt index 59130e7141..443fd3b303 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/subscription-detail.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/subscription-detail.tt @@ -44,10 +44,10 @@ [% INCLUDE 'serials-toolbar.inc' %] [% INCLUDE 'mana/mana-comment-status.inc' %] -

Subscription for [% INCLUDE 'biblio-title.inc' biblio=subscription.biblio link = 0 %] [% IF closed %](closed)[% END %]

+

Subscription for [% INCLUDE 'biblio-title.inc' biblio=subscription.biblio link = 0 %] [% IF subscription.closed %](closed)[% END %]

[% IF ( abouttoexpire ) %] - [% UNLESS closed %] + [% UNLESS subscription.closed %]
Subscription will expire [% enddate | html %]. Renew this subscription.
[% END %] [% END %] diff --git a/serials/subscription-detail.pl b/serials/subscription-detail.pl index 488cb6dfde..86a4e0cbb6 100755 --- a/serials/subscription-detail.pl +++ b/serials/subscription-detail.pl @@ -62,8 +62,6 @@ $subs->{enddate} ||= GetExpirationDate($subscriptionid); my ($totalissues,@serialslist) = GetSerials($subscriptionid); $totalissues-- if $totalissues; # the -1 is to have 0 if this is a new subscription (only 1 issue) -my $subscription = Koha::Subscriptions->find( $subscriptionid ); - if ( $op and $op eq "close" ) { C4::Serials::CloseSubscription( $subscriptionid ); } elsif ( $op and $op eq "reopen" ) { @@ -123,6 +121,8 @@ my @irregular_issues = split /;/, $subs->{irregularity}; my $frequency = C4::Serials::Frequency::GetSubscriptionFrequency($subs->{periodicity}); my $numberpattern = C4::Serials::Numberpattern::GetSubscriptionNumberpattern($subs->{numberpattern}); +my $subscription = Koha::Subscriptions->find( $subscriptionid ); + $template->param( available_additional_fields => Koha::AdditionalFields->search( { tablename => 'subscription' } ), additional_field_values => { map { $_->field->name => $_->value } $subscription->additional_field_values->as_list }, -- 2.39.5