From: Tomas Sedovic <tsedo...@redhat.com> This adds the new menu structure we plan to use. However, all the landing pages for the menu items are not created yet. All the new links point to the root URL.
As such, the old navigation remains as well (so that the site is usable). --- src/app/views/layouts/_header.haml | 1 - src/app/views/layouts/aggregator.haml | 3 + src/config/navigation.rb | 69 +++++++++++++++++++++++++++++---- 3 files changed, 64 insertions(+), 9 deletions(-) diff --git a/src/app/views/layouts/_header.haml b/src/app/views/layouts/_header.haml index 06a63ef..ea54a9d 100644 --- a/src/app/views/layouts/_header.haml +++ b/src/app/views/layouts/_header.haml @@ -1,6 +1,5 @@ .header_logo %span Deltacloud Aggregator - = render_navigation .header_info #hi-username diff --git a/src/app/views/layouts/aggregator.haml b/src/app/views/layouts/aggregator.haml index 8173c33..a9df32e 100644 --- a/src/app/views/layouts/aggregator.haml +++ b/src/app/views/layouts/aggregator.haml @@ -24,6 +24,9 @@ #header = render :partial => '/layouts/header' #content + / NOTE: swap the following two lines if you want only the old navigation + = render_navigation(:expand_all => true) + /= render_navigation(:level => 2, :expand_all => true) - if ['instance', 'pool'].include? controller.controller_name #side = render :partial => '/layouts/main_nav' unless @current_user.nil? diff --git a/src/config/navigation.rb b/src/config/navigation.rb index f3b34a0..03adba2 100644 --- a/src/config/navigation.rb +++ b/src/config/navigation.rb @@ -1,11 +1,64 @@ SimpleNavigation::Configuration.run do |navigation| - navigation.items do |primary| - primary.dom_class = 'nav' - primary.item :dashboard, t(:dashboard), :controller => "dashboard" - primary.item :instances, t(:instances), :controller => "instance" - primary.item :templates, t(:templates), :controller => "image", :action => "show" - primary.item :users, t(:users), {:controller => "permissions", :action => "list"} , :if => lambda { - @current_user && has_view_perms?(BasePermissionObject.general_permission_scope) } - primary.item :settings, t(:settings), :controller => "settings" + navigation.items do |first_level| + first_level.item :old_nav, "Old Navigation", "#" do |old_nav| + old_nav.dom_class = 'nav' + old_nav.item :dashboard, t(:dashboard), :controller => "dashboard" + old_nav.item :instances, t(:instances), :controller => "instance" + old_nav.item :templates, t(:templates), :controller => "image", :action => "show" + old_nav.item :users, t(:users), {:controller => "permissions", :action => "list"} , :if => lambda { + @current_user && has_view_perms?(BasePermissionObject.general_permission_scope) } + old_nav.item :settings, t(:settings), :controller => "settings" + end + + first_level.item :operate, t(:operate), '/' do |second_level| + second_level.item :monitor, t(:monitor), '/' + second_level.item :inventory, t(:inventory), '/' + end + first_level.item :administer, t(:administer), '/' do |second_level| + second_level.item :system_settings, t(:system_settings), '/' do |third_level| + third_level.item :manage_providers, t(:manage_providers), '/' do |fourth_level| + fourth_level.item :provider_summary, t(:provider_summary), '/' + fourth_level.item :password_provider_accounts, t(:password_provider_accounts), '/' + fourth_level.item :certificate_provider_accounts, t(:certificate_provider_accounts), '/' + fourth_level.item :scheduling_policies, t(:scheduling_policies), '/' + fourth_level.item :map_services, t(:map_services), '/' + fourth_level.item :map_profiles, t(:map_profiles), '/' + fourth_level.item :map_locales, t(:map_locales), '/' + end + third_level.item :define_services, t(:define_services), '/' + third_level.item :define_profiles, t(:define_profiles), '/' + third_level.item :define_locales, t(:define_locales), '/' + third_level.item :self_service_settings, t(:self_service_settings), '/' + third_level.item :manage_users, t(:manage_users), {:controller => "permissions", :action => "list"} , :if => lambda { @current_user && has_view_perms?(BasePermissionObject.general_permission_scope) } do |fourth_level| + fourth_level.item :new_user, t(:new_user), '/' + fourth_level.item :edit_user, t(:edit_user), '/' + end + end + second_level.item :pools_and_zones, t(:pools_and_zones), '/' do |third_level| + third_level.item :new_pool, t(:new_pool), '/', :if => lambda { true } + third_level.item :edit_pool, t(:edit_pool), '/', :if => lambda { true } + third_level.item :new_zone, t(:new_zone), '/', :if => lambda { true } + third_level.item :edit_zone, t(:edit_zone), '/', :if => lambda { true } + end + second_level.item :audit, t(:audit), '/' + second_level.item :assistance_requests, t(:assistance_requests), '/' + end + first_level.item :build, t(:build), '/' do |second_level| + second_level.item :template_management, t(:template_management), '/' do |third_level| + third_level.item :basic_template, t(:basic_template), '/' do |fourth_level| + fourth_level.item :browse_packages, t(:browse_packages), '/' + end + third_level.item :import_template, t(:import_template), '/' + end + second_level.item :grind_management, t(:grind_management), '/' + second_level.item :image_management, t(:image_management), '/' + end + first_level.item :run, t(:run), '/' do |second_level| + second_level.item :manage_instances, t(:manage_instances), '/' do |third_level| + third_level.item :pool_details, t(:pool_details), '/' + third_level.item :instance_details, t(:instance_details), '/' + third_level.item :launch_instance, t(:launch_instance), '/' + end + end end end -- 1.7.2.2 _______________________________________________ deltacloud-devel mailing list deltacloud-devel@lists.fedorahosted.org https://fedorahosted.org/mailman/listinfo/deltacloud-devel