Sha256: ee6b0a047825910f53e695551f96cffeb659415cd1621d2dd04adea3be695c81

Contents?: true

Size: 994 Bytes

Versions: 6

Compression:

Stored size: 994 Bytes

Contents

module Alchemy
  class Api::ContentsController < Api::BaseController

    # Returns all contents as json object
    #
    # You can either load all or only these for :element_id param
    #
    def index
      @contents = Content.accessible_by(current_ability, :index)
      if params[:element_id].present?
        @contents = @contents.where(element_id: params[:element_id])
      end
      respond_with @contents
    end

    # Returns a json object for content
    #
    # You can either load it from :id param
    # or even more useful via passing the element id and the name of the content
    #
    #   $ bin/rake routes
    #
    # for more infos on how the url looks like.
    #
    def show
      if params[:id]
        @content = Content.find(params[:id])
      elsif params[:element_id] && params[:name]
        @content = Content.find_by!(element_id: params[:element_id], name: params[:name])
      end
      authorize! :show, @content
      respond_with @content
    end
  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
alchemy_cms-3.2.1 app/controllers/alchemy/api/contents_controller.rb
lc_alchemy_cms-3.2.1 app/controllers/alchemy/api/contents_controller.rb
lc_alchemy_cms-3.2.0 app/controllers/alchemy/api/contents_controller.rb
alchemy_cms-3.2.0 app/controllers/alchemy/api/contents_controller.rb
alchemy_cms-3.2.0.rc1 app/controllers/alchemy/api/contents_controller.rb
alchemy_cms-3.2.0.beta app/controllers/alchemy/api/contents_controller.rb