testmycode/tmc-server

View on GitHub
app/views/layouts/_navigation.html.erb

Summary

Maintainability
Test Coverage
<nav class="navbar navbar-expand-lg navbar-dark<%= local_assigns[:transparent] ? '' : ' bg-primary' %>">
  <div class="container">
    <% title_extras = '<span class="small"><br>' + raw(SiteSetting.value(:site_subtitle)) + '</span>' unless SiteSetting.value(:site_subtitle).blank? %>
    <% title = 'TestMyCode' %>
    <% title += raw(title_extras) unless title_extras.blank? %>
    <%= link_to raw(title), root_path, class: 'navbar-brand' %>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>

    <div class="collapse navbar-collapse my-2" id="navbarSupportedContent">
      <ul class="navbar-nav">
        <% if signed_in? %>
          <% if current_user.administrator? %>
            <li class="nav-item"><%= navigation_link 'Users', users_path %></li>
            <li class="nav-item"><%= navigation_link 'Course templates', course_templates_path %></li>
            <li class="nav-item"><%= navigation_link 'Status', status_index_path %></li>
          <% end %>
        <% end %>
      </ul>
      <ul class="navbar-nav ml-auto">
        <% if signed_in? %>
          <li class="nav-item">
            <%= link_to fa_icon("user lg", text: current_user.email), participant_path(current_user), class: 'btn btn-user' %>
          </li>
          <li class="nav-item"><%= link_to 'Sign out', signout_path, method: :delete, id: 'logout-link', class: 'btn btn-danger' %></li>
        <% else %>
          <li class="nav-item"><%= link_to 'Sign up', new_user_path, class: 'nav-link', style: 'margin-right: .5rem' %></li>
          <li class="nav-item"><%= link_to 'Log in', login_path(return_to: return_to_link), class: 'btn btn-info' %></li>
        <% end %>
      </ul>
    </div>
  </div>
</nav>