diff --git a/app/controllers/members_controller.rb b/app/controllers/members_controller.rb index 6f49009..b5454a7 100644 --- a/app/controllers/members_controller.rb +++ b/app/controllers/members_controller.rb @@ -6,7 +6,7 @@ class MembersController < ApplicationController toggle_active_posts @member.destroy - OrganizationNotifier.member_deleted(@member).deliver_later + OrganizationNotifier.member_deleted(@member.user.username, current_organization).deliver_later redirect_to request.referer.include?(organizations_path) ? organizations_path : manage_users_path end diff --git a/app/jobs/membership_warning_job.rb b/app/jobs/membership_warning_job.rb index b46e06e..981b624 100644 --- a/app/jobs/membership_warning_job.rb +++ b/app/jobs/membership_warning_job.rb @@ -3,7 +3,7 @@ class MembershipWarningJob < ActiveJob::Base def perform User.without_memberships.find_each do |user| - if user.created_at < 15.days.ago && user.no_membership_warning? + if user.created_at.to_date == 15.days.ago.to_date && user.no_membership_warning? OrganizationNotifier.no_membership_warning(user).deliver_now end end diff --git a/app/mailers/organization_notifier.rb b/app/mailers/organization_notifier.rb index df1e048..2625b98 100644 --- a/app/mailers/organization_notifier.rb +++ b/app/mailers/organization_notifier.rb @@ -36,9 +36,8 @@ class OrganizationNotifier < ActionMailer::Base end end - def member_deleted(member) - @user = member.user - organization = member.organization + def member_deleted(username, organization) + @username = username org_managers = organization.all_managers I18n.with_locale(org_managers.first&.locale) do @@ -53,6 +52,7 @@ class OrganizationNotifier < ActionMailer::Base I18n.with_locale(user.locale) do mail( subject: "Do not forget to join a Timebank", + to: user.email ) end end diff --git a/app/views/organization_notifier/member_deleted.html.erb b/app/views/organization_notifier/member_deleted.html.erb index e2b838f..7e1d11a 100644 --- a/app/views/organization_notifier/member_deleted.html.erb +++ b/app/views/organization_notifier/member_deleted.html.erb @@ -1 +1 @@ -<%= t("organization_notifier.member_deleted.body", user: @user.username) %> +<%= t("organization_notifier.member_deleted.body", username: @username) %> diff --git a/spec/jobs/membership_warning_job.rb b/spec/jobs/membership_warning_job.rb index 5c308db..a9d59bc 100644 --- a/spec/jobs/membership_warning_job.rb +++ b/spec/jobs/membership_warning_job.rb @@ -3,7 +3,7 @@ RSpec.describe MembershipWarningJob, type: :job do let!(:user) { Fabricate(:user) } let!(:member) { Fabricate(:member, organization: org, user: user) } let!(:user_with_no_memberships) { Fabricate(:user) } - let!(:user_with_no_memberships2) { Fabricate(:user, created_at: 16.days.ago) } + let!(:user_with_no_memberships2) { Fabricate(:user, created_at: 15.days.ago) } describe '#perform' do it "should send emails in user's locale" do