Add milestones to legislation process view
This commit is contained in:
@@ -87,6 +87,10 @@ class Legislation::ProcessesController < Legislation::BaseController
|
||||
end
|
||||
end
|
||||
|
||||
def milestones
|
||||
@phase = :milestones
|
||||
end
|
||||
|
||||
def proposals
|
||||
set_process
|
||||
@phase = :proposals_phase
|
||||
|
||||
@@ -24,7 +24,8 @@ module Abilities
|
||||
can [:read, :print, :json_data], Budget::Investment
|
||||
can [:read_results, :read_executions], Budget, phase: "finished"
|
||||
can :new, DirectMessage
|
||||
can [:read, :debate, :draft_publication, :allegations, :result_publication, :proposals], Legislation::Process, published: true
|
||||
can [:read, :debate, :draft_publication, :allegations, :result_publication,
|
||||
:proposals, :milestones], Legislation::Process, published: true
|
||||
can [:read, :changes, :go_to_version], Legislation::DraftVersion
|
||||
can [:read], Legislation::Question
|
||||
can [:read, :map, :share], Legislation::Proposal
|
||||
|
||||
@@ -49,6 +49,15 @@
|
||||
<% end %>
|
||||
</li>
|
||||
<% end %>
|
||||
|
||||
<% if process.milestones.any? %>
|
||||
<li class="milestones <%= "is-active" if phase == :milestones %>">
|
||||
<%= link_to milestones_legislation_process_path(process) do %>
|
||||
<h4><%= t("legislation.processes.shared.milestones_date") %></h4>
|
||||
<p><%= format_date(process.milestones.order_by_publication_date.last.publication_date) %></p>
|
||||
<% end %>
|
||||
</li>
|
||||
<% end %>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
9
app/views/legislation/processes/milestones.html.erb
Normal file
9
app/views/legislation/processes/milestones.html.erb
Normal file
@@ -0,0 +1,9 @@
|
||||
<% provide(:title) { @process.title } %>
|
||||
|
||||
<%= render "legislation/processes/header", process: @process, header: :full %>
|
||||
|
||||
<%= render "key_dates", process: @process, phase: @phase %>
|
||||
|
||||
<div class="tab-milestones">
|
||||
<%= render "milestones/milestones_content", milestoneable: @process %>
|
||||
</div>
|
||||
@@ -87,6 +87,7 @@ en:
|
||||
draft_publication_date: Draft publication
|
||||
allegations_dates: Comments
|
||||
result_publication_date: Final result publication
|
||||
milestones_date: Following
|
||||
proposals_dates: Proposals
|
||||
questions:
|
||||
comments:
|
||||
|
||||
@@ -87,6 +87,7 @@ es:
|
||||
draft_publication_date: Publicación borrador
|
||||
allegations_dates: Comentarios
|
||||
result_publication_date: Publicación resultados
|
||||
milestones_date: Seguimiento
|
||||
proposals_dates: Propuestas
|
||||
questions:
|
||||
comments:
|
||||
|
||||
@@ -6,6 +6,7 @@ namespace :legislation do
|
||||
get :allegations
|
||||
get :result_publication
|
||||
get :proposals
|
||||
get :milestones
|
||||
end
|
||||
|
||||
resources :questions, only: [:show] do
|
||||
|
||||
@@ -292,5 +292,40 @@ feature 'Legislation' do
|
||||
|
||||
include_examples "not published permissions", :legislation_process_proposals_path
|
||||
end
|
||||
|
||||
context "Milestones" do
|
||||
scenario "Without milestones" do
|
||||
process = create(:legislation_process, :upcoming_proposals_phase)
|
||||
|
||||
visit legislation_process_path(process)
|
||||
|
||||
within(".legislation-process-list") do
|
||||
expect(page).not_to have_css "li.milestones"
|
||||
end
|
||||
end
|
||||
|
||||
scenario "With milestones" do
|
||||
process = create(:legislation_process, :upcoming_proposals_phase)
|
||||
create(:milestone,
|
||||
milestoneable: process,
|
||||
description: "Something important happened",
|
||||
publication_date: Date.new(2018, 3, 22)
|
||||
)
|
||||
|
||||
visit legislation_process_path(process)
|
||||
|
||||
within(".legislation-process-list li.milestones") do
|
||||
click_link "Following 22 Mar 2018"
|
||||
end
|
||||
|
||||
within(".legislation-process-list .is-active") do
|
||||
expect(page).to have_link "Following 22 Mar 2018"
|
||||
end
|
||||
|
||||
within(".tab-milestones") do
|
||||
expect(page).to have_content "Something important happened"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user