Bug 21199: Hide patron's attributes from ILSDI if required

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
This commit is contained in:
Jonathan Druart 2018-08-09 19:34:58 -03:00 committed by Nick Clemens
parent 898cd1d91f
commit a3848cb702
2 changed files with 27 additions and 10 deletions

View File

@ -475,7 +475,7 @@ sub GetPatronInfo {
}
if ( $cgi->param('show_attributes') eq "1" ) {
my $attrs = GetBorrowerAttributes( $borrowernumber, 0, 1 );
my $attrs = GetBorrowerAttributes( $borrowernumber, 1 );
$borrower->{'attributes'} = $attrs;
}

View File

@ -140,12 +140,21 @@ subtest 'GetPatronInfo/GetBorrowerAttributes test for extended patron attributes
my $attr_type = $builder->build( {
source => 'BorrowerAttributeType',
value => {
code => 'DOORCODE',
code => 'HIDEME',
opac_display => 0,
authorised_value_category => '',
class => '',
}
} );
my $attr_type_visible = $builder->build( {
source => 'BorrowerAttributeType',
value => {
code => 'SHOWME',
opac_display => 1,
authorised_value_category => '',
class => '',
}
} );
# Create a new user:
my $brwr = $builder->build( {
@ -165,12 +174,20 @@ subtest 'GetPatronInfo/GetBorrowerAttributes test for extended patron attributes
} );
# Set the new attribute for our user:
my $attr = $builder->build( {
my $attr_hidden = $builder->build( {
source => 'BorrowerAttribute',
value => {
borrowernumber => $brwr->{'borrowernumber'},
code => $attr_type->{'code'},
attribute => '1337',
attribute => '1337 hidden',
}
} );
my $attr_shown = $builder->build( {
source => 'BorrowerAttribute',
value => {
borrowernumber => $brwr->{'borrowernumber'},
code => $attr_type_visible->{'code'},
attribute => '1337 shown',
}
} );
@ -196,12 +213,12 @@ subtest 'GetPatronInfo/GetBorrowerAttributes test for extended patron attributes
# Build a structure for comparison:
my $cmp = {
category_code => $attr_type->{'category_code'},
class => $attr_type->{'class'},
code => $attr->{'code'},
description => $attr_type->{'description'},
display_checkout => $attr_type->{'display_checkout'},
value => $attr->{'attribute'},
category_code => $attr_type_visible->{'category_code'},
class => $attr_type_visible->{'class'},
code => $attr_shown->{'code'},
description => $attr_type_visible->{'description'},
display_checkout => $attr_type_visible->{'display_checkout'},
value => $attr_shown->{'attribute'},
value_description => undef,
};