Class: Hubbah::Payload

Inherits:
Object
  • Object
show all
Defined in:
lib/hubbah/payload.rb

Instance Method Summary collapse

Constructor Details

#initialize(configuration, env) ⇒ Payload

Returns a new instance of Payload.



4
5
6
7
8
9
10
11
12
13
# File 'lib/hubbah/payload.rb', line 4

def initialize(configuration, env)
  @configuration = configuration
  request = Rack::Request.new(env)
  @hutk = request.cookies['hubspotutk']
  @ip = request.ip
  @url = request.url
  if !request.referer.nil? && request.referer != '/'
    @url = request.referer
  end
end

Instance Method Details

#hs_contextObject



22
23
24
25
26
27
28
29
# File 'lib/hubbah/payload.rb', line 22

def hs_context
  context_map.inject({}) do |map, keypair|
    unless keypair[1].nil?
      map[keypair[0]] = keypair[1]
    end
    map
  end
end

#submit(guid, attributes) ⇒ Object



15
16
17
18
19
20
# File 'lib/hubbah/payload.rb', line 15

def submit(guid, attributes)
  decorated_attrs = attributes.dup
  decorated_attrs['hs_context'] = hs_context.to_json
  submission = Hubbah::FormSubmission.new(guid, decorated_attrs, @configuration)
  submission.submit
end