Sha256: 691c99902a962a38de03334e69e675df26902705e5b0d5451f569197cd321488
Contents?: true
Size: 1.3 KB
Versions: 2
Compression:
Stored size: 1.3 KB
Contents
# frozen_string_literal: true require "rails" require "browser" class PagesController < ActionController::Base def home render html: "#{browser.name}:#{browser.accept_language.first.full}" end end class PotsController < ActionController::API def index render json: { isBot: browser.bot?, acceptLanguages: browser.accept_language.map(&:full) } end end class SampleApp < Rails::Application config.secret_token = "99f19f08db7a37bdcb9d6701f54dca" config.secret_key_base = "99f19f08db7a37bdcb9d6701f54dca" config.eager_load = true config.active_support.deprecation = :log routes.append do default_headers = {"Content-Type" => "text/html"} root to: ->(_env) { [200, default_headers, ["ROOT"]] } get "upgrade", to: lambda {|env| browser = Rack::Request.new(env).params["browser"] [200, default_headers, ["UPGRADE: #{browser}"]] }, as: "upgrade" get "/asset", to: proc { [200, {"Content-Type" => "image/png"}, []] } get "/home", to: "pages#home" get "/api/pages", to: "pots#index" end config.middleware.use Browser::Middleware do redirect_to upgrade_path(browser: "ie6") if browser.ie?(6) redirect_to upgrade_path(browser: "ie7") if browser.ie?(7) redirect_to "/invalid" if browser.ie?(8) end end SampleApp.initialize!
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
browser-2.6.1 | test/sample_app.rb |
browser-2.6.0 | test/sample_app.rb |