Skip to content
Snippets Groups Projects
Commit 7391e271 authored by Lucas García's avatar Lucas García
Browse files

Merge branch 'feat/optional-source-xml' into 'main'

soruce_xml_id as optional form field

See merge request coopdevs/website/wp/wp-plugins/wpct-crm-forms!3
parents 97e2f5d9 953483fe
No related branches found
No related tags found
No related merge requests found
......@@ -5,9 +5,9 @@
*/
function wpct_crm_forms_parse_form_entry($entry, $form)
{
$form_vals = array(
$form_vals = [
'entry_id' => $entry['id']
);
];
foreach ($form['fields'] as $field) {
if ($field->type === 'section') continue;
......@@ -97,10 +97,10 @@ function wpct_crm_forms_cleanup_empties($form_vals)
*/
function wpct_crm_forms_get_submission_payload($form_vals)
{
$payload = array(
$payload = [
'name' => $form_vals['source_xml_id'] . ' submission: ' . $form_vals['entry_id'],
'metadata' => array()
);
'metadata' => []
];
foreach ($form_vals as $key => $val) {
if ($key == 'company_id') {
......@@ -111,10 +111,10 @@ function wpct_crm_forms_get_submission_payload($form_vals)
$payload['source_xml_id'] = $val;
}
$payload['metadata'][] = array(
$payload['metadata'][] = [
'key' => $key,
'value' => $val
);
];
}
return $payload;
......
......@@ -3,7 +3,10 @@ add_action('gform_after_submission', 'wpct_crm_forms_api_submissions', 10, 2);
function wpct_crm_forms_api_submissions($entry, $form)
{
$form_vals = wpct_crm_forms_parse_form_entry($entry, $form);
if (!isset($form_vals['source_xml_id'])) throw new Exception('Error Processing Request', 400);
// Exit submission if form isn't bound to Odoo
if (!isset($form_vals['source_xml_id'])) return;
$submission_payload = apply_filters('wpct_crm_forms_prepare_submission', $form_vals);
$response = wpct_oc_post_odoo('/api/private/crm-lead', $submission_payload);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment