Sha256: ccc2abc0f194c007d3d415d69d1ebedd3f4f52a0070680d8e124e4570c829f82
Contents?: true
Size: 1.42 KB
Versions: 1
Compression:
Stored size: 1.42 KB
Contents
module Gon module Sinatra module Helpers def self.included base base.send(:include, InstanceMethods) end module InstanceMethods def include_gon(options = {}) if Gon::Sinatra.request_env && Gon::Sinatra.all_variables.present? data = Gon::Sinatra.all_variables namespace = options[:namespace] || 'gon' script = "<script>window." + namespace + " = {};" unless options[:camel_case] data.each do |key, val| script += namespace + "." + key.to_s + '=' + val.to_s + ";" end else data.each do |key, val| script += namespace + "." + key.to_s.camelize(:lower) + '=' + val.to_s + ";" end end script += "</script>" script else "" end end end end module GonHelpers def self.included base base.send(:include, InstanceMethods) end module InstanceMethods def gon if !Gon::Sinatra.request_env || Gon::Sinatra.request != request.object_id Gon::Sinatra.request = request.object_id Gon::Sinatra.request_env = request.env end Gon::Sinatra end end end end end Sinatra::Application.send :include, Gon::Sinatra::Helpers Sinatra::Base.send :include, Gon::Sinatra::GonHelpers
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
gon-sinatra-0.0.5 | lib/gon/sinatra/helpers.rb |