From de91615d4055192cdf17724df09a55415fb0658e Mon Sep 17 00:00:00 2001 From: merelendor Date: Mon, 17 Jan 2022 08:59:56 +0100 Subject: [PATCH] UTM marks on form submissions, UTM cookies storage, region field on forms --- api/index.php | 21 ++++++++++++++------- local/templates/evolution/js/main.js | 11 +++++++++++ 2 files changed, 25 insertions(+), 7 deletions(-) diff --git a/api/index.php b/api/index.php index fc63aeb..8054042 100644 --- a/api/index.php +++ b/api/index.php @@ -620,7 +620,14 @@ switch($PARAM_1) } else { - $formAnswers["form_".$fq['ANSWER']['FIELD_TYPE']."_".$fq['ANSWER']['ID']] = $_REQUEST[$fq['SID']]; + if(strpos($fq['TITLE'], "utm_") > -1) + { + $formAnswers["form_".$fq['ANSWER']['FIELD_TYPE']."_".$fq['ANSWER']['ID']] = $_COOKIE[strtolower($fq['TITLE'])]; + } + else + { + $formAnswers["form_".$fq['ANSWER']['FIELD_TYPE']."_".$fq['ANSWER']['ID']] = $_REQUEST[$fq['SID']]; + } } $arr['q'][] = $fq; @@ -681,7 +688,7 @@ switch($PARAM_1) $url = API_HOST."/site/RequestFromSite"; $payload = json_encode([ - "region" => "Московская область", + "region" => $_REQUEST['FORM_FIELD_REGION'], "name" => $REQ['FORM_FIELD_FIO'], "phone" => $REQ['FORM_FIELD_PHONE'], "email" => $REQ['FORM_FIELD_EMAIL'], @@ -693,11 +700,11 @@ switch($PARAM_1) "prepaid" => (int) $REQ['FORM_FIELD_PREPAID'], "term" => (int) $REQ['FORM_FIELD_TERM'], "redemption" => (int) $REQ['FORM_FIELD_REDEMPTION'], - "utm_source" => null, - "utm_medium" => null, - "utm_campaign" => null, - "utm_term" => null, - "utm_content" => null, + "utm_source" => $_COOKIE['utm_source'], + "utm_medium" => $_COOKIE['utm_medium'], + "utm_campaign" => $_COOKIE['utm_campaign'], + "utm_term" => $_COOKIE['utm_term'], + "utm_content" => $_COOKIE['utm_content'], "page_url" => $REQ['FORM_FIELD_PAGE_URL'], "page_name" => $REQ['FORM_FIELD_PAGE_NAME'], ]); diff --git a/local/templates/evolution/js/main.js b/local/templates/evolution/js/main.js index e89ed5c..b346b04 100644 --- a/local/templates/evolution/js/main.js +++ b/local/templates/evolution/js/main.js @@ -245,4 +245,15 @@ $(document).ready(function() event.preventDefault(); window.open('/personal_data/', "_blank"); }); + + var urlSearchParams = new URLSearchParams(window.location.search); + var params = Object.fromEntries(urlSearchParams.entries()); + + for(let i in params) + { + if(i.indexOf("utm_") > -1) + { + setCookie(i, params[i], '365', '/'); + } + } }); \ No newline at end of file