diff --git a/app/models/education/academic_year.rb b/app/models/education/academic_year.rb index ff203144a1fc362b05ad0c8e41ddb71611541381..2921bc3beba415836e65ed31324ba0f494b9b0b0 100644 --- a/app/models/education/academic_year.rb +++ b/app/models/education/academic_year.rb @@ -27,6 +27,16 @@ class Education::AcademicYear < ApplicationRecord scope :ordered, -> { order(year: :desc) } + def cohorts_in_context(context) + return cohorts if context.nil? || !context.respond_to?(:cohorts) + cohorts & context.cohorts + end + + def alumni_in_context(context) + return alumni if context.nil? || !context.respond_to?(:alumni) + people & context.alumni + end + def to_s "#{year}" end diff --git a/app/views/extranet/academic_years/_list.html.erb b/app/views/extranet/academic_years/_list.html.erb index 54b14810da7c0e8e3246fbca8a5f1a37bc0fec43..914824d3074b9949d01422d3175d6382bd44fc87 100644 --- a/app/views/extranet/academic_years/_list.html.erb +++ b/app/views/extranet/academic_years/_list.html.erb @@ -1,6 +1,10 @@ <% academic_years_paged = academic_years.ordered.page(params[:page]).per(60) %> <div class="row"> <% academic_years_paged.each do |year| %> + <% + cohorts = year.cohorts_in_context(current_context.about) + alumni = year.alumni_in_context(current_context.about) + %> <div class="col-md-3"> <article class="card mb-4"> <div class="card-body"> @@ -8,11 +12,11 @@ <%= link_to year, year, class: 'stretched-link' %> </h2> <p class="text-end mb-0"> - <%= year.cohorts.count %> - <%= Education::Cohort.model_name.human(count: year.cohorts.count).downcase %> + <%= cohorts.count %> + <%= Education::Cohort.model_name.human(count: cohorts.count).downcase %> <br> - <%= year.people.count %> - <%= University::Person::Alumnus.model_name.human(count: year.people.count).downcase %> + <%= alumni.count %> + <%= University::Person::Alumnus.model_name.human(count: alumni.count).downcase %> </p> </div> </article>