1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
|
# File 'lib/gooddata/models/project.rb', line 1823
def whitelist_users(new_users, users_list, whitelist, mode = :exclude)
return [new_users, users_list] unless whitelist
new_whitelist_proc = proc do |user|
whitelist.any? do |wl|
if wl.is_a?(Regexp)
user[:login] =~ wl
else
user[:login] && user[:login] == wl
end
end
end
whitelist_proc = proc do |user|
whitelist.any? do |wl|
if wl.is_a?(Regexp)
user.login =~ wl
else
user.login && user.login == wl
end
end
end
if mode == :include
[new_users.select(&new_whitelist_proc), users_list.select(&whitelist_proc)]
elsif mode == :exclude
[new_users.reject(&new_whitelist_proc), users_list.reject(&whitelist_proc)]
end
end
|