mask_ip -> mask_ips
Andrew
committed May 02, 2018
commit 4aa57ee2307a86ea893fc4b307555ac15497d4b6
Showing 2
changed files with
17 additions
and 12 deletions
ahoy.rb b/lib/ahoy.rb
+15
-2
| @@ | @@ -1,3 +1,5 @@ |
| + | require "ipaddr" |
| + | |
| require "active_support" | |
| require "active_support/core_ext" | |
| require "addressable/uri" | |
| @@ | @@ -67,12 +69,23 @@ module Ahoy |
| mattr_accessor :token_generator | |
| self.token_generator = -> { SecureRandom.uuid } | |
| - | mattr_accessor :mask_ip |
| - | self.mask_ip = false |
| + | mattr_accessor :mask_ips |
| + | self.mask_ips = false |
| def self.log(message) | |
| Rails.logger.info { "[ahoy] #{message}" } | |
| end | |
| + | |
| + | def self.mask_ip(ip) |
| + | addr = IPAddr.new(ip) |
| + | if addr.ipv4? |
| + | # set last octet to 0 |
| + | addr.mask(24).to_s |
| + | else |
| + | # set last 80 bits to zeros |
| + | addr.mask(48).to_s |
| + | end |
| + | end |
| end | |
| ActiveSupport.on_load(:action_controller) do | |
ahoy/visit_properties.rb b/lib/ahoy/visit_properties.rb
+2
-10
| @@ | @@ -1,4 +1,3 @@ |
| - | require "ipaddr" |
| require "browser" | |
| require "referer-parser" | |
| require "user_agent_parser" | |
| @@ | @@ -74,15 +73,8 @@ module Ahoy |
| # https://support.google.com/analytics/answer/2763052 | |
| def ip | |
| ip = request.remote_ip | |
| - | if ip && Ahoy.mask_ip |
| - | addr = IPAddr.new(ip) |
| - | if addr.ipv4? |
| - | # set last octet to 0 |
| - | addr.mask(24).to_s |
| - | else |
| - | # set last 80 bits to zeros |
| - | addr.mask(48).to_s |
| - | end |
| + | if ip && Ahoy.mask_ips |
| + | Ahoy.mask_ip(ip) |
| else | |
| ip | |
| end | |