X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/2c52b067168084265ed577104fe1fa2677c6e620..68368118a63f4d6c2bed18cdf4dce525256b3a41:/app/models/acl.rb diff --git a/app/models/acl.rb b/app/models/acl.rb index dbcb38993..3ff19d35f 100644 --- a/app/models/acl.rb +++ b/app/models/acl.rb @@ -1,13 +1,23 @@ class Acl < ActiveRecord::Base def self.find_by_address(address, options) - self.with_scope(:find => {:conditions => ["? & netmask = address", address]}) do + self.with_scope(:find => {:conditions => ["#{inet_aton} & netmask = address", address]}) do return self.find(:first, options) end end def self.find_all_by_address(address, options) - self.with_scope(:find => {:conditions => ["? & netmask = address", address]}) do + self.with_scope(:find => {:conditions => ["#{inet_aton} & netmask = address", address]}) do return self.find(:all, options) end end + +private + + def self.inet_aton + if self.connection.adapter_name == "MySQL" + "inet_aton(?)" + else + "?" + end + end end