Sha256: 699b3059833614736551df277e7f29df48f48252ee0df92bfd72cc0b8994e8e9

Contents?: true

Size: 610 Bytes

Versions: 7

Compression:

Stored size: 610 Bytes

Contents

module Aua::Agents::Opera
  def self.extend?(agent)
    agent.products.include?("Opera")
  end
  
  PATTERN = /Opera ([\d.]+)/
  PATTERN_MINI = /Opera Mini\/([\d.]+)/
  PATTERN_MOBILE = /Opera Mobi\//
  
  def type
    :Browser
  end
  
  def name
    @name ||= begin
      return :OperaMobile if app_comments_string =~ PATTERN_MOBILE
      return :OperaMini if app_comments_string =~ PATTERN_MINI
      :Opera
    end
  end
  
  def version
    @version ||= begin
      return $1 if app_comments[1] =~ PATTERN_MINI
      (raw =~ PATTERN && $1) || version_of("Version") || version_of("Opera")
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
aua-0.2.2 lib/aua/agents/opera.rb
aua-0.2.1 lib/aua/agents/opera.rb
aua-0.2.0 lib/aua/agents/opera.rb
aua-0.1.3 lib/aua/agents/opera.rb
aua-0.1.2 lib/aua/agents/opera.rb
aua-0.1.1 lib/aua/agents/opera.rb
aua-0.1.0 lib/aua/agents/opera.rb