toshimaru/RailsTwitterClone

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

Summary

Maintainability
Test Coverage
<nav class="navbar navbar-expand-md navbar-light fixed-top bg-light border-bottom">
  <div class="container-fluid">
    <%= link_to "Twitter Clone", root_path, class: "navbar-brand" %>
    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarCollapse">
      <ul class="navbar-nav me-auto mb-2 mb-md-0">
        <% if logged_in? %>
          <%# TODO: handle active class %>
          <li class="nav-item">
            <%= link_to users_path, class: 'nav-link', aria: { current: 'page' } do %>
              <%= inline_svg_tag("bootstrap-icons/people.svg") %>
              <span>Users</span>
            <% end %>
          </li>
          <li>
            <%= link_to current_user, class: 'nav-link' do %>
              <%= inline_svg_tag("bootstrap-icons/person.svg") %>
              <span>Profile</span>
            <% end %>
          </li>
          <li>
            <%= link_to tweets_path, class: 'nav-link' do %>
              <%= inline_svg_tag("bootstrap-icons/chat-left.svg") %>
              <span>Tweets</span>
            <% end %>
          </li>
          <li>
            <%= link_to edit_user_path(current_user), class: 'nav-link' do %>
              <%= inline_svg_tag("bootstrap-icons/gear.svg") %>
              <span>Setting</span>
            <% end %>
          </li>
          <li>
            <%= link_to logout_path, method: "delete", class: 'nav-link' do %>
              <%= inline_svg_tag("bootstrap-icons/box-arrow-right.svg") %>
              <span>Sign out</span>
            <% end %>
          </li>
        <% else %>
          <li>
            <%= link_to users_path, class: 'nav-link' do %>
              <%= inline_svg_tag("bootstrap-icons/people.svg") %>
              <span>Users</span>
            <% end %>
          </li>
          <li>
            <%= link_to tweets_path, class: 'nav-link' do %>
              <%= inline_svg_tag("bootstrap-icons/chat-left.svg") %>
              <span>Tweets</span>
            <% end %>
          </li>
          <li>
            <%= link_to login_path, class: 'nav-link' do %>
              <%= inline_svg_tag("bootstrap-icons/box-arrow-in-right.svg") %>
              <span>Sign in</span>
            <% end %>
          </li>
        <% end %>
      </ul>
      <%# <form class="d-flex">
        <input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
        <button class="btn btn-outline-success" type="submit">Search</button>
      </form> %>
    </div>
  </div>
</nav>