README.md in rack-simple_user_agent-0.2.2 vs README.md in rack-simple_user_agent-0.3.0.rc

- old
+ new

@@ -2,36 +2,54 @@ [![Gem Version](https://badge.fury.io/rb/rack-simple_user_agent.svg)](https://badge.fury.io/rb/rack-simple_user_agent) [![Build Status](https://travis-ci.org/toshimaru/rack-simple_user_agent.svg)](https://travis-ci.org/toshimaru/rack-simple_user_agent) [![Coverage Status](https://coveralls.io/repos/github/toshimaru/rack-simple_user_agent/badge.svg)](https://coveralls.io/github/toshimaru/rack-simple_user_agent) [![Code Climate](https://codeclimate.com/github/toshimaru/rack-simple_user_agent/badges/gpa.svg)](https://codeclimate.com/github/toshimaru/rack-simple_user_agent) +[![Dependency Status](https://gemnasium.com/badges/github.com/toshimaru/rack-simple_user_agent.svg)](https://gemnasium.com/github.com/toshimaru/rack-simple_user_agent) -Rack::SimpleUserAgent is Rack::Request extension which detects user-agent from request user-agent string. No complicated logic for the detection, it simply(stupidly) checks if user-agent includes particular string. +Rack::SimpleUserAgent is Rack::Request extension which detects user-agent from user-agent string. No complicated logic for the detection, it simply(stupidly) checks if user-agent includes particular string or not. -**[ANNOUNCEMENT] Current `request.from_smartphone?` behavior is going to be changed in the next version. Please don't use `request.from_smartphone?`, use `request.from_smartphone?`, `request.from_android?` instead depending on the use case.** - ## Installation Add this line to your application's `Gemfile`: ```ruby gem 'rack-simple_user_agent' ``` +## Available Detection Methods + +``` +request ─ from_smartdevice? + │ ├─ from_ios? + │ ├─ from_android? + │ └─ from_windows_phone? + │ + ├ from_smartphone? + │ ├─ from_android_mobile? + │ ├─ from_iphone? + │ ├─ from_ipod? + │ └─ from_windows_phone? + │ + ├ from_tablet? + │ ├─ from_ipad? + │ └─ from_android_tablet? + │ + └ from_googlebot? + ├─ from_googlebot_news? + ├─ from_googlebot_images? + └─ from_googlebot_video? +``` + ## Usage ### on Rails -Installing `rack-simple_user_agent` automatically makes all detection methods available. These methods are useful when you use the Rails' [Action Pack Variants](http://guides.rubyonrails.org/4_1_release_notes.html#action-pack-variants) (as of Rails4.1). +Installing `rack-simple_user_agent` automatically makes all detection methods available. -For example, you can use below detection methods in your Rails application. +These methods are useful when you use the Rails' [Action Pack Variants](http://guides.rubyonrails.org/4_1_release_notes.html#action-pack-variants) (as of Rails4.1). -- `request.from_smartphone?` -- `request.from_android?` -- `request.from_iphone?` -- `request.from_windows_phone?` - ### on Sinatra ```rb require "sinatra" require "rack/simple_user_agent" @@ -39,31 +57,17 @@ configure do use Rack::SimpleUserAgent end get "/" do - request.from_smartphone? - "Hello World!" + if request.from_smartphone? + "Hello World from smartphone" + elsif request.from_tablet? + "Hello World from tablet" + else + "Hello World" + end end -``` - -## Available Detection Methods - -``` -request ── from_smartphone? - │ ├── from_android? - │ │   ├── from_android_mobile? - │ │   └── from_android_tablet? - │ ├── from_ios? - │ │   ├── from_ipad? - │ │   ├── from_iphone? - │ │   └── from_ipod? - │ └── from_windows_phone? - │ - └ from_googlebot? - ├── from_googlebot_news? - ├── from_googlebot_images? - └── from_googlebot_video? ``` ## Development After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.