$field) { $key = $this->extract_key($field); $body[$key] = $this->extract_value_by_type($field); } return $body; } /** * This is a everest form callback after the lead is submitted. * Calls a non blocking http API request to 365 CRM with lead data. */ public function submit_to_leadcrm($entry_id, $fields, $entry, $form_id, $form_data) { $form_name = isset($form_data["settings"]["form_title"]) ? $form_data["settings"]["form_title"] : ''; $token = Leadcrm_Options::get_single_value('leadcrm_token'); $cf_reference = Leadcrm_Options::get_single_value('cf_reference'); $leadcrm_api = new Leadcrm_API('everest_form', $form_name, $form_id); $endpoint = $leadcrm_api->build_api_endpoint(); $payload = $this->extract_fields($fields); $payload['leadcrm_token'] = $token; $payload['cf_reference'] = $cf_reference; $leadcrm_api->submit_lead_to_leadcrm($endpoint, $payload, Leadcrm_Content_Type::JSON); } }