From a39fbd78e61d62b680f7e592effc903e344a928f Mon Sep 17 00:00:00 2001 From: Tomas Cohen Arazi Date: Mon, 31 Oct 2016 15:09:43 -0300 Subject: [PATCH] Bug 17755: Introduce Koha::Patron::Attribute::Type(s) This patch introduces the Koha::Object-based classes for handling patron attribute types. It also adds branch limitation handling to the Koha::Patron::Attribute::Type class. It is built on top of the new Koha::Object::Library::Limit class that extends Koha::Object so it handles library limits. Signed-off-by: Kyle M Hall Signed-off-by: Jonathan Druart Signed-off-by: Kyle M Hall --- Koha/Patron/Attribute/Type.pm | 54 ++++++++++++++++++++++++++++++++++ Koha/Patron/Attribute/Types.pm | 46 +++++++++++++++++++++++++++++ 2 files changed, 100 insertions(+) create mode 100644 Koha/Patron/Attribute/Type.pm create mode 100644 Koha/Patron/Attribute/Types.pm diff --git a/Koha/Patron/Attribute/Type.pm b/Koha/Patron/Attribute/Type.pm new file mode 100644 index 0000000000..aba093e1b6 --- /dev/null +++ b/Koha/Patron/Attribute/Type.pm @@ -0,0 +1,54 @@ +package Koha::Patron::Attribute::Type; + +# This file is part of Koha. +# +# Koha is free software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the Free Software +# Foundation; either version 3 of the License, or (at your option) any later +# version. +# +# Koha is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR +# A PARTICULAR PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with Koha; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +use Modern::Perl; + +use Koha::Database; + +use base qw(Koha::Object Koha::Object::Limit::Library); + +=head1 NAME + +Koha::Patron::Attribute::Type - Koha::Patron::Attribute::Type Object class + +=head1 API + +=head2 Class Methods + +=cut + +=head3 _type + +=cut + +sub _type { + return 'BorrowerAttributeType'; +} + +=head3 _library_limits + +=cut + +sub _library_limits { + return { + class => 'BorrowerAttributeTypesBranch', + id => 'bat_code', + library => 'b_branchcode' + }; +} + +1; diff --git a/Koha/Patron/Attribute/Types.pm b/Koha/Patron/Attribute/Types.pm new file mode 100644 index 0000000000..3a4a6c8708 --- /dev/null +++ b/Koha/Patron/Attribute/Types.pm @@ -0,0 +1,46 @@ +package Koha::Patron::Attribute::Types; + +# This file is part of Koha. +# +# Koha is free software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the Free Software +# Foundation; either version 3 of the License, or (at your option) any later +# version. +# +# Koha is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR +# A PARTICULAR PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with Koha; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +use Modern::Perl; + +use Koha::Patron::Attribute::Type; + +use base qw(Koha::Objects); + +=head1 NAME + +Koha::Patron::Attribute::Types Object set class + +=head1 API + +=head2 Class Methods + +=cut + +=head3 type + +=cut + +sub _type { + return 'BorrowerAttributeType'; +} + +sub object_class { + return 'Koha::Patron::Attribute::Type'; +} + +1; -- 2.39.5