", $el); $el = str_replace("\r", "", $el); $el = mysql_real_escape_string($el); // от MySQL-инъекций $el = trim($el); // от лишних пробелов $el = stripslashes($el); // от слэшей return $el; } ini_set('display_errors', 1); error_reporting(E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE); $pdo = new MysqlPdo(hst, ndb, user, pass); $sql = "SET NAMES 'utf8'"; $pdo->query($sql); $content = file_get_contents('php://input'); //file_put_contents(__DIR__.'/log_envybox.txt', $content. "\n", FILE_APPEND); /*$content = 'webhooktype=12&phone=77777777777&name=Ира&email=&message=&created_at=2022-07-14 19:31:12&referrer=&keyword=&ip=178.120.17.138&place=Брест, Брестская область&site=uproperty.moscow&url=https://uproperty.moscow/&utm_source=&utm_medium=&utm_campaign=&utm_content=&utm_term=&visitor_id=10574902271&google_client_id=241934448.1657816075&rs=&roistat_promo=0&adv_uid=&calltracking_id=&chat_text=[Автоприглашение, 14.07.2022 в 19:30] %D0%97%D0%B4%D1%80%D0%B0%D0%B2%D1%81%D1%82%D0%B2%D1%83%D0%B9%D1%82%D0%B5%21 [Автоприглашение, 14.07.2022 в 19:30] %D0%92+%D0%BD%D1%8B%D0%BD%D0%B5%D1%88%D0%BD%D0%B8%D1%85+%D1%83%D1%81%D0%BB%D0%BE%D0%B2%D0%B8%D1%8F%D1%85+%D0%BD%D0%B5%D0%B4%D0%B2%D0%B8%D0%B6%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C+%D1%80%D0%B0%D1%81%D1%82%D0%B5%D1%82+%D0%B2+%D1%86%D0%B5%D0%BD%D0%B5+%D0%BA%D0%B0%D0%B6%D0%B4%D1%8B%D0%B9+%D0%B4%D0%B5%D0%BD%D1%8C.. [Автоприглашение, 14.07.2022 в 19:30] %D0%9D%D0%BE+%D1%83+%D0%BD%D0%B0%D1%81+%D0%B5%D1%81%D1%82%D1%8C+%D1%8D%D0%BA%D1%81%D0%BA%D0%BB%D1%8E%D0%B7%D0%B8%D0%B2%D0%BD%D1%8B%D0%B5+%D0%BA%D0%B2%D0%B0%D1%80%D1%82%D0%B8%D1%80%D1%8B+%D0%BF%D0%BE+%D1%81%D1%82%D0%B0%D1%80%D0%BE%D0%BC%D1%83+%D0%BA%D1%83%D1%80%D1%81%D1%83+%F0%9F%98%89+%0A%0A%D0%A0%D0%B0%D1%81%D1%81%D0%BA%D0%B0%D0%B7%D0%B0%D1%82%D1%8C+%D0%BF%D0%BE%D0%B4%D1%80%D0%BE%D0%B1%D0%BD%D0%B5%D0%B5%3F [Ира, 14.07.2022 в 19:30] %D0%A2%D0%B5%D1%81%D1%82+2+joywork+Urban+enybox.+%D0%9F%D0%B5%D1%80%D0%B2%D1%8B%D0%B9+%D0%BD%D0%B5+%D1%81%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%BB. &key=cd495472b0394512c6b635c67d941f09&lpgenerator_id=&leadvertex_id=&link=http://chat.ru.envybox.io/chat/show/-N6xY6zu9OdzuD6RILrs&chat_id=31093115&custom_data=[]&yandex_client_id=1657816068959925020 ';*/ $query = urldecode($content); $arrQuery = explode('&', $query); $result = array(); foreach($arrQuery as $val_query){ $arrVal = explode('=',$val_query); $massage[$arrVal[0]] = trim($arrVal[1]); } //var_dump($massage); $funnel_id = 0; $user_id = 0; $funnel_id_req = 493; $activities_id = 0; $source_id = 0; $users = array(); $client_id = 0; $email = ''; $partner = 0; $CallEvents = new CallEvents(); $url = parse_url($massage['url']); $array_include = ['url', 'site', 'webhooktype', 'chat_text', 'place', 'ip']; if(isset($massage['phone']) && !empty($massage['phone'])){ $phone = '+'.str_replace(['(',')',' ','-','+'], '', $massage['phone']); $fio_client = "Имя не указано"; if(isset($massage['name']) && !empty($massage['name'])) $fio_client = $massage['name']; $email = $massage['email']; $opis = 'Заявка с EnvyBox с сайта: '.$massage['site']; if(isset($massage['chat_text'])){ $opis .= "<br>Текст чата: ".str_replace("\n","<br>", $massage['chat_text']); } if(isset($massage['place'])){ $opis .= "<br>Локация: ".$massage['place']; } if(isset($massage['ip'])){ $opis .= "<br>Ip: ".$massage['ip']; } foreach($massage as $key => $mes){ if(!empty($mes) && !in_array($key, $array_include)){ $opis .= "<br>".$key.": ".$mes; } } if(isset($url['host']) && !empty($url['host'])){ switch ($url['host']){ case 'skyview-moscow.ru': { $user_id = 12429; $funnel_id = 0; $funnel_id_req = 479; $activities_id = 1045; $source_id = 1270; break; } case 'uproperty.moscow': { $user_id = 12429; $funnel_id = 0; $funnel_id_req = 479; $activities_id = 1046; $source_id = 1271; break; } case 'khediproperties.com': { $user_id = 12429; $funnel_id = 0; $funnel_id_req = 493; $activities_id = 1047; $source_id = 1288; $partner = 12429; break; } case 'istanbul.khediproperties.com': { /* $user_id = 11593; $partner = 12429;*/ $user_id = 12429; $funnel_id = 0; $funnel_id_req = 494; break; } } } if($user_id > 0){ $CallEvents = new CallEvents(); $user = new User(); $user->get($user_id); $users = array_keys($CallEvents->getAllUserAgency($user->agencyId, $users)); //Поиск тега if($activities_id == 0){ $sql_activites = "SELECT id FROM `activities` WHERE name = 'Сайт ".$url['host']."' AND (user_id in (".implode(',', $users).") or manager_id in (".implode(',', $users)."))"; $q_aclivites = $pdo->query($sql_activites); $r_activites = $pdo->fetch_assoc($q_aclivites); if($r_activites['id'] > 0){ $activities_id = $r_activites['id']; //echo $activities_id."\n"; } else { $sql_up = "INSERT INTO `activities` SET name='Сайт ".$url['host']."', user_id={$user_id}, manager_id={$user->agencyId}"; $pdo->query($sql_up); $activities_id = $pdo->insert_id(); } } //Поиск источника if($source_id == 0){ $sql_source = "SELECT id FROM `advertising_sources` WHERE source = 'Сайт ".$url['host']."' AND (user_id in (".implode(',', $users).") or manager_id in (".implode(',', $users)."))"; $q_source = $pdo->query($sql_source); $r_source = $pdo->fetch_assoc($q_source); if($r_source['id'] > 0){ $source_id = $r_source['id']; //echo $source_id."\n"; } else { $sql_up = "INSERT INTO `advertising_sources` SET source='Сайт ".$url['host']."', user_id={$user_id}, manager_id={$user->agencyId}"; $pdo->query($sql_up); $source_id = $pdo->insert_id(); } } $sql = "SELECT `id`, `stage`, `deleted` FROM `clients` WHERE cancel=0 AND (phone = '$phone' or phone2 like '%"$phone"%') and (who_work in (".implode(',', $users).") or id_agent in (".implode(',', $users)."))"; $client = $pdo->fetch_assoc($pdo->query($sql)); if(!empty($client) && $client){ $client_id = $client['id']; } else { $sql = "INSERT INTO clients SET phone='{$phone}', fio='{$fio_client}', opis='{$opis}', id_agent={$user_id}, who_work={$user_id}, date_add=NOW(), confirm=1, funnel_id={$funnel_id}, stage=1, source= '{$source_id}', integration=5"; if(isset($partner) && $partner > 0){ $doers = array($user_id=>1, $partner=>1); //$doers_confirm = 0; $sql .= ", doers = '".clearInputElement(json_encode($doers))."', doer_clients=1"; } $pdo->query($sql); $client_id = $pdo->insert_id(); if($partner > 0) { $sql_conf = "INSERT INTO `events_clients` (`user_id`, `client_id`, `from_id`, `event`, `read`, `send_telegramm`) VALUES (".$user_id.", ".$client_id.", ".$partner.", 'transmitted_parallel', 1,1)"; $pdo->query($sql_conf); } if($funnel_id > 0){ $Clients->get_class_etap($client_id, $funnel_id); } $sql_a = "INSERT INTO `clients_activities` (`activity_id`, `client_id`) VALUES ({$activities_id}, {$client_id})"; $pdo->query($sql_a); } if($client_id > 0){ $sql = "INSERT INTO requisitions SET client_id={$client_id}, name='Подбор объекта для {$fio_client}', description='{$opis}', user_id={$user_id}, integration=5, who_work={$user_id}, type_id=1, confirm=1, funnel_id={$funnel_id_req}, stage=1, source= '{$source_id}'"; if(isset($partner) && $partner > 0){ $doers = array($user_id=>1, $partner=>1); //$doers_confirm = 0; $sql .= ", doers = '".clearInputElement(json_encode($doers))."', doer_clients=1"; } $pdo->query($sql); $req_id = $pdo->insert_id(); if($funnel_id_req > 0){ $Requisitions = new Requisitions(); $Requisitions->get_class_etap($req_id, $funnel_id_req); } $sql_a = "INSERT INTO `requisitions_activities` (`activity_id`, `req_id`) VALUES ({$activities_id}, {$req_id})"; $pdo->query($sql_a); $comment = 'Заявка с EnvyBox с сайта: '.$massage['site']; $sql_add = "INSERT INTO `events_clients` (`user_id`, `req_id`, `from_id`, `event`, `dop_text`, `read`) ". "VALUES ({$user_id}, {$req_id}, {$user_id}, 'add', '{$comment}', 2)"; $pdo->query($sql_add); $sql_in_ev = "INSERT INTO user_client_events (user_id, req_id, create_date, schedule_date, `type`, comment, calendar_view, from_id) ". "VALUES ($user_id, $req_id, '".date('Y-m-d H:i:s')."', '".date('Y-m-d H:i:s', strtotime('+15 minutes'))."', 'call', '{$comment}', 0, {$user_id})"; $pdo->query($sql_in_ev); if($partner > 0) { $sql_conf = "INSERT INTO `events_clients` (`user_id`, `req_id`, `from_id`, `event`, `read`, `send_telegramm`) VALUES (".$user_id.", ".$req_id.", ".$partner.", 'transmitted_parallel', 2,0)"; $pdo->query($sql_conf); } } } }