diff options
author | David Gay <david@davidgay.org> | 2023-11-03 01:27:49 -0400 |
---|---|---|
committer | David Gay <david@davidgay.org> | 2023-11-03 01:27:49 -0400 |
commit | 13f4f6ca06a216962f4c25fa0d6041945cfb3fb5 (patch) | |
tree | 21ce830642a842e48f6794d53cff239d587db181 /app | |
parent | 0c5cccbecfc8b71fb318c275f142306e19bb7e43 (diff) |
Better trainer card
Diffstat (limited to 'app')
-rw-r--r-- | app/models/user.rb | 4 | ||||
-rw-r--r-- | app/views/layouts/application.html.erb | 2 | ||||
-rw-r--r-- | app/views/users/show.html.erb | 49 |
3 files changed, 32 insertions, 23 deletions
diff --git a/app/models/user.rb b/app/models/user.rb index ed3f425..4ad0a1e 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -6,4 +6,8 @@ class User < ApplicationRecord has_many :checkpoints, through: :runs has_many :pokedex_entries, dependent: :destroy has_many :runs, dependent: :restrict_with_error + + def pokedex_captured_count + pokedex_entries.joins(:pokemon).select("distinct pokemons.pokedex_num").count + end end diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 0102ea6..2332cd5 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -24,7 +24,7 @@ <div class="space-x-8 nav-links"> <% if user_signed_in? %> <%= link_to "Pokédex", pokedex_path %> - <%= link_to "Trainer card", user_path(current_user) %> + <%= link_to "Trainer", user_path(current_user) %> <%= link_to "Sign out", destroy_user_session_path %> <% else %> <%= link_to "Sign in", new_user_session_path %> diff --git a/app/views/users/show.html.erb b/app/views/users/show.html.erb index 4df3273..f11b01f 100644 --- a/app/views/users/show.html.erb +++ b/app/views/users/show.html.erb @@ -1,25 +1,30 @@ -<div class="space-y-4"> - <h1 class="text-2xl"> - <span class="px-4 py-2 text-lg text-slate-900 bg-orange-500 rounded">TRAINER CARD</span> - <%= @user.name || "???" %> - </h1> - <p class="subtitle">ID No. <%= @user.id %></p> - - <% if @user == current_user %> - <%= link_to "Edit trainer card", edit_user_url(@user) %> - <% end %> - - <ul> - <li>Pokédex 0</li> - </ul> - - <h2><%= pluralize(@user.runs.count, "run") %></h2> +<div class="grid grid-cols-1 md:grid-cols-2"> + <div class="w-[500px] space-y-4 p-4 border border-orange-900 rounded shadow-xl bg-neutral-50"> + <div class="flex justify-between text-display"> + <div class="px-4 py-2 text-sm text-slate-900 bg-orange-500 rounded">TRAINER CARD</div> + <div class="">ID No. <%= @user.id %></div> + </div> + <div> + <p class="text-lg">NAME: <%= @user.name || "???" %> + <p>POKéDEX: <%= @user.pokedex_captured_count %></p> + <p>TIME: <%= distance_of_time_in_words_to_now(@user.created_at) %></p> + </div> + <% if @user == current_user %> + <p><%= link_to "Edit trainer card", edit_user_url(@user) %></p> + <% end %> + </div> + <div> + <div class="space-y-4"> + <h2><%= pluralize(@user.runs.count, "run") %></h2> - <p><%= link_to "Start a run", new_run_path %></p> + <p><%= link_to "Start a run", new_run_path %></p> - <ul class="list-disc"> - <% @user.runs.each do |run| %> - <li><%= run.game.title %> - <%= link_to run.title, run_path(run) %></li> - <% end %> - </ul> + <ul class="list-disc"> + <% @user.runs.each do |run| %> + <li><%= run.game.title %> - <%= link_to run.title, run_path(run) %></li> + <% end %> + </ul> + </div> + </div> </div> + |