@@ -, +, @@ --- Koha/AuthorisedValues.pm | 6 +----- admin/authorised_values.pl | 12 +++++++++++- .../intranet-tmpl/prog/en/modules/admin/authorised_values.tt | 2 ++ 3 files changed, 14 insertions(+), 6 deletions(-) --- a/Koha/AuthorisedValues.pm +++ a/Koha/AuthorisedValues.pm @@ -59,11 +59,7 @@ sub search { } : {}; my $join = $branchcode ? { join => 'authorised_values_branches' } : {}; - my $rs = $self->_resultset() - ->search( { %$params, %$or, }, $join ); - - my $class = ref($self); - return wantarray ? $self->_wrap( $rs->all() ) : $class->_new_from_dbic($rs); + return $self->SUPER::search( { %$params, %$or, }, $join ); } sub categories { --- a/admin/authorised_values.pl +++ a/admin/authorised_values.pl @@ -103,7 +103,17 @@ if ($op eq 'add_form') { my $duplicate_entry = 0; my @branches = grep { $_ ne q{} } $input->param('branches'); - if ( $id ) { # Update + my $already_exists = Koha::AuthorisedValues->search( + { + category => $new_category, + authorised_value => $new_authorised_value, + } + )->count; + + if ( $already_exists ) { + push @messages, {type => 'error', code => 'already_exists' }; + } + elsif ( $id ) { # Update my $av = Koha::AuthorisedValues->new->find( $id ); $av->lib( $input->param('lib') || undef ); --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tt @@ -184,6 +184,8 @@ $(document).ready(function() { Authorized value inserted successfully. [% CASE 'success_on_delete' %] Authorized value deleted successfully. + [% CASE 'already_exists' %] + This authorized value already exists. [% CASE %] [% m.code %] [% END %] --