Class: Ahoy::Stores::BaseStore

Inherits:
Object
  • Object
show all
Defined in:
lib/ahoy/stores/base_store.rb

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ BaseStore

Returns a new instance of BaseStore.



4
5
6
# File 'lib/ahoy/stores/base_store.rb', line 4

def initialize(options)
  @options = options
end

Instance Method Details

#authenticate(user) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
# File 'lib/ahoy/stores/base_store.rb', line 17

def authenticate(user)
  @user = user
  if visit && visit.respond_to?(:user) && !visit.user
    begin
      visit.user = user
      visit.save!
    rescue ActiveRecord::AssociationTypeMismatch
      # do nothing
    end
  end
end

#exclude?Boolean

Returns:

  • (Boolean)


37
38
39
# File 'lib/ahoy/stores/base_store.rb', line 37

def exclude?
  bot?
end

#generate_idObject



41
42
43
# File 'lib/ahoy/stores/base_store.rb', line 41

def generate_id
  SecureRandom.uuid
end

#report_exception(e) ⇒ Object



29
30
31
# File 'lib/ahoy/stores/base_store.rb', line 29

def report_exception(e)
  raise e
end

#track_event(name, properties, options) ⇒ Object



11
12
# File 'lib/ahoy/stores/base_store.rb', line 11

def track_event(name, properties, options)
end

#track_visit(options) ⇒ Object



8
9
# File 'lib/ahoy/stores/base_store.rb', line 8

def track_visit(options)
end

#userObject



33
34
35
# File 'lib/ahoy/stores/base_store.rb', line 33

def user
  @user ||= (controller.respond_to?(:current_user) && controller.current_user) || (controller.respond_to?(:current_resource_owner, true) && controller.send(:current_resource_owner)) || nil
end

#visitObject



14
15
# File 'lib/ahoy/stores/base_store.rb', line 14

def visit
end