Module: Agents
- Defined in:
- lib/agents.rb,
lib/agents/version.rb,
lib/agents/constants.rb
Defined Under Namespace
Modules: Constants
Constant Summary collapse
- VERSION =
"0.1.4"
Class Method Summary collapse
- .is_ipad?(user_agent) ⇒ Boolean
- .is_iphone?(user_agent) ⇒ Boolean
- .random_user_agent(*args) ⇒ Object
- .runs_ios?(user_agent) ⇒ Boolean
Class Method Details
.is_ipad?(user_agent) ⇒ Boolean
28 29 30 |
# File 'lib/agents.rb', line 28 def is_ipad?(user_agent) !(user_agent =~ /ipad/i).nil? end |
.is_iphone?(user_agent) ⇒ Boolean
24 25 26 |
# File 'lib/agents.rb', line 24 def is_iphone?(user_agent) !(user_agent =~ /iphone|cpu\siphone/i).nil? end |
.random_user_agent(*args) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/agents.rb', line 7 def random_user_agent(*args) args = (args.nil? || args.empty?) ? [:desktop] : args case args.first when :phone, :mobile (::Agents::Constants::USER_AGENTS[:phones][:iphone] | ::Agents::Constants::USER_AGENTS[:phones][:android])&.sample when :tablet (::Agents::Constants::USER_AGENTS[:tablets][:ipad] | ::Agents::Constants::USER_AGENTS[:tablets][:android])&.sample else ::Agents::Constants::USER_AGENTS.dig(*args&.collect(&:to_sym))&.sample end end |
.runs_ios?(user_agent) ⇒ Boolean
20 21 22 |
# File 'lib/agents.rb', line 20 def runs_ios?(user_agent) is_iphone?(user_agent) || is_ipad?(user_agent) end |