opengovernment/askthem

View on GitHub
app/views/shared/_navigation.html.erb

Summary

Maintainability
Test Coverage
<section>
  <nav>
    <ul class="level">
      <li<%= raw(' class="active"') if federal? %>>
        <%= link_to federal_path do %>
          <%= state_name %> Federal
        <% end %>
        <i class="icon-angle-down"></i>
      </li>
      <li<%= raw(' class="active"') if state? %>>
        <%= link_to state_path do %>
          <%= state_name %> State
        <% end %>
        <i class="icon-angle-down"></i>
      </li>
      <%- if local_jurisdiction %>
        <li <%= @jurisdiction.abbreviation == local_jurisdiction.abbreviation ? raw(' class="active"') : '' %> >
          <%= link_to jurisdiction_path(jurisdiction: local_jurisdiction.abbreviation) do %>
            <%= local_jurisdiction.name %>
          <% end %>
          <%- if local_jurisdictions.count > 1 %>
            <span class="jurisdiction-change"><a href="#" class="navigation-modal-open">change</a></span>
            <%- counties = local_jurisdictions.select { |lj| lj.id.include?("-county") } %>
            <%- cities = local_jurisdictions - counties - [local_jurisdiction] %>
            <div class="navigation-overlay" style="display:none;"></div>
            <div class="navigation-modal" style="display:none;">
              <div class="modal-content">
                <a href='#' class="modal-close"><i class="icon-remove"></i></a>
                <h2 class="modal-header">
                  Choose a different place
                </h2>
                <div class="modal-copy-wrap">
                  <%- if cities.any? %>
                    <ul>
                      <%- cities.each do |city| %>
                        <li><%= link_to city.name, jurisdiction_path(jurisdiction: city.abbreviation) -%></li>
                      <%- end %>
                    </ul>
                  <%- end %>

                  <%- if counties.any? %>
                    <ul>
                      <%- counties.each do |county| %>
                        <li><%= link_to county.name, jurisdiction_path(jurisdiction: county.abbreviation) -%></li>
                      <%- end %>
                    </ul>
                  <%- end %>
                </div>
              </div>
              <%= image_tag("mark.svg", class: "modal-logo") %>
            </div>
          <%- end %>
          <i class="icon-angle-down"></i>
        </li>
      <% end %>
    </ul>
    <% unless (params[:controller] == 'questions' && params[:action] == 'show') %>
      <ul class="top_nav">
        <li><a name="top" style="display:none;"></a><%= tab 'Questions', @gov ? questions_path(gov: @gov) : questions_path %></li>
        <% unless 1 # federal? -%>
          <li><%= tab 'Bills', bills_path %></li>
        <% end %>
        <%# @todo extract to helper -%>
        <% unless 1 %>
          <li><%= tab 'People', @gov ? people_path(gov: @gov) : people_path %></li>
          <% if @jurisdiction.subjects? %>
          <li><%= tab 'Issues', subjects_path %></li>
          <% end %>
        <% end %>
        <%# <li><%= tab 'Money', '#' </li> @todo %>
          <li><%= tab 'Government', jurisdiction_path %></li>
        <% if should_have_ask_question_in_header? -%>
          <%= link_to 'Ask a Question', new_question_path(@jurisdiction.abbreviation), class: 'cta-pill top-nav-ask' %>
        <% end %>
        </ul>
    <% end %>
  </nav>
</section>