BathHacked/energy-sparks

View on GitHub
app/views/schools/analysis/index.html.erb

Summary

Maintainability
Test Coverage
<%= render 'shared/translation_coming_soon' if I18n.locale.to_s != 'en' %>

<div class="d-flex justify-content-between align-items-center">
  <h1>Analysis for <%= @school.name %></h1>
  <div class="h5">
    <%= link_to "Explore your data", pupils_school_analysis_path(@school), class: 'btn btn-outline-dark rounded-pill font-weight-bold' %>
    <% if @school.school_group && can?(:compare, @school.school_group) %>
      <%= link_to 'Compare schools', compare_index_path(school_group_ids: [@school.school_group.id]) + '#groups', class: 'btn btn-outline-dark rounded-pill font-weight-bold' %>

    <% end %>
  </div>
</div>

<% if @overview_pages.any? %>
  <div class="row">
    <% @overview_pages.each do |page| %>
      <div class="col-lg-6 mb-4">
        <%= render 'schools/analysis/card', page: page, school: @school, energy: :all, page_param: page.analysis_page, show_stars: page.analysis_page.show_stars?, show_debug: local_assigns[:show_debug] %>
      </div>
    <% end %>
  </div>
<% end %>

<div class="row">
  <% unless [@electricity_pages, @solar_pages, @tariff_pages, @co2_pages].all?(&:empty?) %>
    <div class="col-lg-6 mb-4">
      <% if @electricity_pages.any? %>
        <h2>Electricity</h2>
        <% @electricity_pages.each do |page| %>
          <%= render 'schools/analysis/card', page: page, school: @school, energy: :electricity, page_param: page.analysis_page, show_stars: page.analysis_page.show_stars?, show_debug: local_assigns[:show_debug] %>
        <% end %>
      <% end %>
      <% if @solar_pages.any? %>
        <div class="mt-5">
          <% @solar_pages.each do |page| %>
            <%= render 'schools/analysis/card', page: page, school: @school, energy: :solar, page_param: page.analysis_page, show_stars: page.analysis_page.show_stars?, show_debug: local_assigns[:show_debug] %>
          <% end %>
        </div>
      <% end %>
      <% if @tariff_pages.any? %>
        <div class="mt-5">
          <% @tariff_pages.each do |page| %>
            <%= render 'schools/analysis/card', page: page, school: @school, energy: :all, page_param: page.analysis_page, show_stars: page.analysis_page.show_stars?, show_debug: local_assigns[:show_debug] %>
          <% end %>
        </div>
      <% end %>
      <% if @co2_pages.any? %>
        <div class="mt-5">
          <% @co2_pages.each do |page| %>
            <%= render 'schools/analysis/card', page: page, school: @school, energy: :all, page_param: page.analysis_page, show_stars: page.analysis_page.show_stars?, show_debug: local_assigns[:show_debug] %>
          <% end %>
        </div>
      <% end %>
    </div>
  <% end %>

  <% unless [@heating_pages, @storage_heater_pages, @hot_water_pages, @boiler_control_pages].all?(&:empty?) %>
    <div class="col-lg-6 mb-4">
      <% if @heating_pages.any? %>
        <h2>Gas</h2>
        <% @heating_pages.each do |page| %>
          <%= render 'schools/analysis/card', page: page, school: @school, energy: :gas, page_param: page.analysis_page, show_stars: page.analysis_page.show_stars?, show_debug: local_assigns[:show_debug] %>
        <% end %>
      <% end %>
      <% if @storage_heater_pages.any? %>
        <h2>Storage heaters</h2>
        <% @storage_heater_pages.each do |page| %>
          <%= render 'schools/analysis/card', page: page, school: @school, energy: :storage, page_param: page.analysis_page, show_stars: page.analysis_page.show_stars?, show_debug: local_assigns[:show_debug] %>
        <% end %>
      <% end %>
      <% if @hot_water_pages.any? %>
        <div class="mt-5">
          <% @hot_water_pages.each do |page| %>
            <%= render 'schools/analysis/card', page: page, school: @school, energy: :gas, page_param: page.analysis_page, show_stars: page.analysis_page.show_stars?, show_debug: local_assigns[:show_debug] %>
          <% end %>
        </div>
      <% end %>
      <% if @boiler_control_pages.any? %>
        <h2>Boiler control</h2>
        <% @boiler_control_pages.each do |page| %>
          <%= render 'schools/analysis/card', page: page, school: @school, energy: :gas, page_param: page.analysis_page, show_stars: page.analysis_page.show_stars?, show_debug: local_assigns[:show_debug] %>
        <% end %>
      <% end %>
    </div>
  <% end %>
</div>