Sha256: 9a46fb9bf83273936d58a49dd731b5efffdd4572f7fc6a6224777fd843668213

Contents?: true

Size: 1.91 KB

Versions: 6

Compression:

Stored size: 1.91 KB

Contents

module Alchemy
  module Admin
    class ContentsController < Alchemy::Admin::BaseController

      helper "alchemy/admin/essences"

      def new
        @element = Element.find(params[:element_id])
        @contents = @element.available_contents
        @content = @element.contents.build
        render :layout => false
      end

      def create
        @element = Element.find(params[:content][:element_id])
        @content = Content.create_from_scratch(@element, params[:content])
        @options = params[:options] || {}
        @html_options = params[:html_options] || {}
        if @options.is_a?(String)
          @options = @options.present? ? JSON.parse(@options) : {}
        end
        if @content.essence_type == "Alchemy::EssencePicture"
          @content_dom_id = "#add_picture_#{@element.id}"
          @content.essence.picture_id = params[:picture_id]
          @content.essence.save
          @contents_of_this_type = @element.contents.gallery_pictures
          @dragable = @contents_of_this_type.length > 1
          @options = @options.merge(:dragable => @dragable)
        else
          @content_dom_id = "#add_content_for_element_#{@element.id}"
        end
        @locals = {
          :content => @content,
          :options => @options.symbolize_keys,
          :html_options => @html_options.symbolize_keys
        }
      end

      def update
        content = Content.find(params[:id])
        content.essence.update_attributes(params[:content])
      end

      def order
        params[:content_ids].each do |id|
          content = Content.find(id)
          content.move_to_bottom
        end
        @notice = _t("Successfully saved content position")
      end

      def destroy
        @content = Content.find(params[:id])
        @content_dup = @content.clone
        @notice = _t("Successfully deleted content", :content => @content.name_for_label)
        @content.destroy
      end

    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
alchemy_cms-2.5.3.1 app/controllers/alchemy/admin/contents_controller.rb
alchemy_cms-2.5.3 app/controllers/alchemy/admin/contents_controller.rb
alchemy_cms-2.5.2.2 app/controllers/alchemy/admin/contents_controller.rb
alchemy_cms-2.5.2.1 app/controllers/alchemy/admin/contents_controller.rb
alchemy_cms-2.5.2 app/controllers/alchemy/admin/contents_controller.rb
alchemy_cms-2.5.1 app/controllers/alchemy/admin/contents_controller.rb