app/views/layouts/_login.html.erb
<% if logged_in? %>
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" id="logout-menu" aria-haspopup="true" aria-expanded="false">
<i class="fa fa-user"></i> <%= current_user.login %>
</a>
<div class="dropdown-menu login-form dropdown-menu-right pl-0 pr-0" aria-labelled-by="logout-menu">
<a href="//publiclab.org/profile/<%= current_user.login %>" class="dropdown-item">Profile</a>
<a href="/logout" class="dropdown-item">Log out</a>
<% if current_user.role == 'admin' %>
<a href="#" class="dropdown-item">Role: <b>Admin</b></a>
<% end %>
</div>
</li>
<% else %>
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown login-form" data-toggle="modal" data-target="#loginModal">Log In</a>
<%= render partial: "layouts/login_modal" %>
</li>
<% end %>
<script>
jQuery(document).ready(function($) {
$("#loginModal").appendTo("body");
});
</script>