mark as opened on form view
This commit is contained in:
@@ -8,6 +8,9 @@ module Api
|
|||||||
def create
|
def create
|
||||||
submitter = Submitter.find_by!(slug: params[:submitter_slug])
|
submitter = Submitter.find_by!(slug: params[:submitter_slug])
|
||||||
|
|
||||||
|
submitter.opened_at = Time.current
|
||||||
|
submitter.save
|
||||||
|
|
||||||
SubmissionEvents.create_with_tracking_data(submitter, 'view_form', request)
|
SubmissionEvents.create_with_tracking_data(submitter, 'view_form', request)
|
||||||
|
|
||||||
SendFormViewedWebhookRequestJob.perform_later(submitter)
|
SendFormViewedWebhookRequestJob.perform_later(submitter)
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ module Submitters
|
|||||||
serialize_params = {
|
serialize_params = {
|
||||||
include: {},
|
include: {},
|
||||||
only: %i[id slug uuid name email phone completed_at external_id
|
only: %i[id slug uuid name email phone completed_at external_id
|
||||||
metadata opened_at sent_at created_at updated_at],
|
submission_id metadata opened_at sent_at created_at updated_at],
|
||||||
methods: %i[status application_key]
|
methods: %i[status application_key]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -16,15 +16,24 @@ module Submitters
|
|||||||
submitter_name = (submitter.submission.template_submitters ||
|
submitter_name = (submitter.submission.template_submitters ||
|
||||||
submitter.submission.template.submitters).find { |e| e['uuid'] == submitter.uuid }['name']
|
submitter.submission.template.submitters).find { |e| e['uuid'] == submitter.uuid }['name']
|
||||||
|
|
||||||
submitter.as_json(methods: %i[application_key],
|
submitter.as_json(methods: %i[status application_key],
|
||||||
include: [template: { only: %i[id name external_id created_at updated_at] }])
|
only: %i[id submission_id email phone name ua ip sent_at opened_at
|
||||||
|
completed_at created_at updated_at external_id metadata])
|
||||||
.except('uuid', 'values', 'slug')
|
.except('uuid', 'values', 'slug')
|
||||||
.merge('values' => values,
|
.merge('role' => submitter_name,
|
||||||
|
'preferences' => submitter.preferences.except('default_values'),
|
||||||
|
'values' => values,
|
||||||
'documents' => documents,
|
'documents' => documents,
|
||||||
'audit_log_url' => submitter.submission.audit_log_url,
|
'audit_log_url' => submitter.submission.audit_log_url,
|
||||||
'submission_url' => r.submissions_preview_url(submitter.submission.slug,
|
'submission_url' => r.submissions_preview_url(submitter.submission.slug,
|
||||||
**Docuseal.default_url_options),
|
**Docuseal.default_url_options),
|
||||||
'role' => submitter_name)
|
'template' => submitter.template.as_json(only: %i[id name external_id created_at
|
||||||
|
updated_at]),
|
||||||
|
'submission' => {
|
||||||
|
**submitter.submission.slice(:id, :audit_log_url, :created_at),
|
||||||
|
status: submitter.submission.submitters.all?(&:completed_at?) ? 'completed' : 'pending',
|
||||||
|
url: r.submissions_preview_url(submitter.submission.slug, **Docuseal.default_url_options)
|
||||||
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
def build_values_array(submitter)
|
def build_values_array(submitter)
|
||||||
|
|||||||
Reference in New Issue
Block a user