diff --git a/lib/jpbuilder-handler.rb b/lib/jpbuilder-handler.rb index 11c2d69..9658ac2 100644 --- a/lib/jpbuilder-handler.rb +++ b/lib/jpbuilder-handler.rb @@ -2,16 +2,20 @@ class JPbuilderHandler cattr_accessor :default_format, :default_callback - self.default_format = Mime[:json] - self.default_callback = nil - def self.call(template) + def initialize + self.default_callback = nil + self.default_format = (Rails.version < '6.0.0') ? Mime[:json] : :json + end + + def self.call(template, source=nil) + source ||= template.source %{ if defined?(json) - #{template.source} + #{source} else result = JbuilderTemplate.encode(self) do |json| - #{template.source} + #{source} end callback = params[:callback] || JPbuilderHandler.default_callback if callback.present?