Add milestones to legislation process view

This commit is contained in:
Javi Martín
2018-11-19 17:57:39 +01:00
parent 87f7e6aa2e
commit b95ca9df8a
8 changed files with 62 additions and 1 deletions

View File

@@ -87,6 +87,10 @@ class Legislation::ProcessesController < Legislation::BaseController
end
end
def milestones
@phase = :milestones
end
def proposals
set_process
@phase = :proposals_phase

View File

@@ -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

View File

@@ -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>

View 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>

View File

@@ -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:

View File

@@ -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:

View File

@@ -6,6 +6,7 @@ namespace :legislation do
get :allegations
get :result_publication
get :proposals
get :milestones
end
resources :questions, only: [:show] do

View File

@@ -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