Skip to content

Commit

Permalink
Add I18n settings to toolbar
Browse files Browse the repository at this point in the history
  • Loading branch information
awead committed Jun 9, 2016
1 parent 1f7a17f commit e7ca5e0
Show file tree
Hide file tree
Showing 4 changed files with 54 additions and 29 deletions.
42 changes: 13 additions & 29 deletions app/views/_toolbar.html.erb
Original file line number Diff line number Diff line change
@@ -1,67 +1,51 @@
<% if user_signed_in? %>
<ul class="nav navbar-nav">
<% if can? :manage, :all %>
<li class="dropdown">
<%= link_to sufia.admin_stats_path, role: 'button', data: { toggle: 'dropdown' }, aria: { haspopup: true, expanded: false } do %>
<span class="fa fa-gear"></span> Admin <span class="caret"></span>
<% end %>
<ul class="dropdown-menu">
<% if respond_to? :admin_stats_path %>
<li><%= link_to 'Repository Statistics', sufia.admin_stats_path %></li>
<% end %>
<% if respond_to? :admin_queues_path %>
<li><%= link_to 'Message Queues', sufia.admin_queues_path %></li>
<% end %>
</ul>
</li>
<% end %>

<%= render '/admin/menu' if can? :manage, :all %>
<li class="dropdown">
<%= link_to sufia.dashboard_index_path, role: 'button', data: { toggle: 'dropdown' }, aria: { haspopup: true, expanded: false } do %>
<span class="fa fa-tachometer"></span> Dashboard <span class="caret"></span>
<span class="fa fa-tachometer"></span> <%= t("sufia.toolbar.dashboard.menu") %> <span class="caret"></span>
<% end %>
<ul class="dropdown-menu">
<li><%= link_to 'My Dashboard', sufia.dashboard_index_path %></li>
<li><%= link_to t("sufia.toolbar.dashboard.my"), sufia.dashboard_index_path %></li>
<li class="divider"></li>
<li><%= link_to 'Transfers', sufia.transfers_path %></li>
<li><%= link_to t("sufia.toolbar.dashboard.transfers"), sufia.transfers_path %></li>
<li class="divider"></li>
<li><%= link_to 'Highlights', sufia.dashboard_highlights_path %></li>
<li><%= link_to 'Shares', sufia.dashboard_shares_path %></li>
<li><%= link_to t("sufia.toolbar.dashboard.highlights"), sufia.dashboard_highlights_path %></li>
<li><%= link_to t("sufia.toolbar.dashboard.shares"), sufia.dashboard_shares_path %></li>
</ul>
</li>

<% if can_ever_create_works? %>
<li class="dropdown">
<%= link_to sufia.dashboard_works_path, role: 'button', data: { toggle: 'dropdown' }, aria: { haspopup: true, expanded: false } do %>
<span class="fa fa-cube"></span> Works <span class="caret"></span>
<span class="fa fa-cube"></span> <%= t("sufia.toolbar.works.menu") %> <span class="caret"></span>
<% end %>
<ul class="dropdown-menu">
<li><%= link_to 'My Works', sufia.dashboard_works_path %></li>
<li><%= link_to t("sufia.toolbar.works.my"), sufia.dashboard_works_path %></li>

<% classification = CurationConcerns::QuickClassificationQuery.new(current_user) %>
<% classification.each do |concern| %>
<li><%= link_to(
"New #{concern.human_readable_type}",
"#{t("sufia.toolbar.works.new")} #{concern.human_readable_type}",
new_polymorphic_path([main_app, concern]),
class: "item-option contextual-quick-classify #{dom_class(concern, 'new').gsub('_', '-')}",
role: 'menuitem'
) %>
</li>
<% end %>
<li><%= link_to 'Batch Create', sufia.new_batch_upload_path %></li>
<li><%= link_to t("sufia.toolbar.works.batch"), sufia.new_batch_upload_path %></li>
</ul>
</li>
<% end %>
<% if can?(:create, Collection) %>
<li class="dropdown">
<%= link_to sufia.dashboard_collections_path, role: 'button', data: { toggle: 'dropdown' }, aria: { haspopup: true, expanded: false } do %>
<span class="fa fa-cubes"></span> Collections <span class="caret"></span>
<span class="fa fa-cubes"></span> <%= t("sufia.toolbar.collections.menu") %> <span class="caret"></span>
<% end %>
<ul class="dropdown-menu">
<li><%= link_to 'My Collections', sufia.dashboard_collections_path %></li>
<li><%= link_to 'New Collection', main_app.new_collection_path %></li>
<li><%= link_to t("sufia.toolbar.collections.my"), sufia.dashboard_collections_path %></li>
<li><%= link_to t("sufia.toolbar.collections.new"), main_app.new_collection_path %></li>
</ul>
</li>
<% end %>
Expand Down
10 changes: 10 additions & 0 deletions app/views/admin/_menu.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<li class="dropdown">
<%= link_to sufia.admin_stats_path, role: 'button', data: { toggle: 'dropdown' }, aria: { haspopup: true, expanded: false } do %>
<span class="fa fa-gear"></span> <%= t("sufia.toolbar.admin.menu") %> <span class="caret"></span>
<% end %>
<ul class="dropdown-menu">
<% if respond_to? :admin_stats_path %>
<li><%= link_to t("sufia.toolbar.admin.statistics"), sufia.admin_stats_path %></li>
<% end %>
</ul>
</li>
20 changes: 20 additions & 0 deletions config/locales/sufia.en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,26 @@ en:
details: 'Details'
tab_label: 'Recently Uploaded'
no_public: 'No public work has been contributed.'
toolbar:
admin:
menu: "Admin"
statistics: "Repository Statistics"
queues: "Message Queues"
dashboard:
menu: "Dashboard"
my: "My Dashboard"
highlights: "Highlights"
transfers: "Transfers"
shares: "Shares"
works:
menu: "Works"
new: "New"
my: "My Works"
batch: "Batch Create"
collections:
menu: "Collections"
my: "My Collections"
new: "New Collection"
dashboard:
title: "My Dashboard"
view_collections: "View Collections"
Expand Down
11 changes: 11 additions & 0 deletions spec/views/_toolbar.html.erb_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,17 @@
end
end

context 'with an admin user' do
before do
allow(view).to receive(:can?).with(:manage, :all).and_return(true)
end

it 'shows the admin menu' do
render
expect(rendered).to have_link 'Admin', sufia.admin_stats_path
end
end

it 'has dashboard links' do
render
expect(rendered).to have_link 'My Dashboard', sufia.dashboard_index_path
Expand Down

0 comments on commit e7ca5e0

Please sign in to comment.