Skip to content

Commit

Permalink
Org switcher interstitial post-login.
Browse files Browse the repository at this point in the history
  • Loading branch information
knowncitizen committed Jun 29, 2012
1 parent c30e3f5 commit 9b9ee85
Show file tree
Hide file tree
Showing 14 changed files with 142 additions and 99 deletions.
2 changes: 1 addition & 1 deletion src/app/controllers/activation_keys_controller.rb
Expand Up @@ -27,7 +27,7 @@ class ActivationKeysController < ApplicationController
respond_to :html, :js

def section_id
'systems'
'content'
end

def rules
Expand Down
8 changes: 4 additions & 4 deletions src/app/stylesheets/_menu.scss
Expand Up @@ -2,7 +2,7 @@
@import "compass";
@import "converge-ui/vars";
@import "converge-ui/mixins";

$menu_width: 253px !default;
nav {
&.subnav { /* subnavigation */
display: block;
Expand Down Expand Up @@ -33,20 +33,20 @@ nav {
border-left: 1px solid $border_color;
border-right: 1px solid $border_color;
border-bottom: 1px solid $border_color;
width: 214px;
width: $menu_width;
}
li {
display: inline-block;
margin: 0;
padding: 0;
.third_level {
display: block;
width: 214px;
width: $menu_width;
height: auto;
clear: both;
border-bottom: 1px transparent;
a{
width: 180px;
width: $menu_width - 33;
&:hover {
background: lighten($kprimary_color, 45%);
color: lighten($kprimary_color, 10%);
Expand Down
2 changes: 1 addition & 1 deletion src/app/stylesheets/sections/dashboard.scss
Expand Up @@ -56,7 +56,7 @@
h4 {
display: inline;
margin-left: 10px;
margin-top: 11px;
margin-top: 8px;
}
h5 {
display: inline;
Expand Down
6 changes: 1 addition & 5 deletions src/app/stylesheets/sections/loginpage.scss
Expand Up @@ -25,11 +25,10 @@ $switcherformwidth: 300px;
}
}
//interstitial container
#org_switcher {
#interstitial {
left: 360px;
.card {
padding-top: 6em;
overflow: visible;
}
}
//org switcher modifications
Expand All @@ -40,9 +39,6 @@ $switcherformwidth: 300px;
position: relative;
left: 0;
}
#orgbox {
height: 115px;
}
#manage_orgs {
display: none;
}
Expand Down
29 changes: 15 additions & 14 deletions src/app/stylesheets/widgets/_org_switcher.scss
Expand Up @@ -80,18 +80,19 @@ $switcherformwidth: 165px !default;
padding: 0;
}
a {
width: 94%;
padding: 3%;
text-align: left;
text-decoration: none;
@extend .one-line-ellipsis;
&:hover {
color: $font_color;
background-color: $listhover_color;
}
&.selected {
background-color: $lightkprimary_color;
}
width: 94%;
padding: 3%;
text-align: left;
text-decoration: none;
outline: 0 none;
@extend .one-line-ellipsis;
&:hover {
color: $font_color;
background-color: $listhover_color;
}
&.selected {
background-color: $lightkprimary_color;
}
&:last-child {
white-space: normal;
}
Expand Down Expand Up @@ -129,8 +130,8 @@ $switcherformwidth: 165px !default;
#orgbox {
background: $white_color;
@include border-radius(3px);
padding: 0 0 10px 0;
margin: 0 0 5px 0;
padding: 0;
margin: 32px 0 5px 0;
height: 100px;
overflow-y: auto;
overflow-x: hidden;
Expand Down
2 changes: 0 additions & 2 deletions src/app/views/common/_footer.haml
@@ -1,5 +1,3 @@
-#temporary
= link_to _("Logout"), logout_path, :method=>"POST", :class => "header-widget"
%p.copyright
#{_("Copyright &copy; ") + (Time.now).year.to_s + _(" Red Hat, Inc.") }
%ul
Expand Down
10 changes: 3 additions & 7 deletions src/app/views/common/_header.haml
Expand Up @@ -13,15 +13,11 @@

= content_for(:widgets) do
= hidden_field_tag 'get_notices_url', nil, 'data-url' => notices_get_new_path
= link_to _("Logout"), logout_path, :method=>"POST", :class => "header-widget"
- if current_user
= link_to current_user.user_notices.length, notices_path, :id => "unread_notices", :title => _("System Notifications"), :class => "header-widget"
= render_admin_menu
-#- if current_organization
= link_to current_user.username, "#{users_path(:id => current_user, :only => true)}#panel=user_#{current_user.id}", :class => "header-widget"
- if current_user
= link_to current_user.user_notices.length, notices_path, :id => "unread_notices", :title => _("System Notifications"), :class => "header-widget"
= link_to _("Logout"), logout_path, :method=>"POST", :class => "header-widget"

= content_for(:extra_header) do
- if current_user
- if current_organization
= render :partial => '/layouts/org'
= render :partial => '/layouts/org'
6 changes: 5 additions & 1 deletion src/app/views/common/user_session.haml
Expand Up @@ -28,5 +28,9 @@
= render :partial => 'common/ajax_notices'
= render :partial => 'common/notification'

= content_for(:interstitial) do
%h2 #{_("Choose an Organization")}
= render :partial => "/layouts/org"

= content_for(:footer) do
= render :partial => "common/footer"
= render :partial => "common/footer"
2 changes: 1 addition & 1 deletion src/app/views/user_sessions/_interstitial.js.haml
@@ -1,2 +1,2 @@
-#!= "CUI.Login.Actions.org_switcher_animation(\"#{escape_javascript(render :partial => '/layouts/org')}\");"
!= "CUI.Login.Actions.org_switcher_animation();"
!= "CUI.Login.Actions.interstitial_switcher_animation();"
2 changes: 1 addition & 1 deletion src/app/views/user_sessions/new.html.haml
Expand Up @@ -30,4 +30,4 @@
= render :partial => 'common/notification'

= content_for(:footer) do
= render :partial => "common/footer"
= render :partial => "common/footer"
1 change: 1 addition & 0 deletions src/config/assets.yml
Expand Up @@ -205,6 +205,7 @@ stylesheets:
- public/stylesheets/compiled/sections/dashboard.css
loginpage:
- public/stylesheets/jquery.jnotify.css
- public/stylesheets/jquery.jscrollpane.css
- public/stylesheets/compiled/sections/loginpage.css
generic:
- public/stylesheets/compiled/sections/generic.css
Expand Down
9 changes: 9 additions & 0 deletions src/lib/navigation/administration.rb
Expand Up @@ -69,5 +69,14 @@ def menu_roles
}
end

