Skip to content

Commit

Permalink
Merge branch 'dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
gregoirenovel committed Sep 12, 2018
2 parents 8ab5dc9 + c0d36ca commit ff9ab0c
Show file tree
Hide file tree
Showing 19 changed files with 100 additions and 40 deletions.
26 changes: 20 additions & 6 deletions app/assets/stylesheets/new_design/new_footer.scss
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ footer {
}

.dossier-footer {
@include vertical-padding(48px);
@include vertical-padding(30px);
line-height: 24px;
}

Expand All @@ -32,11 +32,10 @@ footer {
flex-grow: 1;
min-width: 280px;
margin: 0 20px;
margin-bottom: 20px;
margin-bottom: 30px;

@media (max-width: 1000px) {
@media (max-width: 550px) {
width: 100%;
margin-bottom: 14px;
}
}

Expand Down Expand Up @@ -98,8 +97,23 @@ footer {
}

.footer-bottom-line {
margin-top: 30px;
margin-bottom: -30px;
text-align: center;
font-size: small;

@media (max-width: 550px) {
text-align: left;
}
}

.footer-row {
margin-bottom: 30px;

&:last-child {
margin-bottom: 0;
}

// In this case, the bottom margin is defined directly on each individual column
&.footer-columns {
margin-bottom: 0;
}
}
6 changes: 6 additions & 0 deletions app/assets/stylesheets/new_design/personnes_impliquees.scss
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,10 @@
list-style-type: disc;
margin-left: 16px;
}

// scss-lint:disable SelectorFormat
.form .select2-container .select2-selection__rendered {
padding: 12px;
}
// scss-lint:enable
}
10 changes: 7 additions & 3 deletions app/controllers/new_gestionnaire/dossiers_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,13 @@ def personnes_impliquees
@potential_recipients = procedure.gestionnaires.reject { |g| g == current_gestionnaire }
end

def envoyer_a_instructeur
recipient = Gestionnaire.find(params[:recipient])
GestionnaireMailer.send_dossier(current_gestionnaire, dossier, recipient).deliver_later
def send_to_instructeurs
recipients = Gestionnaire.find(params[:recipients])

recipients.each do |recipient|
GestionnaireMailer.send_dossier(current_gestionnaire, dossier, recipient).deliver_later
end

flash.notice = "Dossier envoyé"
redirect_to(personnes_impliquees_gestionnaire_dossier_path(procedure, dossier))
end
Expand Down
9 changes: 8 additions & 1 deletion app/javascript/new_design/select2.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,17 @@ addEventListener('turbolinks:load', () => {
width: '100%'
});

$('select.select2-limited').select2({
$('.columns-form select.select2-limited').select2({
language: 'fr',
placeholder: 'Sélectionnez des colonnes',
maximumSelectionLength: '5',
width: '300px'
});

$('.recipients-form select.select2-limited').select2({
language: 'fr',
placeholder: 'Sélectionnez des instructeurs',
maximumSelectionLength: '30',
width: '300px'
});
});
2 changes: 1 addition & 1 deletion app/views/new_gestionnaire/avis/messagerie.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

= render partial: 'header', locals: { avis: @avis, dossier: @dossier }

= render partial: "shared/dossiers/messagerie", locals: { dossier: @dossier, user_email: current_gestionnaire.email, messagerie_seen_at: nil, new_commentaire: @commentaire, form_url: commentaire_gestionnaire_avis_path(@avis) }
= render partial: "shared/dossiers/messagerie", locals: { dossier: @dossier, connected_user: current_gestionnaire, messagerie_seen_at: nil, new_commentaire: @commentaire, form_url: commentaire_gestionnaire_avis_path(@avis) }
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,11 @@
%p.tab-paragraph
Vous êtes le seul instructeur assigné sur cette démarche
- else
= form_for dossier, url: envoyer_a_instructeur_gestionnaire_dossier_path(dossier.procedure, dossier), method: :post, html: { class: 'form' } do |f|
.flex.justify-start.align-baseline
= select_tag(:recipient, options_from_collection_for_select(potential_recipients, :id, :email))
= form_for dossier, url: send_to_instructeurs_gestionnaire_dossier_path(dossier.procedure, dossier), method: :post, html: { class: 'form recipients-form' } do |f|
.flex.justify-start.align-start
= select_tag(:recipients,
options_from_collection_for_select(potential_recipients, :id, :email),
multiple: true,
class: 'select2-limited',
placeholder: '')
= f.submit "Envoyer", class: "button large send gap-left"
2 changes: 1 addition & 1 deletion app/views/new_gestionnaire/dossiers/messagerie.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

= render partial: "header", locals: { dossier: @dossier }

= render partial: "shared/dossiers/messagerie", locals: { dossier: @dossier, user_email: current_gestionnaire.email, messagerie_seen_at: @messagerie_seen_at , new_commentaire: @commentaire, form_url: commentaire_gestionnaire_dossier_path(@dossier.procedure, @dossier) }
= render partial: "shared/dossiers/messagerie", locals: { dossier: @dossier, connected_user: current_gestionnaire, messagerie_seen_at: @messagerie_seen_at , new_commentaire: @commentaire, form_url: commentaire_gestionnaire_dossier_path(@dossier.procedure, @dossier) }
2 changes: 1 addition & 1 deletion app/views/new_gestionnaire/dossiers/print.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@
%ul.messages-list
- @dossier.commentaires.each do |commentaire|
%li
= render partial: "shared/dossiers/messages/message", locals: { commentaire: commentaire, user_email: current_gestionnaire.email, messagerie_seen_at: nil }
= render partial: "shared/dossiers/messages/message", locals: { commentaire: commentaire, connected_user: current_gestionnaire, messagerie_seen_at: nil }

%script{ type: "text/javascript" }
window.print();
2 changes: 1 addition & 1 deletion app/views/new_gestionnaire/procedures/show.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@
%span.button.dropdown
Personnaliser
.dropdown-content.fade-in-down
= form_tag update_displayed_fields_gestionnaire_procedure_path(@procedure), method: :patch, class: 'dropdown-form' do
= form_tag update_displayed_fields_gestionnaire_procedure_path(@procedure), method: :patch, class: 'dropdown-form columns-form' do
= select_tag :values,
options_for_select(@procedure.fields_for_select,
selected: @displayed_fields_values),
Expand Down
21 changes: 10 additions & 11 deletions app/views/new_user/dossiers/_footer.html.haml
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
%footer.dossier-footer
.container
%ul.footer-columns

- service = dossier.procedure.service
- if service.present?
- service = dossier.procedure.service
- if service.present?
%ul.footer-row.footer-columns
%li.footer-column
%h3.footer-header Cette démarche est gérée par :
%p
Expand All @@ -29,14 +28,14 @@
%p
Horaires : #{ service.horaires.sub(/\S/, &:downcase) }

- politiques = politiques_conservation_de_donnees(dossier.procedure)
- if politiques.present?
%li.footer-column
%h3.footer-header Conservation des données :
- politiques.each do |politique|
%p= politique
- politiques = politiques_conservation_de_donnees(dossier.procedure)
- if politiques.present?
%li.footer-column
%h3.footer-header Conservation des données :
- politiques.each do |politique|
%p= politique

.footer-bottom-line
.footer-row.footer-bottom-line
= link_to "Accessibilité", accessibilite_index_path, :class => "footer-link"
= link_to "CGU", CGU_URL, :class => "footer-link", :target => "_blank", rel: "noopener noreferrer"
Expand Down
2 changes: 1 addition & 1 deletion app/views/new_user/dossiers/messagerie.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@
%p.messagerie-explanation
La messagerie vous permet de contacter l’instructeur en charge de votre dossier.

= render partial: "shared/dossiers/messagerie", locals: { dossier: @dossier, user_email: current_user.email, messagerie_seen_at: nil, new_commentaire: @commentaire, form_url: commentaire_dossier_path(@dossier) }
= render partial: "shared/dossiers/messagerie", locals: { dossier: @dossier, connected_user: current_user, messagerie_seen_at: nil, new_commentaire: @commentaire, form_url: commentaire_dossier_path(@dossier) }
4 changes: 2 additions & 2 deletions app/views/shared/dossiers/_messagerie.html.haml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
.messagerie.container
%ul.messages-list
- dossier.commentaires.each do |commentaire|
%li.message{ class: commentaire_is_from_me_class(commentaire, user_email) }
= render partial: "shared/dossiers/messages/message", locals: { commentaire: commentaire, user_email: user_email, messagerie_seen_at: messagerie_seen_at }
%li.message{ class: commentaire_is_from_me_class(commentaire, connected_user.email) }
= render partial: "shared/dossiers/messages/message", locals: { commentaire: commentaire, connected_user: connected_user, messagerie_seen_at: messagerie_seen_at }

