Sha256: c9843acea4aa4d6d0a66da7cbeda19c5d1ea8f6b47485b9beb73762d9c4ea7c5
Contents?: true
Size: 908 Bytes
Versions: 2
Compression:
Stored size: 908 Bytes
Contents
module Ahoy module Deckhands class TechnologyDeckhand def initialize(user_agent) @user_agent = user_agent end def browser agent.name end def os agent.os.name end def device_type @device_type ||= begin browser = Browser.new(ua: @user_agent) if browser.bot? "Bot" elsif browser.tv? "TV" elsif browser.console? "Console" elsif browser.tablet? "Tablet" elsif browser.mobile? "Mobile" else "Desktop" end end end protected def agent @agent ||= self.class.user_agent_parser.parse(@user_agent) end # performance def self.user_agent_parser @user_agent_parser ||= UserAgentParser::Parser.new end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ahoy_matey-1.2.1 | lib/ahoy/deckhands/technology_deckhand.rb |
ahoy_matey-1.2.0 | lib/ahoy/deckhands/technology_deckhand.rb |