Bug 22483: Restore undef behaviour
Turns out that we rely heavily on the side effect that passing undef to haspermission would always return true no matter what permissions or lack of permissions you had. Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
parent
4cb1a47d03
commit
088e0243bf
|
|
@ -2084,8 +2084,10 @@ sub _dispatch {
|
|||
sub haspermission {
|
||||
my ( $userid, $flagsrequired ) = @_;
|
||||
|
||||
Koha::Exceptions::WrongParameter->throw('$flagsrequired should not be undef')
|
||||
unless defined($flagsrequired);
|
||||
return 1 unless defined($flagsrequired); # This is horrifying but restores behaviour prior to bug 22031
|
||||
|
||||
#Koha::Exceptions::WrongParameter->throw('$flagsrequired should not be undef')
|
||||
# unless defined($flagsrequired);
|
||||
|
||||
my $sth = C4::Context->dbh->prepare("SELECT flags FROM borrowers WHERE userid=?");
|
||||
$sth->execute($userid);
|
||||
|
|
|
|||
|
|
@ -73,13 +73,16 @@ $builder->build(
|
|||
|
||||
subtest 'undef top level tests' => sub {
|
||||
|
||||
plan tests => 2;
|
||||
plan tests => 1;
|
||||
|
||||
throws_ok { my $r = haspermission( $borr1->{userid} ); }
|
||||
'Koha::Exceptions::WrongParameter',
|
||||
'Exception thrown when missing $requiredflags';
|
||||
throws_ok { my $r = haspermission( $borr1->{userid}, undef ); }
|
||||
'Koha::Exceptions::WrongParameter', 'Exception thrown when explicit undef';
|
||||
my $pass = haspermission( $borr2->{userid} );
|
||||
ok($pass, "let through undef privs");
|
||||
|
||||
#throws_ok { my $r = haspermission( $borr1->{userid} ); }
|
||||
#'Koha::Exceptions::WrongParameter',
|
||||
# 'Exception thrown when missing $requiredflags';
|
||||
#throws_ok { my $r = haspermission( $borr1->{userid}, undef ); }
|
||||
#'Koha::Exceptions::WrongParameter', 'Exception thrown when explicit undef';
|
||||
};
|
||||
|
||||
subtest 'scalar top level tests' => sub {
|
||||
|
|
|
|||
Loading…
Reference in New Issue