Sha256: 7fdec4beea533c42be78799282a3e2b39f448754aa9acf36daa0eb524e630e03
Contents?: true
Size: 1.1 KB
Versions: 4
Compression:
Stored size: 1.1 KB
Contents
module Ahoy class VisitsController < BaseController def create visit_token = generate_token visitor_token = params[:visitor_token] || generate_token visit = Ahoy.visit_model.new do |v| v.visit_token = visit_token v.visitor_token = visitor_token v.ip = request.remote_ip if v.respond_to?(:ip=) v.user_agent = request.user_agent if v.respond_to?(:user_agent=) v.referrer = params[:referrer] if v.respond_to?(:referrer=) v.landing_page = params[:landing_page] if v.respond_to?(:landing_page=) v.user = Ahoy.fetch_user(self) if v.respond_to?(:user=) v.platform = params[:platform] if v.respond_to?(:platform=) v.app_version = params[:app_version] if v.respond_to?(:app_version=) v.os_version = params[:os_version] if v.respond_to?(:os_version=) end visit.save! render json: {visit_token: visit.visit_token, visitor_token: visit.visitor_token} end protected def generate_token SecureRandom.urlsafe_base64(32).gsub(/[\-_]/, "").first(32) end end end
Version data entries
4 entries across 4 versions & 1 rubygems