Skip to content
Snippets Groups Projects
Commit 0f0d232a authored by Arnaud Levy's avatar Arnaud Levy
Browse files

years

parent 7d900c37
No related branches found
No related tags found
No related merge requests found
......@@ -4,7 +4,10 @@ class Extranet::AcademicYearsController < Extranet::ApplicationController
through_association: :academic_years
def index
@academic_years = current_extranet.about&.academic_years || @academic_years
@academic_years = about&.academic_years
.page(params[:page])
.per(20)
@count = @academic_years.total_count
breadcrumb
end
......
......@@ -4,7 +4,7 @@ class Extranet::OrganizationsController < Extranet::ApplicationController
through_association: :organizations
def index
@organizations = current_extranet.about&.alumni_organizations || @organizations
@organizations = about&.alumni_organizations
@organizations = @organizations.ordered.page(params[:page])
@count = @organizations.total_count
breadcrumb
......
......@@ -4,9 +4,8 @@ class Extranet::PersonsController < Extranet::ApplicationController
through_association: :people
def index
alumni = current_extranet.about&.alumni || @people.alumni
@facets = University::Person::Alumnus::Facets.new params[:facets], {
model: alumni,
model: about&.alumni,
about: current_extranet.about
}
@people = @facets.results
......
......@@ -68,24 +68,20 @@ class Education::School < ApplicationRecord
through: :published_programs,
source: :university_people_through_role_involvements
has_many :alumni,
-> { distinct },
has_many :alumni, -> { distinct },
through: :programs
has_many :alumni_experiences,
-> { distinct },
has_many :alumni_experiences, -> { distinct },
class_name: 'University::Person::Experience',
through: :alumni,
source: :experiences
alias_attribute :experiences, :alumni_experiences
has_many :alumni_organizations,
-> { distinct },
has_many :alumni_organizations, -> { distinct },
class_name: 'University::Organization',
through: :alumni_experiences,
source: :organization
has_many :education_academic_years,
-> { distinct },
has_many :education_academic_years, -> { distinct },
class_name: 'Education::AcademicYear',
through: :programs
alias_attribute :academic_years, :education_academic_years
......
......@@ -15,7 +15,7 @@ class University::Person::Alumnus::Facets < FacetedSearch::Facets
habtm: true
}
filter_with_list :diploma_programs, {
filter_with_checkboxes :diploma_programs, {
source: @about.programs.ordered,
title: Education::Program.model_name.human(count: 2),
habtm: true
......
<% 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">
<h2 class="mb-5">
<%= link_to year, year, class: 'stretched-link' %>
</h2>
<p class="text-end mb-0">
<%= cohorts.count %>
<%= Education::Cohort.model_name.human(count: cohorts.count).downcase %>
<br>
<%= alumni.count %>
<%= University::Person::Alumnus.model_name.human(count: alumni.count).downcase %>
</p>
</div>
</article>
</div>
<% end %>
</div>
<%= paginate academic_years_paged, theme: 'bootstrap-5' %>
......@@ -4,4 +4,26 @@
<h1><%= Education::AcademicYear.model_name.human(count: 2) %></h1>
</header>
<%= render 'extranet/academic_years/list', academic_years: @academic_years %>
<% @academic_years.each do |year| %>
<%
cohorts = year.cohorts_in_context(current_context.about)
alumni = year.alumni_in_context(current_context.about)
%>
<div class="row">
<div class="col-md-6">
<b>
<%= link_to year, year, class: 'stretched-link' %>
</b>
</div>
<div class="col-md-3">
<%= cohorts.count %>
<%= Education::Cohort.model_name.human(count: cohorts.count).downcase %>
</div>
<div class="col-md-3 text-end">
<%= alumni.count %>
<%= University::Person::Alumnus.model_name.human(count: alumni.count).downcase %>
</div>
</div>
<hr>
<% end %>
<%= paginate @academic_years, theme: 'bootstrap-5' %>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment