sign_in: remove hack for displaying the procedure context

Before there was no way to display the informations about a procedure
without having a dossier. Thus an empty dossier was created.

Now we can display the informations of a procedure using a @procedure
instance variable, so we can move this hack away.
This commit is contained in:
Pierre de La Morinerie 2019-01-08 07:30:39 +00:00
parent 5d6005dbe9
commit 62ee710382
4 changed files with 41 additions and 8 deletions

View file

@ -6,8 +6,8 @@ class Users::SessionsController < Sessions::SessionsController
# GET /resource/sign_in
def new
if user_return_to_procedure_id.present? # WTF ?
@dossier = Dossier.new(procedure: Procedure.active(user_return_to_procedure_id))
if user_return_to_procedure_id.present?
@procedure = Procedure.active(user_return_to_procedure_id)
end
@user = User.new

View file

@ -1,10 +1,12 @@
- procedure = @procedure || @dossier&.procedure || nil
- content_for :content do
.two-columns.procedure-context
.columns-container
.column.procedure-preview
- if @dossier
= render partial: 'layouts/commencer/procedure_description', locals: { procedure: @dossier.procedure }
- if procedure
= render partial: 'layouts/commencer/procedure_description', locals: { procedure: procedure }
- else
= render partial: 'layouts/commencer/no_procedure'
@ -12,8 +14,9 @@
= yield
- content_for :footer do
/ TODO: display the procedure footer even if there is no dossier yet
- if @dossier
= render partial: 'new_user/procedure_footer', locals: { procedure: @dossier.procedure, dossier: @dossier }
- if procedure
= render partial: 'new_user/procedure_footer', locals: { procedure: procedure, dossier: @dossier }
- else
= render partial: 'new_user/dossiers/index_footer'
= render template: 'layouts/application'

View file

@ -15,7 +15,7 @@
%li.footer-column
%h3.footer-header Poser une question sur votre dossier :
%p
- if dossier.id && !dossier.brouillon?
- if dossier.present? && !dossier.brouillon?
Directement
= link_to "par la messagerie", messagerie_dossier_path(dossier)
- else

View file

@ -8,6 +8,24 @@ describe 'layouts/procedure_context.html.haml', type: :view do
render html: 'Column content', layout: 'layouts/procedure_context.html.haml'
end
context 'when a procedure is assigned' do
before do
assign(:procedure, procedure)
end
it 'renders a description of the procedure' do
expect(subject).to have_text(procedure.libelle)
expect(subject).to have_text(procedure.description)
end
it 'renders the inner content' do
expect(subject).to have_text('Column content')
end
it 'renders the procedure footer' do
expect(subject).to have_text(procedure.service.nom)
expect(subject).to have_text(procedure.service.email)
end
end
context 'when a dossier is assigned' do
@ -30,5 +48,17 @@ describe 'layouts/procedure_context.html.haml', type: :view do
end
end
context 'when neither procedure or dossier are assigned' do
it 'renders a placeholder for the procedure' do
expect(subject).to have_selector('.no-procedure')
end
it 'renders the inner content' do
expect(subject).to have_text('Column content')
end
it 'renders a generic footer' do
expect(subject).to have_text('Mentions légales')
end
end
end