Class: Mobvious::Strategies::URL
- Inherits:
-
Object
- Object
- Mobvious::Strategies::URL
- Defined in:
- lib/mobvious/strategies/url.rb
Overview
Mobvious device detection strategy that uses URL pattern matching.
Constant Summary collapse
- MOBILE_PATH_RULES =
Rule set with only one rule for domains that begin with
m.matching as:mobile. { /^\w+:\/\/m\./ => :mobile }
Instance Method Summary collapse
-
#get_device_type(request) ⇒ Symbol
Gets device type using URL pattern matching.
-
#initialize(rules = MOBILE_PATH_RULES, options = {}) ⇒ URL
constructor
Creates a new URL strategy instance.
Constructor Details
#initialize(rules = MOBILE_PATH_RULES, options = {}) ⇒ URL
Creates a new URL strategy instance.
21 22 23 24 25 26 27 28 29 30 |
# File 'lib/mobvious/strategies/url.rb', line 21 def initialize(rules = MOBILE_PATH_RULES, = {}) @rules = rules = { disable_if_referer_set: false, disable_if_referer_matches: nil, disable_unless_referer_matches: nil } = .merge() end |
Instance Method Details
#get_device_type(request) ⇒ Symbol
Gets device type using URL pattern matching. Returns nil if no match found.
36 37 38 39 40 41 42 43 44 45 |
# File 'lib/mobvious/strategies/url.rb', line 36 def get_device_type(request) return nil if disabled_by_referer_set?(request) || disabled_by_referer_matching?(request) || disabled_by_referer_not_matching?(request) @rules.each do |regex, device_type| return device_type if request.url =~ regex end nil end |