diff --git a/Gemfile b/Gemfile index 3222367c..9d6fd3a6 100644 --- a/Gemfile +++ b/Gemfile @@ -39,7 +39,6 @@ gem 'haml' gem 'bootstrap' -gem 'jquery-ui-rails' gem 'friendly_id', '~> 5.1.0' gem 'newrelic_rpm' diff --git a/Gemfile.lock b/Gemfile.lock index b2c64880..8f25f087 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -100,8 +100,6 @@ GEM rails-dom-testing (>= 1, < 3) railties (>= 4.2.0) thor (>= 0.14, < 2.0) - jquery-ui-rails (6.0.1) - railties (>= 3.2.16) jwt (1.5.6) launchy (2.5.0) addressable (~> 2.7) @@ -263,7 +261,6 @@ DEPENDENCIES haml jbuilder (~> 2.5) jquery-rails - jquery-ui-rails launchy listen (~> 3.0.5) nested_scaffold diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index b4350dcd..dfc21a66 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -10,8 +10,6 @@ // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details // about supported directives. // -//= require jquery -//= require jquery_ujs //= require bootstrap //= require turbolinks //= require_tree . diff --git a/app/assets/javascripts/dashboard.js b/app/assets/javascripts/dashboard.js index 40b3a8cc..82f4985a 100644 --- a/app/assets/javascripts/dashboard.js +++ b/app/assets/javascripts/dashboard.js @@ -1,34 +1,9 @@ document.addEventListener("DOMContentLoaded", function() { - const selectSchoolElement = document.querySelector('#select-school'); - - selectSchoolElement.addEventListener('change', (event) => { - change_school(event); + document.querySelector('#select-school').addEventListener('change', (event) => { + window.location = event.target.value; }); - const selectDistrictElement = document.querySelector('#select-district'); - - selectDistrictElement.addEventListener('change', (event) => { - change_district(event); + document.querySelector('#select-district').addEventListener('change', (event) => { + window.location = event.target.value; }); }); - -function change_school(event) { - const school_slug = event.target.value; - - const district_regex = /districts\/(.+)\/schools/; - const district_slug = window.location.pathname.match(district_regex)[1]; - - const year_range_regex = /year=(.+)/; - const year_range = window.location.search.match(year_range_regex)[1]; - - window.location = `/districts/${district_slug}/schools/${school_slug}/dashboard?year=${year_range}`; -}; - -function change_district(event) { - const district_slug = event.target.value; - - const year_range_regex = /year=(.+)/; - const year_range = window.location.search.match(year_range_regex)[1]; - - window.location = `/districts/${district_slug}/schools/first/dashboard?year=${year_range}`; -}; diff --git a/app/helpers/header_helper.rb b/app/helpers/header_helper.rb new file mode 100644 index 00000000..6b21f48b --- /dev/null +++ b/app/helpers/header_helper.rb @@ -0,0 +1,25 @@ +module HeaderHelper + + def link_to_dashboard(district:, school:, academic_year:) + dashboard_link(district_slug: district.slug, school_slug: school.slug, academic_year_range: academic_year.range) + end + + def link_to_browse(district:, school:, academic_year:) + "/districts/#{district.slug}/schools/#{school.slug}/browse/teachers-and-leadership?year=#{academic_year.range}" + end + + def district_url_for(district:, academic_year:) + dashboard_link(district_slug: district.slug, school_slug: district.schools.alphabetic.first.slug, academic_year_range: academic_year.range) + end + + def school_url_for(school:, academic_year:) + dashboard_link(district_slug: school.district.slug, school_slug: school.slug, academic_year_range: academic_year.range) + end + + private + + def dashboard_link(district_slug:, school_slug:, academic_year_range:) + "/districts/#{district_slug}/schools/#{school_slug}/dashboard?year=#{academic_year_range}" + end + +end diff --git a/app/views/layouts/sqm/_header.html.erb b/app/views/layouts/sqm/_header.html.erb index e44c4d06..a638c166 100644 --- a/app/views/layouts/sqm/_header.html.erb +++ b/app/views/layouts/sqm/_header.html.erb @@ -4,17 +4,17 @@
<%= link_to image_tag('logo.png', class: 'height-56'), root_path %>