diff --git a/app/presenters/subcategory_card_presenter.rb b/app/presenters/subcategory_card_presenter.rb index 7ef83d65..c252e330 100644 --- a/app/presenters/subcategory_card_presenter.rb +++ b/app/presenters/subcategory_card_presenter.rb @@ -1,8 +1,11 @@ class SubcategoryCardPresenter - attr_reader :name + attr_reader :name, :subcategory, :category, :subcategory_id - def initialize(name:, zones:, score:) - @name = name + def initialize(subcategory:, zones:, score:) + @name = subcategory.name + @subcategory = subcategory + @category = subcategory.category + @subcategory_id = subcategory.subcategory_id @zones = zones @score = score end @@ -19,6 +22,10 @@ class SubcategoryCardPresenter zone.type == :insufficient_data end + def to_model + subcategory + end + private def zone diff --git a/app/presenters/subcategory_presenter.rb b/app/presenters/subcategory_presenter.rb index 40e9631f..6eb6c7eb 100644 --- a/app/presenters/subcategory_presenter.rb +++ b/app/presenters/subcategory_presenter.rb @@ -22,7 +22,7 @@ class SubcategoryPresenter end def subcategory_card_presenter - SubcategoryCardPresenter.new(name: @subcategory.name, zones:, score: average_score) + SubcategoryCardPresenter.new(subcategory: @subcategory, zones:, score: average_score) end def average_score diff --git a/app/views/categories/_subcategory_section.html.erb b/app/views/categories/_subcategory_section.html.erb index c49a283c..367b974c 100644 --- a/app/views/categories/_subcategory_section.html.erb +++ b/app/views/categories/_subcategory_section.html.erb @@ -1,4 +1,4 @@ -
+

Subcategory <%= subcategory.id %>

<%= subcategory.name %>

diff --git a/app/views/overview/_subcategory_card.html.erb b/app/views/overview/_subcategory_card.html.erb index a9381ed4..728484ed 100644 --- a/app/views/overview/_subcategory_card.html.erb +++ b/app/views/overview/_subcategory_card.html.erb @@ -3,5 +3,5 @@ -
<%= subcategory_card.name %>
+ <%= link_to(subcategory_card.name, district_school_category_path( @district, @school, subcategory_card.category, {year: @academic_year.range, anchor: "#{subcategory_card.subcategory_id}"})) %>
diff --git a/spec/presenters/subcategory_card_presenter_spec.rb b/spec/presenters/subcategory_card_presenter_spec.rb index 93bd1df6..627f7934 100644 --- a/spec/presenters/subcategory_card_presenter_spec.rb +++ b/spec/presenters/subcategory_card_presenter_spec.rb @@ -10,7 +10,7 @@ describe SubcategoryCardPresenter do ) end - let(:subcategory_card_presenter) { SubcategoryCardPresenter.new(name: 'Card name', zones:, score:) } + let(:subcategory_card_presenter) { SubcategoryCardPresenter.new(subcategory: Subcategory.new(name: 'A subcategory'), zones:, score:) } context 'when the given score is in the Warning zone for the given scale' do let(:score) { 1 }