add cancan for authorization

This commit is contained in:
Alex Turchyn
2023-09-17 00:45:57 +03:00
parent f89c50d096
commit 2f1843151d
58 changed files with 343 additions and 186 deletions
@@ -1,18 +1,16 @@
# frozen_string_literal: true
class SubmittersSendEmailController < ApplicationController
load_and_authorize_resource :submitter, id_param: :submitter_slug, find_by: :slug
def create
submitter = Submitter.joins(:template)
.where(template: { account_id: current_account.id })
.find_by!(slug: params[:submitter_slug])
SubmitterMailer.invitation_email(@submitter).deliver_later!
SubmitterMailer.invitation_email(submitter).deliver_later!
SubmissionEvent.create!(submitter: @submitter, event_type: 'send_email')
SubmissionEvent.create!(submitter:, event_type: 'send_email')
@submitter.sent_at ||= Time.current
@submitter.save!
submitter.sent_at ||= Time.current
submitter.save!
redirect_back(fallback_location: submission_path(submitter.submission), notice: 'Email has been sent')
redirect_back(fallback_location: submission_path(@submitter.submission), notice: 'Email has been sent')
end
end