Sha256: 3e9ef43742fea18fd70c0e464f854385e9b7f9e517038453d7dd493c7455b6d6

Contents?: true

Size: 660 Bytes

Versions: 9

Compression:

Stored size: 660 Bytes

Contents

module Spree
  module Api
    module Responders
      module RablTemplate
        def to_format
          if template
            render template, :status => options[:status] || 200
          else
            super
          end

        rescue ActionView::MissingTemplate => e
          api_behavior(e)
        end

        def template
          options[:default_template]
        end

        def api_behavior(error)
          if controller.params[:action] == "destroy"
            # Render a blank template
            super
          else
            # Do nothing and fallback to the default template
          end
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
spree_api-2.4.10 lib/spree/api/responders/rabl_template.rb
spree_api-2.3.13 lib/spree/api/responders/rabl_template.rb
spree_api-2.2.14 lib/spree/api/responders/rabl_template.rb
spree_api-2.4.9 lib/spree/api/responders/rabl_template.rb
spree_api-2.3.12 lib/spree/api/responders/rabl_template.rb
spree_api-2.2.13 lib/spree/api/responders/rabl_template.rb
spree_api-2.4.8 lib/spree/api/responders/rabl_template.rb
spree_api-2.3.11 lib/spree/api/responders/rabl_template.rb
spree_api-2.2.12 lib/spree/api/responders/rabl_template.rb