def menu_orgs
{:key => :orgs,
:name => _("Manage Organizations"),
:url => organizations_path,
:if =>lambda {Organization.any_readable?},
:options => {:class=>'operations section_level', "data-menu"=>"operations"}
}
end

end
end
121 changes: 99 additions & 22 deletions src/lib/navigation/content_management.rb
Expand Up @@ -14,6 +14,7 @@ module ContentMenu
def self.included(base)
base.class_eval do
helper_method :custom_provider_navigation
helper_method :activation_keys_navigation
helper_method :promotion_packages_navigation
helper_method :promotion_errata_navigation
helper_method :promotion_distribution_navigation
Expand All @@ -40,43 +41,81 @@ def custom_provider_navigation
]
end

def menu_subscriptions
{:key => :subscriptions,
:name =>_("Subscriptions"),
:url => subscriptions_path,
:items => lambda{[menu_activation_keys, menu_import_history]},
:if => lambda{current_organization},
:options => {:class=>'content second_level menu_parent', "data-menu"=>"content", "data-dropdown"=>"subscriptions"}
}
end

def menu_subscriptions_list
{:key => :subscriptions,
:name =>_("Red Hat Subscriptions"),
:url => subscriptions_path,
:if => lambda{current_organization},
:options => {:class=>'content third_level', "data-menu"=>"subscriptions", "data-dropdown"=>"subscriptions"}
}
end

def menu_activation_keys
{
:key => :activation_keys,
:name => _("Activation Keys"),
:url => activation_keys_path,
:if => lambda {current_organization && ActivationKey.readable?(current_organization())},
:options => {:class=>'content third_level', "data-menu"=>"subscriptions", "data-dropdown"=>"subscriptions"}
}
end

def menu_import_history
{
:key => :import_history,
:name => _("Import History"),
:url => redhat_provider_providers_path,
:if => lambda{current_organization && current_organization.readable?},
:options => {:class=>'content third_level', "data-menu"=>"subscriptions", "data-dropdown"=>"subscriptions"}
}
end

def menu_contents
{:key => :content,
:name => _("Content"),
:url => :sub_level,
:options => {:class=>'content top_level', "data-menu"=>"content"},
:if => lambda{current_organization},
:items=> [ menu_providers, menu_sync_management, menu_system_templates, menu_promotions, menu_changeset]
:items=> [ menu_subscriptions, menu_providers, menu_sync_management, menu_system_templates, menu_promotions]
}
end

def menu_providers

{:key => :providers,
:name =>_("Content Providers"),
:name =>_("Repositories"),
:url => :sub_level,
:if => :sub_level,
:options => {:class=>'content second_level menu_parent', "data-menu"=>"content", "data-dropdown"=>"providers"},
:options => {:class=>'content second_level menu_parent', "data-menu"=>"content", "data-dropdown"=>"repositories"},
:items => AppConfig.katello? ? [menu_custom_providers, menu_redhat_providers, menu_filters, menu_gpg] : [menu_custom_providers, menu_redhat_providers]
}

