allow signing link with multiple signers
This commit is contained in:
@@ -22,7 +22,7 @@ class StartFormController < ApplicationController
|
|||||||
if @submitter.completed_at?
|
if @submitter.completed_at?
|
||||||
redirect_to start_form_completed_path(@template.slug, email: submitter_params[:email])
|
redirect_to start_form_completed_path(@template.slug, email: submitter_params[:email])
|
||||||
else
|
else
|
||||||
if @template.submitters.to_a.size > 1 && @submitter.new_record?
|
if @template.submitters.to_a.size > 2 && @submitter.new_record?
|
||||||
@error_message = 'Not found'
|
@error_message = 'Not found'
|
||||||
|
|
||||||
return render :show
|
return render :show
|
||||||
@@ -63,9 +63,7 @@ class StartFormController < ApplicationController
|
|||||||
|
|
||||||
def assign_submission_attributes(submitter, template)
|
def assign_submission_attributes(submitter, template)
|
||||||
resubmit_submitter =
|
resubmit_submitter =
|
||||||
if params[:resubmit].present?
|
(Submitter.where(submission: template.submissions).find_by(slug: params[:resubmit]) if params[:resubmit].present?)
|
||||||
Submitter.where(submission: @template.submissions).find_by(slug: params[:resubmit])
|
|
||||||
end
|
|
||||||
|
|
||||||
submitter.assign_attributes(
|
submitter.assign_attributes(
|
||||||
uuid: template.submitters.first['uuid'],
|
uuid: template.submitters.first['uuid'],
|
||||||
@@ -87,11 +85,25 @@ class StartFormController < ApplicationController
|
|||||||
template_submitters: template.submitters,
|
template_submitters: template.submitters,
|
||||||
source: :link)
|
source: :link)
|
||||||
|
|
||||||
|
maybe_assign_default_second_submitter(submitter.submission)
|
||||||
|
|
||||||
submitter.account_id = submitter.submission.account_id
|
submitter.account_id = submitter.submission.account_id
|
||||||
|
|
||||||
submitter
|
submitter
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def maybe_assign_default_second_submitter(submission)
|
||||||
|
return unless submission.new_record?
|
||||||
|
return if submission.template.submitters.to_a.size != 2
|
||||||
|
|
||||||
|
submission.submitters_order = 'preserved'
|
||||||
|
submission.submitters.new(
|
||||||
|
account_id: submission.account_id,
|
||||||
|
uuid: submission.template.submitters.second['uuid'],
|
||||||
|
email: submission.template.author.email
|
||||||
|
)
|
||||||
|
end
|
||||||
|
|
||||||
def submitter_params
|
def submitter_params
|
||||||
params.require(:submitter).permit(:email, :phone, :name).tap do |attrs|
|
params.require(:submitter).permit(:email, :phone, :name).tap do |attrs|
|
||||||
attrs[:email] = Submissions.normalize_email(attrs[:email])
|
attrs[:email] = Submissions.normalize_email(attrs[:email])
|
||||||
|
|||||||
Reference in New Issue
Block a user