diff --git a/app/controllers/analyze_controller.rb b/app/controllers/analyze_controller.rb index e4cd50db..0fd74c04 100644 --- a/app/controllers/analyze_controller.rb +++ b/app/controllers/analyze_controller.rb @@ -1,13 +1,11 @@ class AnalyzeController < SqmApplicationController def index - @category ||= Category.find_by_category_id(params[:category_id]) - @category ||= Category.find_by_category_id(1) + @category ||= Category.find_by_category_id(params[:category]) + @categories = Category.all.order(:category_id) - @subcategory ||= Subcategory.find_by_subcategory_id(params[:subcategory_id]) + @subcategory ||= @category.subcategories.order(:subcategory_id).first @subcategory ||= Subcategory.order(:subcategory_id).includes(%i[measures]).first @measures = @subcategory.measures.order(:measure_id).includes(%i[scales admin_data_items]) - - @academic_year ||= AcademicYear.order('range DESC').first end end diff --git a/app/helpers/analyze_helper.rb b/app/helpers/analyze_helper.rb index ababfcb5..43ad3382 100644 --- a/app/helpers/analyze_helper.rb +++ b/app/helpers/analyze_helper.rb @@ -58,4 +58,8 @@ module AnalyzeHelper def data_sources 3 end + + def analyze_category_link(district:, school:, academic_year:, category:) + "/districts/#{district.slug}/schools/#{school.slug}/analyze?year=#{academic_year.range}&category=#{category.category_id}" + end end diff --git a/app/helpers/header_helper.rb b/app/helpers/header_helper.rb index af715f02..cbcf787d 100644 --- a/app/helpers/header_helper.rb +++ b/app/helpers/header_helper.rb @@ -8,7 +8,7 @@ module HeaderHelper end def link_to_analyze(district:, school:, academic_year:) - "/districts/#{district.slug}/schools/#{school.slug}/analyze?year=#{academic_year.range}" + "/districts/#{district.slug}/schools/#{school.slug}/analyze?year=#{academic_year.range}&category=1" end def district_url_for(district:, academic_year:) diff --git a/app/javascript/controllers/analyze_controller.js b/app/javascript/controllers/analyze_controller.js new file mode 100644 index 00000000..705a265d --- /dev/null +++ b/app/javascript/controllers/analyze_controller.js @@ -0,0 +1,9 @@ +import { Controller } from "@hotwired/stimulus" + +// Connects to data-controller="analyze" +export default class extends Controller { + connect() { } + change_category(event) { + window.location = event.target.value + } +} diff --git a/app/javascript/controllers/index.js b/app/javascript/controllers/index.js index a2e968be..6a4079b7 100644 --- a/app/javascript/controllers/index.js +++ b/app/javascript/controllers/index.js @@ -2,4 +2,7 @@ // Run that command whenever you add a new controller or create them with // ./bin/rails generate stimulus controllerName -import { application } from "./application"; +import { application } from "./application" + +import AnalyzeController from "./analyze_controller.js" +application.register("analyze", AnalyzeController) diff --git a/app/views/analyze/index.html.erb b/app/views/analyze/index.html.erb index 46a44d6b..7ec0bab9 100644 --- a/app/views/analyze/index.html.erb +++ b/app/views/analyze/index.html.erb @@ -2,20 +2,36 @@
Measure <%= measure.measure_id %>
-Select a category & subcategory to analyze measure-level results
+ + + +Measure <%= measure.measure_id %>
+