= render partial: "shared/dossiers/messages/form", locals: { commentaire: new_commentaire, form_url: form_url }
4 changes: 2 additions & 2 deletions app/views/shared/dossiers/messages/_message.html.haml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
= render partial: 'shared/dossiers/messages/message_icon', locals: { commentaire: commentaire, user_email: user_email }
= render partial: 'shared/dossiers/messages/message_icon', locals: { commentaire: commentaire, connected_user: connected_user }

.width-100
%h2
%span.mail
= render partial: 'shared/dossiers/messages/message_issuer', locals: { commentaire: commentaire, user_email: user_email }
= render partial: 'shared/dossiers/messages/message_issuer', locals: { commentaire: commentaire, connected_user: connected_user }
- if commentaire_is_from_guest(commentaire)
%span.guest Invité
%span.date{ class: highlight_if_unseen_class(messagerie_seen_at, commentaire.created_at) }
Expand Down
2 changes: 1 addition & 1 deletion app/views/shared/dossiers/messages/_message_icon.html.haml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
- case commentaire.email
- when user_email
- when connected_user.email
= image_tag('icons/account-circle.svg', class: 'person-icon')
- when OLD_CONTACT_EMAIL
- when CONTACT_EMAIL
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
- case commentaire.email
- when user_email
- when connected_user.email
Vous
- when OLD_CONTACT_EMAIL
- when CONTACT_EMAIL
Expand Down
2 changes: 1 addition & 1 deletion config/routes.rb
Original file line number Diff line number Diff line change
Expand Up @@ -322,7 +322,7 @@
post 'passer-en-instruction' => 'dossiers#passer_en_instruction'
post 'repasser-en-construction' => 'dossiers#repasser_en_construction'
post 'terminer'
post 'envoyer-a-instructeur' => 'dossiers#envoyer_a_instructeur'
post 'send-to-instructeurs' => 'dossiers#send_to_instructeurs'
scope :carte do
get 'position'
end
Expand Down
6 changes: 3 additions & 3 deletions spec/controllers/new_gestionnaire/dossiers_controller_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
end
end

describe '#envoyer_a_instructeur' do
describe '#send_to_instructeurs' do
let(:recipient) { create(:gestionnaire) }
let(:gestionnaires) { [gestionnaire, recipient] }
let(:mail) { double("mail") }
Expand All @@ -45,9 +45,9 @@
.and_return(mail)

post(
:envoyer_a_instructeur,
:send_to_instructeurs,
params: {
recipient: recipient,
recipients: [recipient],
procedure_id: procedure.id,
dossier_id: dossier.id
}
Expand Down
26 changes: 26 additions & 0 deletions spec/features/new_gestionnaire/gestionnaire_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,32 @@
expect(page).to have_text(gestionnaire2.email)
end

scenario 'A gestionnaire can send a dossier to several instructeurs', js: true do
instructeur_2 = FactoryBot.create(:gestionnaire)
instructeur_3 = FactoryBot.create(:gestionnaire)
procedure.gestionnaires << [instructeur_2, instructeur_3]

send_dossier = double()
expect(GestionnaireMailer).to receive(:send_dossier).and_return(send_dossier).twice
expect(send_dossier).to receive(:deliver_later).twice

log_in(gestionnaire.email, password)

click_on procedure.libelle
click_on dossier.user.email

click_on 'Personnes impliquées'

first('.select2-container', minimum: 1).click
find('li.select2-results__option[role="treeitem"]', text: instructeur_2.email).click
first('.select2-container', minimum: 1).click
find('li.select2-results__option[role="treeitem"]', text: instructeur_3.email).click

click_on 'Envoyer'

expect(page).to have_text("Dossier envoyé")
end

def log_in(email, password)
visit '/'
click_on 'Connexion'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
describe 'shared/dossiers/messages/message.html.haml', type: :view do
before { view.extend DossierHelper }

subject { render 'shared/dossiers/messages/message.html.haml', commentaire: commentaire, messagerie_seen_at: seen_at, user_email: dossier.user.email }
subject { render 'shared/dossiers/messages/message.html.haml', commentaire: commentaire, messagerie_seen_at: seen_at, connected_user: dossier.user }

let(:dossier) { create(:dossier) }
let(:commentaire) { create(:commentaire, dossier: dossier) }
Expand Down

0 comments on commit ff9ab0c

Please sign in to comment.