Class: ReferralBox::TrackingController

Inherits:
ActionController::Base
  • Object
show all
Defined in:
app/controllers/referral_box/tracking_controller.rb

Instance Method Summary collapse

Instance Method Details

#track_referralObject



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'app/controllers/referral_box/tracking_controller.rb', line 7

def track_referral
  ref_code = params[:ref_code]
  device_data = params[:device_data]
  
  if ref_code.present?
    success = ReferralBox.track_referral(
      ref_code: ref_code,
      user_agent: request.user_agent,
      ip_address: request.remote_ip,
      referrer: request.referer,
      device_data: device_data
    )
    
    if success
      render json: { success: true, message: "Referral tracked successfully" }
    else
      render json: { success: false, message: "Failed to track referral" }, status: 422
    end
  else
    render json: { success: false, message: "Referral code is required" }, status: 400
  end
end