Lines 52-61
sub store {
Link Here
|
52 |
unless $type; |
52 |
unless $type; |
53 |
|
53 |
|
54 |
Koha::Exceptions::Patron::Attribute::NonRepeatable->throw( attribute => $self ) |
54 |
Koha::Exceptions::Patron::Attribute::NonRepeatable->throw( attribute => $self ) |
55 |
unless $self->repeatable_ok($type); |
55 |
unless $self->repeatable_ok; |
56 |
|
56 |
|
57 |
Koha::Exceptions::Patron::Attribute::UniqueIDConstraint->throw( attribute => $self ) |
57 |
Koha::Exceptions::Patron::Attribute::UniqueIDConstraint->throw( attribute => $self ) |
58 |
unless $self->unique_ok($type); |
58 |
unless $self->unique_ok; |
59 |
|
59 |
|
60 |
return $self->SUPER::store(); |
60 |
return $self->SUPER::store(); |
61 |
} |
61 |
} |
Lines 72-78
sub type {
Link Here
|
72 |
|
72 |
|
73 |
my $self = shift; |
73 |
my $self = shift; |
74 |
|
74 |
|
75 |
return scalar Koha::Patron::Attribute::Types->find( $self->code ); |
75 |
$self->{_type} ||= Koha::Patron::Attribute::Types->find( $self->code ); |
|
|
76 |
|
77 |
return $self->{_type}; |
76 |
} |
78 |
} |
77 |
|
79 |
|
78 |
=head3 authorised_value |
80 |
=head3 authorised_value |
Lines 145-151
whether storing the current object state would break the repeatable constraint.
Link Here
|
145 |
|
147 |
|
146 |
sub repeatable_ok { |
148 |
sub repeatable_ok { |
147 |
|
149 |
|
148 |
my ( $self, $type ) = @_; |
150 |
my ( $self ) = @_; |
|
|
151 |
|
152 |
my $type = $self->type; |
153 |
Koha::Exceptions::Patron::Attribute::InvalidType->throw( type => $self->code ) |
154 |
unless $type; |
149 |
|
155 |
|
150 |
my $ok = 1; |
156 |
my $ok = 1; |
151 |
if ( !$type->repeatable ) { |
157 |
if ( !$type->repeatable ) { |
Lines 172-178
whether storing the current object state would break the unique constraint.
Link Here
|
172 |
|
178 |
|
173 |
sub unique_ok { |
179 |
sub unique_ok { |
174 |
|
180 |
|
175 |
my ( $self, $type ) = @_; |
181 |
my ( $self ) = @_; |
|
|
182 |
|
183 |
my $type = $self->type; |
184 |
Koha::Exceptions::Patron::Attribute::InvalidType->throw( type => $self->code ) |
185 |
unless $type; |
176 |
|
186 |
|
177 |
my $ok = 1; |
187 |
my $ok = 1; |
178 |
if ( $type->unique_id ) { |
188 |
if ( $type->unique_id ) { |
179 |
- |
|
|