Sha256: 1d096124d61c780580bf663d36b4bc271628d1a91093b295eb7c7eb6879af839

Contents?: true

Size: 716 Bytes

Versions: 1

Compression:

Stored size: 716 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
          api_behavior
        end

        def template
          request.headers['X-Spree-Template'] || controller.params[:template] || options[:default_template]
        end

        def api_behavior
          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

1 entries across 1 versions & 1 rubygems

Version Path
solidus_api-1.0.0.pre lib/spree/api/responders/rabl_template.rb