Sha256: f18769cfeafc7d38c9fa63a715a41ab0f7f7a2069a3e2bcc4b546d7e5f7b5508

Contents?: true

Size: 1.71 KB

Versions: 7

Compression:

Stored size: 1.71 KB

Contents

class Admin::MenusController < Admin::ApplicationController
	belongs_to_spud_app :menus
	add_breadcrumb "Menus", :admin_menus_path
	before_filter :load_menu,:only => [:edit,:update,:show,:destroy]

	def index
		@menus = SpudMenu.site(session[:admin_site]).order(:name).paginate :page => params[:page]
		respond_with @menus
	end


	def new
		add_breadcrumb "New", :new_admin_menu_path
		@menu = SpudMenu.new
		respond_with @menu
	end

	def create
		add_breadcrumb "New", :new_admin_menu_path
		@menu = SpudMenu.new(menu_params)
		@menu.site_id = session[:admin_site]
		flash[:notice] = "New menu created" if @menu.save
		respond_with @menu,:location => @menu.id != nil ? admin_menu_menu_items_url(:menu_id => @menu.id) : admin_menus_url
	end

	def edit
		add_breadcrumb "Edit #{@menu.name}", :edit_admin_menu_path
		respond_with @menu
	end

	def update
		add_breadcrumb "Edit #{@menu.name}", :edit_admin_menu_path

		flash[:notice] = "Menu saved successfully" if @menu.update_attributes(menu_params)
		respond_with @menu,:location => admin_menu_menu_items_url(:menu_id => @menu.id)
	end

	def destroy
		flash[:notice] = "Menu removed!" if @menu.destroy
		respond_with @menu,:location => admin_menus_url
	end

private

	def load_menu
		@menu = SpudMenu.where(:id => params[:id]).first
		if @menu.blank?
			flash[:error] = "Menu not found!"
			redirect_to admin_menus_url() and return false
		elsif Spud::Core.multisite_mode_enabled && @menu.site_id != session[:admin_site]
			flash[:warning] = "Site Context Changed. The menu you were viewing is not associated with the current site. Redirected back to menu selections."
			redirect_to admin_menus_url() and return false
		end
	end

	def menu_params
		params.require(:spud_menu).permit(:name)
	end

end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
tb_cms-1.2.0.beta1 app/controllers/admin/menus_controller.rb
tb_cms-1.1.5 app/controllers/admin/menus_controller.rb
tb_cms-1.1.4 app/controllers/admin/menus_controller.rb
tb_cms-1.1.3 app/controllers/admin/menus_controller.rb
tb_cms-1.1.2 app/controllers/admin/menus_controller.rb
tb_cms-1.1.1 app/controllers/admin/menus_controller.rb
tb_cms-1.1.0 app/controllers/admin/menus_controller.rb