module Rack::UserAgent::Detector

Public Instance Methods

from_android?() click to toggle source
# File lib/rack/user_agent/detector.rb, line 31
def from_android?
  os == "Android" && android_mobile?
end
from_android_os?() click to toggle source
# File lib/rack/user_agent/detector.rb, line 39
def from_android_os?
  from_android? || from_android_tablet?
end
from_android_tablet?() click to toggle source
# File lib/rack/user_agent/detector.rb, line 35
def from_android_tablet?
  os == "Android" && !android_mobile?
end
from_ios?() click to toggle source
# File lib/rack/user_agent/detector.rb, line 27
def from_ios?
  from_iphone? || from_ipad? || from_ipod? || os == "iOS"
end
from_ipad?() click to toggle source
# File lib/rack/user_agent/detector.rb, line 19
def from_ipad?
  os == "iPad"
end
from_iphone?() click to toggle source
# File lib/rack/user_agent/detector.rb, line 15
def from_iphone?
  os == "iPhone"
end
from_ipod?() click to toggle source
# File lib/rack/user_agent/detector.rb, line 23
def from_ipod?
  os == "iPod"
end
from_windows_phone?() click to toggle source
# File lib/rack/user_agent/detector.rb, line 43
def from_windows_phone?
  os == "Windows Phone OS"
end
smartphone_version() click to toggle source
# File lib/rack/user_agent/detector.rb, line 10
def smartphone_version
  return unless from_smartphone?
  suppress_unknown(os_version)
end

Private Instance Methods

android_mobile?() click to toggle source
# File lib/rack/user_agent/detector.rb, line 49
def android_mobile?
  (user_agent =~ /Android.+Mobi(le)?/).nil?.!
end
suppress_unknown(version) click to toggle source
# File lib/rack/user_agent/detector.rb, line 53
def suppress_unknown(version)
  if version == "UNKNOWN"
    nil
  else
    version
  end
end