From 4d035af17d7f94eb07e5bee2a3e885159f520eae Mon Sep 17 00:00:00 2001
From: Andrew Isherwood <andrew.isherwood@ptfs-europe.com>
Date: Tue, 17 Apr 2018 12:02:18 +0100
Subject: [PATCH] Bug 20581: Provide status_alias on IllRequest
This patch provides status_alias support for the Koha::Illrequest
object.
- New 'statusalias' getter method, returns the request's status_alias
authorised value object if set, otherwise undef
- Overloads existing 'status' method, getter/setter accessors intact,
but setting the request's status now implicitly removes any status_alias
that has been set
Signed-off-by: Niamh.Walker-Headon@it-tallaght.ie
---
Koha/Illrequest.pm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/Koha/Illrequest.pm b/Koha/Illrequest.pm
index ff834f14f5..18cd57e676 100644
--- a/Koha/Illrequest.pm
+++ b/Koha/Illrequest.pm
@@ -31,6 +31,7 @@ use Koha::Email;
use Koha::Exceptions::Ill;
use Koha::Illcomments;
use Koha::Illrequestattributes;
+use Koha::AuthorisedValue;
use Koha::Patron;
use base qw(Koha::Object);
@@ -109,6 +110,19 @@ available for request.
=head2 Class methods
+=head3 statusalias
+
+=cut
+
+sub statusalias {
+ my ( $self ) = @_;
+ return $self->status_alias ?
+ Koha::AuthorisedValue->_new_from_dbic(
+ scalar $self->_result->status_alias
+ ) :
+ undef;
+}
+
=head3 illrequestattributes
=cut
@@ -142,6 +156,22 @@ sub patron {
);
}
+=head3 status
+
+Overloaded getter/setter for request status,
+also nullifies status_alias
+
+=cut
+
+sub status {
+ my ( $self, $newval) = @_;
+ if ($newval) {
+ $self->status_alias(undef);
+ return $self->SUPER::status($newval);
+ }
+ return $self->SUPER::status;
+}
+
=head3 load_backend
Require "Base.pm" from the relevant ILL backend.
--
2.11.0