scinote-web/app/views/shared/_navigation.html.erb

162 lines
6.3 KiB
Text

<nav class="navbar navbar-default navbar-fixed-top" id="main-nav">
<div class="container-fluid">
<!-- header -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#main-menu" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<%= link_to(root_path, class: 'navbar-brand', title: t('nav.label.scinote')) do %>
<%= image_tag('/images/scinote_icon.jpg', id: 'logo') %>
<% end %>
</div>
<% if user_signed_in? %>
<div class="collapse navbar-collapse" id="main-menu">
<ul class="nav navbar-nav navbar-left" id="nav-team-switch">
<!-- Global team switch -->
<% if current_user.teams.length > 0 %>
<li id="team-switch">
<div class="btn-group">
<button type="button" class="btn btn-default"><%= truncate_team_name(current_team.name) %></button>
<button type="button"
class="btn btn-default dropdown-toggle"
title="<%= t('nav.label.teams') %>"
data-toggle="dropdown"
aria-haspopup="true"
aria-expanded="false">
<span class="caret"></span>
<span class="sr-only">Toggle Dropdown</span>
</button>
<% if current_user.teams.length > 1 || can_create_teams? %>
<ul class="dropdown-menu">
<%= form_for(current_user,
url: user_current_team_path,
method: :post) do |f| %>
<%= hidden_field(:user, :current_team_id) %>
<div class="dropdown-header"><%= t('nav.team_switch_title') %></div>
<% current_user.teams.each do |team| %>
<li class="team-name-item">
<a href="#"
data-id="<%= team.id %>"
class="text-center change-team"
data-turbolinks="false">
<% if current_team == team %>
<span class="fas fa-check-circle"></span> <strong><%= team.name %></strong>
<% else %>
<span class="team-name"><%= team.name %></span>
<% end %>
</a>
</li>
<% end %>
<% end %>
<% if current_user.teams.length > 1 && can_create_teams? %>
<li>
<%= link_to new_team_path do %>
<span class="fas fa-plus"></span>
<%= t('users.settings.teams.index.new_team') %>
<% end %>
</li>
<% end %>
</ul>
<% end %>
</div>
</li>
<% end %>
</ul>
<!-- profile info -->
<ul class="nav navbar-nav navbar-right">
<!-- search form -->
<li>
<%= form_tag search_path,
method: :get,
id: 'search-bar',
class: 'navbar-form',
role: 'search' do %>
<div class="input-group">
<input class="form-control"
type="text"
name="q"
placeholder="<%= t('nav.search') %>" />
<span class="input-group-btn">
<button class="btn btn-default" type="submit"><%=t 'nav.search_button' %></button>
</span>
</div>
<% end %>
</li>
<!-- greetings -->
<li id="user-account-dropdown" class="dropdown">
<a href="#"
class="dropdown-toggle"
title="<%= t('nav.label.account') %>"
data-toggle="dropdown"
role="button"
aria-haspopup="true"
aria-expanded="false">
<span>
<%= t('nav.user_greeting', full_name: current_user.full_name) %>
</span>
<%= image_tag avatar_path(current_user, :icon_small),
class: "avatar" %>
</a>
<ul class="dropdown-menu" data-hook="navigation-user-menu">
<li>
<%= link_to t('nav.user.logout'),
destroy_user_session_path,
method: :delete %>
</li>
<li role="separator" class="divider">
<li>
<%= link_to '#', data: { trigger: 'about-modal' } do %>
<%= t('nav.user.about') %>
<% end %>
</li>
</ul>
</li>
<!-- notifications -->
<li class="dropdown">
<a href="#"
id="notifications-dropdown"
class="dropdown-toggle"
title="<%= t('nav.label.notifications') %>"
data-toggle="dropdown"
role="button"
aria-haspopup="true"
aria-expanded="false"
data-href="<%= recent_notifications_url(current_user) %>">
<i class="fas fa-bell"></i>
<span class="visible-xs-inline visible-sm-inline"><%= t('nav.label.notifications') %></span>
<span id="count-notifications"
data-href="<%= unseen_notification_url(current_user) %>">
</span>
</a>
<ul class="dropdown-menu dropdown-notifications">
<li class="notifications-dropdown-header">
<span><%= t('notifications.title') %></span>
<span class="pull-right">
<%= link_to t('nav.user.settings'), preferences_path %>
</span>
</li>
<li class="notifications-no-recent">
<em><%= t('notifications.no_recent') %></em>
</li>
<li class="notifications-dropdown-footer">
<%= link_to t('notifications.show_all'), notifications_path %>
</li>
</ul>
</li>
</ul>
</div>
<% end %>
</div>
</nav>
<div id="loading-animation"></div>
<%= javascript_include_tag("navigation") %>