FEATURE: search by ip address on admin user list page

This commit is contained in:
Arpit Jalan
2014-10-23 07:58:01 +05:30
parent de415b804c
commit 1035df46bf
3 changed files with 25 additions and 3 deletions

View File

@ -37,7 +37,11 @@ class AdminUserIndexQuery
def filter_by_search
if params[:filter].present?
if params[:admin] == true
@query.where('username_lower ILIKE :filter OR email ILIKE :filter', filter: "%#{params[:filter]}%")
if params[:filter] =~ Resolv::IPv4::Regex || params[:filter] =~ Resolv::IPv6::Regex
@query.where('ip_address = :ip OR registration_ip_address = :ip', ip: params[:filter])
else
@query.where('username_lower ILIKE :filter OR email ILIKE :filter', filter: "%#{params[:filter]}%")
end
else
@query.where('username_lower ILIKE :filter', filter: "%#{params[:filter]}%")
end