Merge pull request 'Add invitations page to admin panel' (#24) from feature/admin_invitations into master
All checks were successful
continuous-integration/drone/push Build is passing

Reviewed-on: #24
This commit was merged in pull request #24.
This commit is contained in:
2021-02-01 22:53:31 +00:00
6 changed files with 47 additions and 5 deletions

View File

@@ -11,6 +11,8 @@ body#admin-panel {
#main-nav {
ul {
grid-template-columns: repeat(4, 1fr);
li {
a {
&.active {

View File

@@ -120,12 +120,7 @@ main {
}
section {
padding-bottom: 3rem;
margin-bottom: 3rem;
&:not(:last-of-type) {
border-bottom: 1px dotted #ccc;
}
}
table {

View File

@@ -0,0 +1,8 @@
class Admin::InvitationsController < Admin::BaseController
def index
@current_section = :invitations
@invitations_unused_count = Invitation.unused.count
@users_with_referrals_count = Invitation.used.distinct.count(:user_id)
@invitations_used = Invitation.used.order('used_at desc')
end
end

View File

@@ -0,0 +1,32 @@
<section>
<h2>Invitations</h2>
<p>
There are currently <strong><%= @invitations_unused_count %>
unused invitations</strong> available to existing users.
<strong><%= @users_with_referrals_count %> users</strong> have successfully
invited new users.
</p>
</section>
<% if @invitations_used.any? %>
<section>
<h3>Accepted (<%= @invitations_used.length %>)</h3>
<table>
<thead>
<tr>
<th>Token</th>
<th>Accepted</th>
<th>Invited user</th>
</tr>
</thead>
<tbody>
<% @invitations_used.each do |invitation| %>
<tr>
<td class="overflow-ellipsis"><%= invitation.token %></td>
<td><%= invitation.used_at.strftime("%Y-%m-%d") %></td>
<td><%= User.find(invitation.invited_user_id).address %></td>
</tr>
<% end %>
</tbody>
</table>
</section>
<% end %>

View File

@@ -5,6 +5,10 @@
<%= link_to "Dashboard", admin_root_path,
class: @current_section == :dashboard ? "active" : nil %>
</li>
<li>
<%= link_to "Invitations", admin_invitations_path,
class: @current_section == :invitations ? "active" : nil %>
</li>
<li>
<%= link_to "Donations", admin_donations_path,
class: @current_section == :donations ? "active" : nil %>