parent
94a58a87d7
commit
26f739090b
@ -0,0 +1,37 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
module Analyze
|
||||||
|
module Graph
|
||||||
|
module Column
|
||||||
|
class AmericanIndian < GroupedBarColumnPresenter
|
||||||
|
include Analyze::Graph::Column::RaceScore
|
||||||
|
def label
|
||||||
|
# TODO: offset labels so they don't overlap
|
||||||
|
'American Indian or Alaskan Native'
|
||||||
|
end
|
||||||
|
|
||||||
|
def basis
|
||||||
|
'student'
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_irrelevancy_message?
|
||||||
|
!measure.includes_student_survey_items?
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_insufficient_data_message?
|
||||||
|
# TODO: implement this logic. Resize messages so they are bound to their column
|
||||||
|
false
|
||||||
|
end
|
||||||
|
|
||||||
|
def score(year_index)
|
||||||
|
# TODO: make sure the score calculation bubble up instead of just average
|
||||||
|
race_score(measure:, school:, academic_year: academic_years[year_index], race:)
|
||||||
|
end
|
||||||
|
|
||||||
|
def race
|
||||||
|
Race.find_by_qualtrics_code 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@ -0,0 +1,34 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
module Analyze
|
||||||
|
module Graph
|
||||||
|
module Column
|
||||||
|
class Asian < GroupedBarColumnPresenter
|
||||||
|
include Analyze::Graph::Column::RaceScore
|
||||||
|
def label
|
||||||
|
'Asian or Pacific Islander'
|
||||||
|
end
|
||||||
|
|
||||||
|
def basis
|
||||||
|
'student'
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_irrelevancy_message?
|
||||||
|
!measure.includes_student_survey_items?
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_insufficient_data_message?
|
||||||
|
false
|
||||||
|
end
|
||||||
|
|
||||||
|
def score(year_index)
|
||||||
|
race_score(measure:, school:, academic_year: academic_years[year_index], race:)
|
||||||
|
end
|
||||||
|
|
||||||
|
def race
|
||||||
|
Race.find_by_qualtrics_code 2
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@ -0,0 +1,34 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
module Analyze
|
||||||
|
module Graph
|
||||||
|
module Column
|
||||||
|
class Black < GroupedBarColumnPresenter
|
||||||
|
include Analyze::Graph::Column::RaceScore
|
||||||
|
def label
|
||||||
|
'Black or African American'
|
||||||
|
end
|
||||||
|
|
||||||
|
def basis
|
||||||
|
'student'
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_irrelevancy_message?
|
||||||
|
!measure.includes_student_survey_items?
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_insufficient_data_message?
|
||||||
|
false
|
||||||
|
end
|
||||||
|
|
||||||
|
def score(year_index)
|
||||||
|
race_score(measure:, school:, academic_year: academic_years[year_index], race:)
|
||||||
|
end
|
||||||
|
|
||||||
|
def race
|
||||||
|
Race.find_by_qualtrics_code 3
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@ -0,0 +1,34 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
module Analyze
|
||||||
|
module Graph
|
||||||
|
module Column
|
||||||
|
class Hispanic < GroupedBarColumnPresenter
|
||||||
|
include Analyze::Graph::Column::RaceScore
|
||||||
|
def label
|
||||||
|
'Hispanic or Latinx'
|
||||||
|
end
|
||||||
|
|
||||||
|
def basis
|
||||||
|
'student'
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_irrelevancy_message?
|
||||||
|
!measure.includes_student_survey_items?
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_insufficient_data_message?
|
||||||
|
false
|
||||||
|
end
|
||||||
|
|
||||||
|
def score(year_index)
|
||||||
|
race_score(measure:, school:, academic_year: academic_years[year_index], race:)
|
||||||
|
end
|
||||||
|
|
||||||
|
def race
|
||||||
|
Race.find_by_qualtrics_code 4
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@ -0,0 +1,34 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
module Analyze
|
||||||
|
module Graph
|
||||||
|
module Column
|
||||||
|
class MiddleEastern < GroupedBarColumnPresenter
|
||||||
|
include Analyze::Graph::Column::RaceScore
|
||||||
|
def label
|
||||||
|
'Middle Eastern'
|
||||||
|
end
|
||||||
|
|
||||||
|
def basis
|
||||||
|
'student'
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_irrelevancy_message?
|
||||||
|
!measure.includes_student_survey_items?
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_insufficient_data_message?
|
||||||
|
false
|
||||||
|
end
|
||||||
|
|
||||||
|
def score(year_index)
|
||||||
|
race_score(measure:, school:, academic_year: academic_years[year_index], race:)
|
||||||
|
end
|
||||||
|
|
||||||
|
def race
|
||||||
|
Race.find_by_qualtrics_code 8
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@ -0,0 +1,17 @@
|
|||||||
|
module Analyze
|
||||||
|
module Graph
|
||||||
|
module Column
|
||||||
|
module RaceScore
|
||||||
|
def race_score(measure:, school:, academic_year:, race:)
|
||||||
|
survey_items = measure.student_survey_items
|
||||||
|
average = SurveyItemResponse.where(school:,
|
||||||
|
academic_year:,
|
||||||
|
survey_item: survey_items,
|
||||||
|
student: StudentRace.where(race:))
|
||||||
|
.average(:likert_score)
|
||||||
|
Score.new(average, true, true, true)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@ -0,0 +1,34 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
module Analyze
|
||||||
|
module Graph
|
||||||
|
module Column
|
||||||
|
class Unknown < GroupedBarColumnPresenter
|
||||||
|
include Analyze::Graph::Column::RaceScore
|
||||||
|
def label
|
||||||
|
'Unknown'
|
||||||
|
end
|
||||||
|
|
||||||
|
def basis
|
||||||
|
'student'
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_irrelevancy_message?
|
||||||
|
!measure.includes_student_survey_items?
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_insufficient_data_message?
|
||||||
|
false
|
||||||
|
end
|
||||||
|
|
||||||
|
def score(year_index)
|
||||||
|
race_score(measure:, school:, academic_year: academic_years[year_index], race:)
|
||||||
|
end
|
||||||
|
|
||||||
|
def race
|
||||||
|
Race.find_by_qualtrics_code 99
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@ -0,0 +1,34 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
module Analyze
|
||||||
|
module Graph
|
||||||
|
module Column
|
||||||
|
class White < GroupedBarColumnPresenter
|
||||||
|
include Analyze::Graph::Column::RaceScore
|
||||||
|
def label
|
||||||
|
'White or Caucasian'
|
||||||
|
end
|
||||||
|
|
||||||
|
def basis
|
||||||
|
'student'
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_irrelevancy_message?
|
||||||
|
!measure.includes_student_survey_items?
|
||||||
|
end
|
||||||
|
|
||||||
|
def show_insufficient_data_message?
|
||||||
|
false
|
||||||
|
end
|
||||||
|
|
||||||
|
def score(year_index)
|
||||||
|
race_score(measure:, school:, academic_year: academic_years[year_index], race:)
|
||||||
|
end
|
||||||
|
|
||||||
|
def race
|
||||||
|
Race.find_by_qualtrics_code 5
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
Loading…
Reference in new issue