From 094cedfc4abd5bbfac225f34aaca63868a0eaa92 Mon Sep 17 00:00:00 2001 From: Nicolas Bally Date: Thu, 18 Jul 2013 22:40:36 +0200 Subject: [PATCH] visible menus --- app/controllers/admin/menu_items_controller.rb | 4 ++-- app/views/admin/menu_items/_form.html.haml | 17 +++++++++-------- app/views/public/menu_items/show.html.haml | 6 +++--- .../20130718203442_add_visible_to_menu_items.rb | 14 ++++++++++++++ 4 files changed, 28 insertions(+), 13 deletions(-) create mode 100644 db/migrate/20130718203442_add_visible_to_menu_items.rb diff --git a/app/controllers/admin/menu_items_controller.rb b/app/controllers/admin/menu_items_controller.rb index 7aefdb5..738c398 100644 --- a/app/controllers/admin/menu_items_controller.rb +++ b/app/controllers/admin/menu_items_controller.rb @@ -80,7 +80,7 @@ class Admin::MenuItemsController < ApplicationController - @menu_item = MenuItem.new(:menu_id => params[:menu_id],:parent_id => params[:parent_id]) + @menu_item = MenuItem.new(:menu_id => params[:menu_id],:parent_id => params[:parent_id], :visible => true) params[:menu_item_content_type] = "Page" if !params[:menu_item_content_type] @@ -98,7 +98,7 @@ class Admin::MenuItemsController < ApplicationController content_type = params[:menu_item][:menu_content_type] - @menu_item= MenuItem.new(params.require(:menu_item).permit(:parent_id, :menu_id, :enabled, :slug, :name, :menu_content_type)) + @menu_item= MenuItem.new(params.require(:menu_item).permit(:parent_id, :menu_id, :enabled, :visible, :slug, :name, :menu_content_type)) content = content_type.constantize.new(params_content) @menu_item.menu_content = content diff --git a/app/views/admin/menu_items/_form.html.haml b/app/views/admin/menu_items/_form.html.haml index b879271..df2bad7 100644 --- a/app/views/admin/menu_items/_form.html.haml +++ b/app/views/admin/menu_items/_form.html.haml @@ -1,10 +1,11 @@ = form.inputs do - =form.input :enabled, :label => "PubliƩ ?" - = form.input :name, :label => "Nom :" - = form.input :slug, :label => "slug :"# if current_admin.super_admin? || !@menu_item.super_admin - = #form.input :super_admin,:as => :boolean , :label => "Super Admin"# if current_admin.super_admin? - - = form.input :menu_id,:as => :hidden - = form.input :parent_id,:as => :hidden - + = form.input :enabled, :label => "PubliƩ ?" + = form.input :enabled, :label => "Visible ?" + = form.input :name, :label => "Nom :" + = form.input :slug, :label => "slug :"# if current_admin.super_admin? || !@menu_item.super_admin + = #form.input :super_admin,:as => :boolean , :label => "Super Admin"# if current_admin.super_admin? + + = form.input :menu_id,:as => :hidden + = form.input :parent_id,:as => :hidden + diff --git a/app/views/public/menu_items/show.html.haml b/app/views/public/menu_items/show.html.haml index 7f25879..2449dc3 100644 --- a/app/views/public/menu_items/show.html.haml +++ b/app/views/public/menu_items/show.html.haml @@ -12,13 +12,13 @@ .menu %h3=menu_item_link(first_level_menu) %ul - -first_level_menu.children.where(:enabled => true).order(:position).each do |menu_item| + -first_level_menu.children.where(:enabled => true, :visible => true).order(:position).each do |menu_item| %li =menu_item_link(menu_item) - -if menu_item.children.where(:enabled => true).size > 0 + -if menu_item.children.where(:enabled => true, :visible => true).size > 0 %ul - -menu_item.children.where(:enabled => true).order(:position).each do |menu_item| + -menu_item.children.where(:enabled => true, :visible => true).order(:position).each do |menu_item| %li=menu_item_link(menu_item) diff --git a/db/migrate/20130718203442_add_visible_to_menu_items.rb b/db/migrate/20130718203442_add_visible_to_menu_items.rb new file mode 100644 index 0000000..5879180 --- /dev/null +++ b/db/migrate/20130718203442_add_visible_to_menu_items.rb @@ -0,0 +1,14 @@ +class AddVisibleToMenuItems < ActiveRecord::Migration + def self.up + add_column :menu_items, :visible, :boolean + + MenuItem.all.each do |m| + m.visible = true + m.save + end + end + + def self.down + remove_column :menu_items, :visible + end +end