Sha256: c5146b4f9b65ed380cc3f82d50ac582b7e228017242fe208e2a0075eb750cbd3

Contents?: true

Size: 1007 Bytes

Versions: 9

Compression:

Stored size: 1007 Bytes

Contents

# encoding: utf-8
#
# This file is part of the brauser gem. Copyright (C) 2013 and above Shogun <shogun_panda@me.com>.
# Licensed under the MIT license, which can be found at http://www.opensource.org/licenses/mit-license.php.
#

module Brauser
  # A set of Hooks for adding brauser to web frameworks.
  module Hooks
    # Hook for integration with Ruby on Rails.
    module RubyOnRails
      # Includes brauser in ActionController.
      #
      # @param base [Class] The base controller class.
      def self.included(base)
        base.send :helper_method, :browser
      end

      # Detects the current browser.
      #
      # @param force [Boolean] If to force detection.
      # @return [Browser] The detected browser.
      def browser(force = false)
        @browser = nil if force
        @browser ||= Browser.new(request.headers["User-Agent"], request.headers["Accept-Language"])
      end
    end
  end
end

ActionController::Base.send(:include, Brauser::Hooks::RubyOnRails) if defined?(Rails)

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
brauser-2.1.4 lib/brauser/hooks.rb
brauser-2.1.3 lib/brauser/hooks.rb
brauser-2.1.2 lib/brauser/hooks.rb
brauser-2.1.1 lib/brauser/hooks.rb
brauser-2.1.0 lib/brauser/hooks.rb
brauser-2.0.3 lib/brauser/hooks.rb
brauser-2.0.2 lib/brauser/hooks.rb
brauser-2.0.1 lib/brauser/hooks.rb
brauser-2.0.0 lib/brauser/hooks.rb