From d4c92922e393876e93ad13943ba45fb08586e6c8 Mon Sep 17 00:00:00 2001 From: David Gay Date: Fri, 3 Nov 2023 02:11:02 -0400 Subject: Pokedex: Grey out uncaptured pokemon --- app/controllers/pokedex_controller.rb | 8 ++++++++ app/models/user.rb | 4 ++-- app/views/layouts/application.html.erb | 2 +- app/views/pokedex/show.html.erb | 20 ++++++++++++++++++-- app/views/users/show.html.erb | 2 +- 5 files changed, 30 insertions(+), 6 deletions(-) (limited to 'app') diff --git a/app/controllers/pokedex_controller.rb b/app/controllers/pokedex_controller.rb index 062373e..21ee44a 100644 --- a/app/controllers/pokedex_controller.rb +++ b/app/controllers/pokedex_controller.rb @@ -1,3 +1,11 @@ class PokedexController < ApplicationController + before_action :set_user + def index; end + +protected + + def set_user + @user = User.find(params[:user_id]) + end end diff --git a/app/models/user.rb b/app/models/user.rb index 4ad0a1e..6b0f462 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -7,7 +7,7 @@ class User < ApplicationRecord 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 + def captured_pokemon + Pokemon.joins(:pokedex_entries).where(pokedex_entries: {user_id: id}).distinct end end diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 2332cd5..073a2f7 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -23,7 +23,7 @@