Sha256: 33ae55b55b3cda079a68af5102526d7c08075e71a6ad37b5651ad5a10d7dffa1
Contents?: true
Size: 1.21 KB
Versions: 4
Compression:
Stored size: 1.21 KB
Contents
class UserAgent module OperatingSystems Windows = { "Windows NT 6.3" => "Windows 8.1", "Windows NT 6.2" => "Windows 8", "Windows NT 6.1" => "Windows 7", "Windows NT 6.0" => "Windows Vista", "Windows NT 5.2" => "Windows XP x64 Edition", "Windows NT 5.1" => "Windows XP", "Windows NT 5.01" => "Windows 2000, Service Pack 1 (SP1)", "Windows NT 5.0" => "Windows 2000", "Windows NT 4.0" => "Windows NT 4.0", "Windows 98" => "Windows 98", "Windows 95" => "Windows 95", "Windows CE" => "Windows CE" }.freeze def self.normalize_os(os) Windows[os] || normalize_mac_os_x(os) || normalize_ios(os) || os end private def self.normalize_ios(os) if os =~ /CPU OS\s*([0-9_\.]+)?\slike Mac OS X/ if $1.nil? "iOS" else version = $1.gsub('_', '.') "iOS #{version}" end end end def self.normalize_mac_os_x(os) if os =~ /(?:Intel|PPC) Mac OS X\s*([0-9_\.]+)?/ if $1.nil? "OS X" else version = $1.gsub('_', '.') "OS X #{version}" end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems