app/views/memberships/index.html.erb
<div class="page-header">
<h1><%= @project.name %>: Manage Members</h1>
</div>
<ol class="breadcrumb">
<li><%= link_to 'Projects', projects_path %></li>
<li><%= link_to @project.name, project_path(@project) %></li>
<li class= "Active">Memberships</li>
</ol>
<%= render partial: "shared/error_left", locals: {object: @membership} %>
<% if current_user.is_project_owner(@project) %>
<div class="row">
<div class="col-md-7">
<div class="well">
<%= form_for [@project,@membership],:html => {:class => "form-inline"} do |f| %>
<div class="form-group">
<%= f.collection_select(:user_id, User.all, :id, :full_name, {prompt: 'Please select a user...'}, {class: 'form-control'}) %>
<%= f.collection_select(:role, Membership::ROLES, :to_s, :capitalize,{}, {class: 'form-control'}) %>
<%= f.submit "Add New Member", class: "btn btn-primary" %>
</div>
<% end %>
</div>
</div>
</div>
<% end %>
<div class = "row">
<% @memberships.each do |membership| %>
<div class="form-group col-md-10">
<%= form_for [@project,membership] do |ed| %>
<div>
<div>
<%= link_to "#{membership.user.full_name}", user_path(membership.user), class: "col-md-2" %>
</div>
<% if current_user.is_project_owner(@project) %>
<div class="col-md-2">
<%= ed.collection_select(:role, Membership::ROLES, :to_s, :capitalize,{}, {class:'form-control'}) %>
</div>
<div class="col-md-2">
<%= ed.submit "Update", class: "btn btn-primary" %>
</div>
<% if membership.user.id == current_user.id && @project.memberships.where(role: "owner").count == 1 %>
<div class= "col-md-3"> You are the last owner</div>
<% end %>
<% else %>
<div class="col-md-2">
</div>
<div class="col-md-2">
<%= membership.role %>
</div>
<% end %>
<% if membership.role == "owner" && @project.memberships.where(role: "owner").count == 1%>
<% elsif (current_user.is_admin || current_user.is_project_owner(@project) || current_user.id == membership.user.id) %>
<div class= "col-md-2">
<%= link_to "", project_membership_path(@project,membership), method: :delete, class: "glyphicon glyphicon-remove" %>
</div>
<% end %>
</div>
<% end %>
</div>
<% end %>
</div>