Commit f2a648b71519d56afe5aa1d08455abbf2d0f3778
Committed by
Daniela Feitosa
1 parent
405f5528
Exists in
master
and in
22 other branches
Adding links on usermenu to manage enterprises
(ActionItem1925)
Showing
6 changed files
with
84 additions
and
2 deletions
Show diff stats
app/helpers/application_helper.rb
| ... | ... | @@ -1104,6 +1104,15 @@ module ApplicationHelper |
| 1104 | 1104 | result |
| 1105 | 1105 | end |
| 1106 | 1106 | |
| 1107 | + def manage_enterprises | |
| 1108 | + if user && !user.enterprises.empty? | |
| 1109 | + enterprises_link = user.enterprises.map do |enterprise| | |
| 1110 | + link_to(content_tag('strong', [_('<span>Manage</span> %s') % enterprise.short_name(25)]), "/myprofile/#{enterprise.identifier}", :class => "icon-menu-enterprise", :title => [_('Manage %s') % enterprise.short_name]) | |
| 1111 | + end | |
| 1112 | + render :partial => 'shared/manage_enterprises', :locals => {:enterprises_link => enterprises_link} | |
| 1113 | + end | |
| 1114 | + end | |
| 1115 | + | |
| 1107 | 1116 | def usermenu_logged_in |
| 1108 | 1117 | pending_tasks_count = '' |
| 1109 | 1118 | if user && user.all_pending_tasks.count > 0 |
| ... | ... | @@ -1113,6 +1122,7 @@ module ApplicationHelper |
| 1113 | 1122 | (_('Welcome, %s') % link_to('<i></i><strong>{login}</strong>', '/{login}', :id => "homepage-link", :title => _('Go to your homepage'))) + |
| 1114 | 1123 | render_environment_features(:usermenu) + |
| 1115 | 1124 | link_to('<i class="icon-menu-admin"></i><strong>' + _('Administration') + '</strong>', { :controller => 'admin_panel', :action => 'index' }, :id => "controlpanel", :title => _("Configure the environment"), :class => 'admin-link', :style => 'display: none') + |
| 1125 | + manage_enterprises.to_s + | |
| 1116 | 1126 | link_to('<i class="icon-menu-ctrl-panel"></i><strong>' + _('Control panel') + '</strong>', '/myprofile/{login}', :id => "controlpanel", :title => _("Configure your personal account and content")) + |
| 1117 | 1127 | pending_tasks_count + |
| 1118 | 1128 | link_to('<i class="icon-menu-logout"></i><strong>' + _('Logout') + '</strong>', { :controller => 'account', :action => 'logout'} , :id => "logout", :title => _("Leave the system")) | ... | ... |
| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | +<div id='manage-enterprises'> | |
| 2 | + <a href="#" id='manage-enterprises-link' class='simplemenu-trigger' title='<%= _('Manage enterprises') %>'><i class="icon-menu-enterprise"></i><strong><%= ui_icon('ui-icon-triangle-1-s') + _('My enterprises') %></strong></a> | |
| 3 | + <ul class='simplemenu-submenu'> | |
| 4 | + <% enterprises_link.each do |link| %> | |
| 5 | + <li class='simplemenu-item'><%= link %></li> | |
| 6 | + <% end %> | |
| 7 | + </ul> | |
| 8 | +</div> | ... | ... |
| ... | ... | @@ -0,0 +1,24 @@ |
| 1 | +Feature: manage enterprises | |
| 2 | + As a enterprise owner | |
| 3 | + I want to manage my enterprises | |
| 4 | + | |
| 5 | + Background: | |
| 6 | + Given the following users | |
| 7 | + | login | name | | |
| 8 | + | joaosilva | Joao Silva | | |
| 9 | + | mariasilva | Joao Silva | | |
| 10 | + And the following enterprise | |
| 11 | + | identifier | name | owner | | |
| 12 | + | tangerine-dream | Tangerine Dream | joaosilva | | |
| 13 | + | |
| 14 | + @selenium | |
| 15 | + Scenario: seeing my enterprises on menu | |
| 16 | + Given I am logged in as "joaosilva" | |
| 17 | + Then I should see "My enterprises" link | |
| 18 | + When I follow "My enterprises" and wait | |
| 19 | + Then I should see "Tangerine Dream" linking to "/myprofile/tangerine-dream" | |
| 20 | + | |
| 21 | + @selenium | |
| 22 | + Scenario: not show enterprises on menu to a user without enterprises | |
| 23 | + Given I am logged in as "mariasilva" | |
| 24 | + Then I should not see "My enterprises" link | ... | ... |
public/designs/themes/base/style.css
public/javascripts/application.js
| ... | ... | @@ -300,7 +300,7 @@ function hideAllSubmenus() { |
| 300 | 300 | |
| 301 | 301 | // Hide visible ballons when clicked outside them |
| 302 | 302 | jQuery(document).ready(function() { |
| 303 | - jQuery('body').click(function() { hideAllSubmenus(); }); | |
| 303 | + jQuery('body').live('click', function() { hideAllSubmenus(); }); | |
| 304 | 304 | jQuery('.menu-submenu-trigger').click(function(e) { e.stopPropagation(); }); |
| 305 | 305 | jQuery('.simplemenu-trigger').click(function(e) { e.stopPropagation(); }); |
| 306 | 306 | jQuery('#chat-online-users').click(function(e) { e.stopPropagation(); }); |
| ... | ... | @@ -649,6 +649,10 @@ jQuery(function($) { |
| 649 | 649 | document.location.href = this.href; |
| 650 | 650 | }) |
| 651 | 651 | } |
| 652 | + $('#manage-enterprises-link').live('click', function() { | |
| 653 | + toggleMenu(this); | |
| 654 | + return false; | |
| 655 | + }); | |
| 652 | 656 | }); |
| 653 | 657 | |
| 654 | 658 | function add_comment_reply_form(button, comment_id) { | ... | ... |
public/stylesheets/application.css
| ... | ... | @@ -966,6 +966,40 @@ code input { |
| 966 | 966 | overflow: hidden; |
| 967 | 967 | } |
| 968 | 968 | |
| 969 | +#manage-enterprises { | |
| 970 | + display: inline-block; | |
| 971 | + margin-right: 5px; | |
| 972 | + position: relative; | |
| 973 | +} | |
| 974 | +#manage-enterprises .ui-icon { | |
| 975 | + position: absolute; | |
| 976 | + top: 0; | |
| 977 | + right: -20px; | |
| 978 | +} | |
| 979 | +#manage-enterprises .simplemenu-submenu { | |
| 980 | + text-align: left; | |
| 981 | + left: -20px; | |
| 982 | + width: 200px; | |
| 983 | +} | |
| 984 | +#manage-enterprises .simplemenu-item { | |
| 985 | + padding: 5px 0; | |
| 986 | +} | |
| 987 | +#manage-enterprises .simplemenu-item a { | |
| 988 | + background-repeat: no-repeat; | |
| 989 | + padding-left: 20px; | |
| 990 | +} | |
| 991 | +#manage-enterprises .simplemenu-item a span { | |
| 992 | + display: none; | |
| 993 | +} | |
| 994 | +.msie8 #manage-enterprises-link { /* IE8 hack */ | |
| 995 | + border: 0px solid; | |
| 996 | +} | |
| 997 | +.msie8 #manage-enterprises .simplemenu-submenu { | |
| 998 | + top: 16px; | |
| 999 | +} | |
| 1000 | +.webkit #manage-enterprises .simplemenu-submenu { | |
| 1001 | + top: 20px; | |
| 1002 | +} | |
| 969 | 1003 | |
| 970 | 1004 | #article { |
| 971 | 1005 | position: relative; |
| ... | ... | @@ -5289,6 +5323,8 @@ h1#agenda-title { |
| 5289 | 5323 | top: 20px; |
| 5290 | 5324 | width: 120px; |
| 5291 | 5325 | margin: 0; |
| 5326 | + display: none; | |
| 5327 | + z-index: 100; | |
| 5292 | 5328 | } |
| 5293 | 5329 | .msie8 .simplemenu-submenu { |
| 5294 | 5330 | top: 8px; | ... | ... |