instructeurs: alias instructeur.email
This also means we need to replace instances of `pluck` on the email column.
This commit is contained in:
parent
cd478b489e
commit
a462edb9bc
10 changed files with 15 additions and 11 deletions
|
@ -44,9 +44,9 @@ module Instructeurs
|
||||||
end
|
end
|
||||||
|
|
||||||
def personnes_impliquees
|
def personnes_impliquees
|
||||||
@following_instructeurs_emails = dossier.followers_instructeurs.pluck(:email)
|
@following_instructeurs_emails = dossier.followers_instructeurs.map(&:email)
|
||||||
previous_followers = dossier.previous_followers_instructeurs - dossier.followers_instructeurs
|
previous_followers = dossier.previous_followers_instructeurs - dossier.followers_instructeurs
|
||||||
@previous_following_instructeurs_emails = previous_followers.pluck(:email)
|
@previous_following_instructeurs_emails = previous_followers.map(&:email)
|
||||||
@avis_emails = dossier.avis.includes(:instructeur).map(&:email_to_display)
|
@avis_emails = dossier.avis.includes(:instructeur).map(&:email_to_display)
|
||||||
@invites_emails = dossier.invites.map(&:email)
|
@invites_emails = dossier.invites.map(&:email)
|
||||||
@potential_recipients = dossier.groupe_instructeur.instructeurs.reject { |g| g == current_instructeur }
|
@potential_recipients = dossier.groupe_instructeur.instructeurs.reject { |g| g == current_instructeur }
|
||||||
|
|
|
@ -8,7 +8,7 @@ class GroupeInstructeurMailer < ApplicationMailer
|
||||||
|
|
||||||
subject = "Ajout d’un instructeur dans le groupe \"#{group.label}\""
|
subject = "Ajout d’un instructeur dans le groupe \"#{group.label}\""
|
||||||
|
|
||||||
emails = @group.instructeurs.pluck(:email)
|
emails = @group.instructeurs.map(&:email)
|
||||||
mail(bcc: emails, subject: subject)
|
mail(bcc: emails, subject: subject)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ class GroupeInstructeurMailer < ApplicationMailer
|
||||||
|
|
||||||
subject = "Suppression d’un instructeur dans le groupe \"#{group.label}\""
|
subject = "Suppression d’un instructeur dans le groupe \"#{group.label}\""
|
||||||
|
|
||||||
emails = @group.instructeurs.pluck(:email)
|
emails = @group.instructeurs.map(&:email)
|
||||||
mail(bcc: emails, subject: subject)
|
mail(bcc: emails, subject: subject)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -365,7 +365,7 @@ class Dossier < ApplicationRecord
|
||||||
update(hidden_at: deleted_dossier.deleted_at)
|
update(hidden_at: deleted_dossier.deleted_at)
|
||||||
|
|
||||||
if en_construction?
|
if en_construction?
|
||||||
administration_emails = followers_instructeurs.present? ? followers_instructeurs.pluck(:email) : procedure.administrateurs.pluck(:email)
|
administration_emails = followers_instructeurs.present? ? followers_instructeurs.map(&:email) : procedure.administrateurs.pluck(:email)
|
||||||
administration_emails.each do |email|
|
administration_emails.each do |email|
|
||||||
DossierMailer.notify_deletion_to_administration(deleted_dossier, email).deliver_later
|
DossierMailer.notify_deletion_to_administration(deleted_dossier, email).deliver_later
|
||||||
end
|
end
|
||||||
|
|
|
@ -28,6 +28,10 @@ class Instructeur < ApplicationRecord
|
||||||
Instructeur.eager_load(:user).find_by(users: { email: email })
|
Instructeur.eager_load(:user).find_by(users: { email: email })
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def email
|
||||||
|
user.email
|
||||||
|
end
|
||||||
|
|
||||||
def follow(dossier)
|
def follow(dossier)
|
||||||
begin
|
begin
|
||||||
followed_dossiers << dossier
|
followed_dossiers << dossier
|
||||||
|
|
|
@ -94,7 +94,7 @@ class DossierSerializer < ActiveModel::Serializer
|
||||||
end
|
end
|
||||||
|
|
||||||
def instructeurs
|
def instructeurs
|
||||||
object.followers_instructeurs.pluck(:email)
|
object.followers_instructeurs.map(&:email)
|
||||||
end
|
end
|
||||||
|
|
||||||
def created_at
|
def created_at
|
||||||
|
|
|
@ -50,7 +50,7 @@ describe Instructeurs::GroupeInstructeursController, type: :controller do
|
||||||
context 'of a new instructeur' do
|
context 'of a new instructeur' do
|
||||||
let(:new_instructeur_email) { 'new_instructeur@mail.com' }
|
let(:new_instructeur_email) { 'new_instructeur@mail.com' }
|
||||||
|
|
||||||
it { expect(gi_1_2.instructeurs.pluck(:email)).to include(new_instructeur_email) }
|
it { expect(gi_1_2.instructeurs.map(&:email)).to include(new_instructeur_email) }
|
||||||
it { expect(flash.notice).to be_present }
|
it { expect(flash.notice).to be_present }
|
||||||
it { expect(response).to redirect_to(instructeur_groupe_path(procedure, gi_1_2)) }
|
it { expect(response).to redirect_to(instructeur_groupe_path(procedure, gi_1_2)) }
|
||||||
end
|
end
|
||||||
|
|
|
@ -100,7 +100,7 @@ describe NewAdministrateur::GroupeInstructeursController, type: :controller do
|
||||||
context 'of a new instructeur' do
|
context 'of a new instructeur' do
|
||||||
let(:new_instructeur_email) { 'new_instructeur@mail.com' }
|
let(:new_instructeur_email) { 'new_instructeur@mail.com' }
|
||||||
|
|
||||||
it { expect(gi_1_1.instructeurs.pluck(:email)).to include(new_instructeur_email) }
|
it { expect(gi_1_1.instructeurs.map(&:email)).to include(new_instructeur_email) }
|
||||||
it { expect(flash.notice).to be_present }
|
it { expect(flash.notice).to be_present }
|
||||||
it { expect(response).to redirect_to(procedure_groupe_instructeur_path(procedure, gi_1_1)) }
|
it { expect(response).to redirect_to(procedure_groupe_instructeur_path(procedure, gi_1_1)) }
|
||||||
end
|
end
|
||||||
|
|
|
@ -401,7 +401,7 @@ describe Procedure do
|
||||||
subject { @procedure }
|
subject { @procedure }
|
||||||
|
|
||||||
it { expect(subject.parent_procedure).to eq(procedure) }
|
it { expect(subject.parent_procedure).to eq(procedure) }
|
||||||
it { expect(subject.defaut_groupe_instructeur.instructeurs.pluck(:email)).to eq([administrateur.email]) }
|
it { expect(subject.defaut_groupe_instructeur.instructeurs.map(&:email)).to eq([administrateur.email]) }
|
||||||
|
|
||||||
it 'should duplicate specific objects with different id' do
|
it 'should duplicate specific objects with different id' do
|
||||||
expect(subject.id).not_to eq(procedure.id)
|
expect(subject.id).not_to eq(procedure.id)
|
||||||
|
|
|
@ -9,7 +9,7 @@ describe 'admin/assigns/show.html.haml', type: :view do
|
||||||
|
|
||||||
before do
|
before do
|
||||||
assign(:procedure, procedure)
|
assign(:procedure, procedure)
|
||||||
assign(:instructeur, Instructeur.new)
|
assign(:instructeur, create(:instructeur))
|
||||||
|
|
||||||
assign(:instructeurs_assign, (smart_listing_create :instructeurs_assign,
|
assign(:instructeurs_assign, (smart_listing_create :instructeurs_assign,
|
||||||
assign_instructeurs,
|
assign_instructeurs,
|
||||||
|
|
|
@ -8,7 +8,7 @@ describe 'admin/instructeurs/index.html.haml', type: :view do
|
||||||
admin.instructeurs,
|
admin.instructeurs,
|
||||||
partial: "admin/instructeurs/list",
|
partial: "admin/instructeurs/list",
|
||||||
array: true))
|
array: true))
|
||||||
assign(:instructeur, Instructeur.new())
|
assign(:instructeur, create(:instructeur))
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'Aucun instructeur' do
|
context 'Aucun instructeur' do
|
||||||
|
|
Loading…
Reference in a new issue