lib/gon/helpers.rb in gon-4.1.1 vs lib/gon/helpers.rb in gon-5.0.0
- old
+ new
@@ -15,22 +15,24 @@
Gon::Base.render_data(options)
elsif options[:init].present?
Gon.clear if Gon.all_variables.present?
Gon::Base.render_data(options)
else
- ""
+ ''
end
end
private
def variables_for_request_present?
- Gon::Request.env &&
- Gon::Request.id == request.object_id &&
- Gon.all_variables.present?
+ current_gon.gon.present?
end
+ def current_gon
+ Thread.current['gon']
+ end
+
end
end
module GonHelpers
@@ -40,24 +42,27 @@
module InstanceMethods
def gon
if wrong_gon_request?
- Gon::Request.id = request.object_id
- Gon::Request.env = request.env
+ gon_request = Request.new(env)
+ gon_request.id = request.uuid
+ Thread.current['gon'] = gon_request
end
Gon
end
private
def wrong_gon_request?
- Gon::Request.env.blank? ||
- Gon::Request.id != request.object_id
+ current_gon.blank? || current_gon.id != request.uuid
end
- end
+ def current_gon
+ Thread.current['gon']
+ end
+ end
end
end
ActionView::Base.send :include, Gon::Helpers
ActionController::Base.send :include, Gon::GonHelpers