mirror of
https://github.com/docusealco/docuseal
synced 2026-11-04 14:42:32 -05:00
add self source
This commit is contained in:
1 parent
6f1cc34433
commit
73c4f158ff
3 files changed
+11
-7
No files matched your search
@@ -7,14 +7,14 @@ class StartFormSelfController < ApplicationController
|
||||
before_action :authorize_start!
|
||||
|
||||
def update
|
||||
@submitter = Submitters::StartForm.build_submitters_scope(@template, exclude_completed: true)
|
||||
@submitter = Submitters::StartForm.build_submitters_scope(@template, exclude_completed: true, source: :self)
|
||||
.find_or_initialize_by(email: current_user.email)
|
||||
|
||||
if (is_new_record = @submitter.new_record?)
|
||||
@submitter.name = current_user.full_name
|
||||
|
||||
Submitters::StartForm.assign_submission_attributes(
|
||||
@submitter, @template, ip: request.remote_ip, user_agent: request.user_agent
|
||||
@submitter, @template, ip: request.remote_ip, user_agent: request.user_agent, source: :self
|
||||
)
|
||||
|
||||
Submissions::AssignDefinedSubmitters.call(@submitter.submission)
|
||||
|
||||
@@ -112,7 +112,8 @@ class Submission < ApplicationRecord
|
||||
api: 'api',
|
||||
embed: 'embed',
|
||||
mcp: 'mcp',
|
||||
link: 'link'
|
||||
link: 'link',
|
||||
self: 'self'
|
||||
}, scope: false, prefix: true
|
||||
|
||||
enum :submitters_order, {
|
||||
|
||||
@@ -57,9 +57,12 @@ module Submitters
|
||||
submitter
|
||||
end
|
||||
|
||||
def build_submitters_scope(template, exclude_completed: false)
|
||||
def build_submitters_scope(template, exclude_completed: false, source: nil)
|
||||
submissions = template.submissions.non_expired.active
|
||||
submissions = submissions.where(source:) if source
|
||||
|
||||
Submitter
|
||||
.where(submission: template.submissions.non_expired.active)
|
||||
.where(submission: submissions)
|
||||
.where(uuid: template.submitters.pluck('uuid').compact_blank)
|
||||
.order(id: :desc)
|
||||
.where(declined_at: nil)
|
||||
@@ -67,7 +70,7 @@ module Submitters
|
||||
.then { |rel| exclude_completed ? rel.where(completed_at: nil) : rel }
|
||||
end
|
||||
|
||||
def assign_submission_attributes(submitter, template, ip:, user_agent:, resubmit_submitter: nil)
|
||||
def assign_submission_attributes(submitter, template, ip:, user_agent:, source: :link, resubmit_submitter: nil)
|
||||
submitter.assign_attributes(
|
||||
uuid: first_submitter_uuid(template),
|
||||
ip:,
|
||||
@@ -90,7 +93,7 @@ module Submitters
|
||||
template_submitters: template.submitters,
|
||||
expire_at: Templates.build_default_expire_at(template),
|
||||
submitters: [submitter],
|
||||
source: :link)
|
||||
source:)
|
||||
|
||||
Submissions::CreateFromSubmitters.maybe_set_dynamic_documents(submitter.submission)
|
||||
|
||||
|
||||
Reference in new issue
Block a user