app/views/groups/_group_sidebar.html.erb
<div class="col-md-12 col-lg-4">
<% cache [
current_user,
group.location,
group.owner_name,
group.recent_members
] do %>
<!-- Group Info -->
<div class="group-info-box box box--sidebar mt-lg-0 py-3">
<!-- Group Location -->
<div class="group-location">
<h3 class="h4 mb-3 pb-1">
Location
</h3>
<p>
<%= location_icon %>
<%= group.location %>
</p>
</div>
<!-- Group Admin Preview -->
<% unless authorized?(current_user, group) %>
<div class="admin-preview">
<h3 class="h4 mb-3">
Admin
</h3>
<p class="mr-1">
<%= person_icon %>
<%= group.admin_name_or_link(current_user, session[:token]) %>
</p>
</div>
<% end %>
<!-- Group Members -->
<div class="members-preview mt-3">
<h3 class="h4 mb-1">
<%= group.members_title_with_count %>
</h3>
<!-- If Owner or Members -->
<% if authorized?(current_user, group) %>
<ul class="mt-3">
<% if !group.members_with_role.empty? %>
<%= render partial: "list_member",
collection: group.recent_members,
as: :member, locals: { group: group } %>
<% else %>
<li>
So far there are no members
</li>
<% end %>
</ul>
<%= group.see_all_members_link %>
<!-- If Invited -->
<% elsif invited? %>
<% if group.members_with_role.empty? %>
<p class="mt-3 mb-1">
<%= rocket_icon %>
<span>You can be the first member!</span>
</p>
<% else %>
<p class="mt-3 mb-1">
<%= people_icon %>
<%= link_to "See all members", group_members_path(group) %>
</p>
<% end %>
<% end %>
</div>
</div><!-- /.group-info-box -->
<% end %><!-- cache end -->
<!-- Group Buttons -->
<div class="group-buttons-box box box--sidebar p-3">
<!-- Owner -->
<% if is_group_owner?(current_user, group) %>
<div class="group-link mt-1">
<%= link_to "Invite someone", new_group_invitation_path(group),
class: "btn btn-outline-primary btn-block btn-lg" %>
</div>
<% end %>
<!-- Organizer -->
<% if group.create_event_button_authorized?(current_user) %>
<div class="group-options mt-3">
<%= link_to "Create event", new_group_event_path(group),
class: "btn btn-primary btn-block btn-lg" %>
</div>
<% end %>
<!-- Member -->
<% if has_member_role_and_is_confirmed?(current_user, group) %>
<div class="group-options">
<%= star_icon %>
<%= link_to "See most involved members", "#top-members" %>
</div>
<% end %>
<!-- Invited -->
<% if invited? %>
<div class="group-membership">
<h4 class="h5">
You've been invited! <span class="align-bottom">😊</span>
</h4>
<h5 class="h5">Would you like to be part?</h5>
<%= group.membership_button(current_user, session[:token]) %>
</div>
<% end %>
<!-- Foreign User -->
<% unless authorized?(current_user, group) || invited? %>
<div class="group-membership">
<h4 class="h5">Would you like to be part?</h4>
<%= group.membership_button(current_user, session[:token]) %>
</div>
<% end %>
</div><!-- /.group-buttons-box -->
</div>