add tests for scratch users and migrate getUsers,isInGroup to use it
This commit is contained in:
parent
adea847875
commit
e5e9cd9b51
3 changed files with 65 additions and 15 deletions
|
|
@ -286,20 +286,6 @@ sub isInGroup {
|
|||
return 1;
|
||||
}
|
||||
}
|
||||
### Check Scratch Variables
|
||||
if ($group->scratchFilter()) {
|
||||
my $scratchFilter = $group->scratchFilter();
|
||||
$scratchFilter =~ s/\s//g;
|
||||
my @vars = split(";",$scratchFilter);
|
||||
foreach my $var (@vars) {
|
||||
my ($name, $value) = split(/\=/,$var);
|
||||
if ($self->session->scratch->get($name) eq $value) {
|
||||
$isInGroup->{$uid}{$gid} = 1;
|
||||
$self->session->stow->set("isInGroup",$isInGroup);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
### Check ldap
|
||||
if ($group->get("ldapGroup") && $group->get("ldapGroupProperty")) {
|
||||
# skip if not logged in
|
||||
|
|
@ -355,6 +341,13 @@ sub isInGroup {
|
|||
$self->session->stow->set("isInGroup",$isInGroup);
|
||||
return 1 if ($isInGroup->{$uid}{$gid});
|
||||
}
|
||||
if (my @scratchUsers = @{ $group->getScratchUsers() }) {
|
||||
foreach my $extUserId ( @scratchUsers ) {
|
||||
$isInGroup->{$extUserId}{$gid} = 1;
|
||||
}
|
||||
$self->session->stow->set("isInGroup",$isInGroup);
|
||||
return 1 if ($isInGroup->{$uid}{$gid});
|
||||
}
|
||||
### Check for groups of groups.
|
||||
my $groups = $group->getGroupsIn(1);
|
||||
foreach (@{$groups}) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue