module Userlist::Rails::Helpers
Public Instance Methods
userlist_script_tag(*args)
click to toggle source
# File lib/userlist/rails/helpers.rb, line 4 def userlist_script_tag(*args) # rubocop:disable Metrics/CyclomaticComplexity config = Userlist.config logger = Userlist.logger options = args.extract_options! user = args.first user ||= current_user if respond_to?(:current_user) user ||= Userlist::Rails.current_user options[:async] = true if user options[:data] ||= {} options[:data][:userlist] = Userlist::Token.generate(user, config) end script_tag = javascript_tag('window.userlist=window.userlist||function(){(userlist.q=userlist.q||[]).push(arguments)};') include_tag = javascript_include_tag(config.script_url, options) script_tag + include_tag rescue Userlist::Error => e logger.error(e.message) raw("<!-- #{e.class}: #{e.message} -->") unless ::Rails.env.production? end