end

def menu_redhat_providers
{:key => :redhat_providers,
:name =>_("Red Hat Content Provider"),
:name =>_("Red Hat Repositories"),
:url => redhat_provider_providers_path,
:if => lambda{current_organization && current_organization.readable?},
:options => {:class=>"third_level", "data-dropdown"=>"providers"}
:options => {:class=>"third_level", "data-dropdown"=>"repositories"}
}
end

def menu_custom_providers
{:key => :custom_providers,
:name =>_("Custom Content Providers"),
:name =>_("Custom Content Repositories"),
:url => providers_path,
:if => lambda{AppConfig.katello? && current_organization && Provider.any_readable?(current_organization())},
:options => {:class=>"third_level", "data-dropdown"=>"providers"}
:options => {:class=>"third_level", "data-dropdown"=>"repositories"}
}
end

Expand All @@ -87,7 +126,6 @@ def menu_sync_management
:if => lambda{AppConfig.katello? && (current_organization.syncable? || Provider.any_readable?(current_organization))},
:options => {:class=>'content second_level menu_parent', "data-menu"=>"content", "data-dropdown"=>"sync"}
}

end

def menu_sync_status
Expand Down Expand Up @@ -126,29 +164,30 @@ def menu_system_templates
end

def menu_promotions
{:key => :changeset_promotions,
:name => _("Changeset Promotions"),
:url => promotions_path,
:items => lambda{[menu_promotions_list, menu_changeset]},
:if => lambda {AppConfig.katello? && KTEnvironment.any_viewable_for_promotions?(current_organization)},
:options => {:highlights_on =>/\/promotions.*/ , :class=>'menu_parent content second_level', "data-menu"=>"content", "data-dropdown"=>"promotions"}
}
end

def menu_promotions_list
{:key => :promotions,
:name => _("Promotions"),
:url => promotions_path,
:if => lambda {AppConfig.katello? && KTEnvironment.any_viewable_for_promotions?(current_organization)},
:options => {:highlights_on =>/\/promotions.*/ , :class=>'content second_level', "data-menu"=>"content"}
:options => {:highlights_on =>/\/promotions.*/ , :class=>'content third_level', "data-dropdown"=>"promotions"}
}
end

def menu_changeset
{:key => :changeset,
:name => _("Promotion Changeset History"),
:name => _("Changeset Promotion History"),
:url => changesets_path,
:if => lambda {AppConfig.katello? && KTEnvironment.any_viewable_for_promotions?(current_organization)},
:options => {:class=>'content second_level', "data-menu"=>"content"}
}
end

def menu_filters
{:key => :filters,
:name => _("Package Filters"),
:url => filters_path,
:if => lambda {Filter.any_readable?(current_organization)},
:options => {:class=>"third_level", "data-dropdown"=>"providers"}
:options => {:class=>'content third_level', "data-dropdown"=>"promotions"}
}
end

Expand All @@ -157,7 +196,16 @@ def menu_gpg
:name => _("GPG Keys"),
:url => gpg_keys_path,
:if => lambda {GpgKey.any_readable?(current_organization)},
:options => {:class=>"third_level", "data-dropdown"=>"providers"}
:options => {:class=>"third_level", "data-dropdown"=>"repositories"}
}
end

def menu_filters
{:key => :filters,
:name => _("Package Filters"),
:url => filters_path,
:if => lambda {Filter.any_readable?(current_organization)},
:options => {:class=>"third_level", "data-dropdown"=>"repositories"}
}
end

Expand Down Expand Up @@ -252,5 +300,34 @@ def gpg_keys_navigation
]
end

def activation_keys_navigation
[
{ :key => :applied_subscriptions,
:name =>_("Applied Subscriptions"),
:url => lambda{applied_subscriptions_activation_key_path(@activation_key.id)},
:if =>lambda{@activation_key},
:options => {:class=>"panel_link"}
},
{ :key => :available_subscriptions,
:name =>_("Available Subscriptions"),
:url => lambda{available_subscriptions_activation_key_path(@activation_key.id)},
:if => lambda{@activation_key},
:options => {:class=>"panel_link"}
},
{ :key => :system_groups,
:name =>_("System Groups"),
:url => lambda{system_groups_activation_key_path(@activation_key.id)},
:if => lambda{@activation_key},
:options => {:class=>"panel_link"}
},
{ :key => :details,
:name =>_("Details"),
:url => lambda{edit_activation_key_path(@activation_key.id)},
:if => lambda{@activation_key},
:options => {:class=>"panel_link"}
}
]
end

end
end

0 comments on commit 9b9ee85

Please sign in to comment.