271 lines
14 KiB
PHP
271 lines
14 KiB
PHP
|
|
<?php
|
||
|
|
error_reporting(E_ALL | E_STRICT);
|
||
|
|
ini_set('display_errors', 1);
|
||
|
|
|
||
|
|
require_once($_SERVER['DOCUMENT_ROOT']."/config.php");
|
||
|
|
|
||
|
|
file_put_contents($_SERVER['DOCUMENT_ROOT']."/max_mes_chat.txt", date('d.m.y H:i:s').' '.json_encode($_POST, JSON_UNESCAPED_UNICODE)."\n", FILE_APPEND);
|
||
|
|
|
||
|
|
if(isset($_POST['send_mess'])){
|
||
|
|
$chatId = $_POST['chat_id'];
|
||
|
|
$userId = $_POST['user_id'];
|
||
|
|
$result['ok'] = 'false';
|
||
|
|
if($userId > 0){
|
||
|
|
$result['ok'] = 'true';
|
||
|
|
$sql = "SELECT `id`, `max_chat_id`, `agency_name`, `max_kod`,`max_notice`,`max_user_id`, `first_name`, `last_name`, `middle_name` FROM `users` WHERE `max_user_id` = ".$userId;
|
||
|
|
$q = mysql_query($sql);
|
||
|
|
$row = mysql_num_rows($q);
|
||
|
|
if($row == 0){
|
||
|
|
if(isset($_POST['text'])){
|
||
|
|
$phone = '+'.str_replace(['(', ')', ' ', '-', '+'], '', trim($_POST['text']));
|
||
|
|
|
||
|
|
$sql_u = "SELECT `id`, `max_chat_id`, `agency_name`, `max_kod`,`max_notice`,`max_user_id`, `first_name`, `last_name`, `middle_name` FROM `users` WHERE `phone` = '".$phone."'";
|
||
|
|
|
||
|
|
$q_u = mysql_query($sql_u);
|
||
|
|
$row_u = mysql_num_rows($q_u);
|
||
|
|
if($row_u == 0){
|
||
|
|
$result['user'] = 0;
|
||
|
|
$result['phone'] = 0;
|
||
|
|
} else {
|
||
|
|
$u = mysql_fetch_assoc($q_u);
|
||
|
|
mysql_query("UPDATE users SET max_user_id = {$userId}, max_chat_id = {$chatId} WHERE id = ".$u['id']);
|
||
|
|
$result['user'] = trim($u['last_name'] . ' ' . $u['first_name'] . ' ' . $u['middle_name']);
|
||
|
|
$result['notice'] = 2;
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
/* $u = mysql_fetch_assoc($q_u);
|
||
|
|
mysql_query("UPDATE users SET telegramm_chat_id = {$chatId}, telegramm_notice = 1 WHERE id = ".$u['id']);
|
||
|
|
$result['user'] = trim($u['last_name'] . ' ' . $u['first_name'] . ' ' . $u['middle_name']);
|
||
|
|
$result['notice'] = 1;*/
|
||
|
|
}
|
||
|
|
} else {
|
||
|
|
$result['user'] = 0;
|
||
|
|
}
|
||
|
|
} else {
|
||
|
|
|
||
|
|
$r = mysql_fetch_assoc($q);
|
||
|
|
if($r['max_notice'] == 0){
|
||
|
|
if($r['max_kod'] == trim(str_replace(['%dollar%', '%amp%'], ['$', '&'], $_POST['text']))){
|
||
|
|
mysql_query("UPDATE users SET max_notice = 1 WHERE id = ".$r['id']);
|
||
|
|
mysql_query("UPDATE telephony_notifications set max = 1 WHERE user_id = {$r['id']}");
|
||
|
|
mysql_query("UPDATE user_client_events set max = 1 WHERE user_id = {$r['id']}");
|
||
|
|
mysql_query("UPDATE user_object_events set max = 1 WHERE user_id = {$r['id']}");
|
||
|
|
mysql_query("UPDATE events_clients set send_max = 1 WHERE from_id = {$r['id']}");
|
||
|
|
mysql_query("UPDATE objects_to_send set send_max = 1 WHERE new_user_id = {$r['id']}");
|
||
|
|
mysql_query("UPDATE discharge_user_notice set send_max = 1 WHERE user_id = {$r['id']}");
|
||
|
|
mysql_query("UPDATE object_ad set send_max = 1 WHERE manager_id = {$r['id']}");
|
||
|
|
mysql_query("UPDATE step_notify_closure set send_max = 1 WHERE user_id = {$r['id']}");
|
||
|
|
mysql_query("UPDATE object_unpublish_telegram_send set send_max = 1 WHERE user_id = {$r['id']}");
|
||
|
|
|
||
|
|
$result['user'] = trim($r['last_name'] . ' ' . $r['first_name'] . ' ' . $r['middle_name']);
|
||
|
|
$result['notice'] = 1;
|
||
|
|
} else {
|
||
|
|
file_put_contents($_SERVER['DOCUMENT_ROOT']."/log_task_max.txt", date('d.m.y H:i:s').' user_id '.$userId.' kod: '. $r['max_kod'].' - '.trim($_POST['text'])."\n", FILE_APPEND);
|
||
|
|
$result['notice'] = 3;
|
||
|
|
}
|
||
|
|
} else {
|
||
|
|
$sql_ev = "SELECT * FROM max_events WHERE max_user_id = {$userId} AND status = 0 ORDER BY id DESC LIMIT 1";
|
||
|
|
$q_ev = mysql_query($sql_ev);
|
||
|
|
$mess = str_replace(["\r\n", "\r", "\n"], ' ', mysql_real_escape_string(str_replace(['%dollar%', '%amp%'], ['$', '&'], $_POST['text'])));
|
||
|
|
|
||
|
|
if(mysql_num_rows($q_ev) > 0){
|
||
|
|
$r_ev = mysql_fetch_assoc($q_ev);
|
||
|
|
// var_dump($r_ev);
|
||
|
|
if($r_ev['event'] == 'answer'){
|
||
|
|
$chatClass = new ChatsCianAvito();
|
||
|
|
$chatClass->setService($r_ev['service']);
|
||
|
|
$chatClass->send_answer($r_ev['mess_id'], $mess);
|
||
|
|
$description = mysql_real_escape_string($r_ev['description'] . ' ' . date('d.m.Y H:i:s') . ' - Отправлено сообщение: ' . $mess);
|
||
|
|
mysql_query("UPDATE max_events SET description = '{$description}', status = 1 WHERE id = {$r_ev['id']}");
|
||
|
|
$result['result'] = 'answer';
|
||
|
|
} else if ($r_ev['event'] == 'add_req'){
|
||
|
|
$description = mysql_real_escape_string($r_ev['description'] . ' ' . date('d.m.Y H:i:s') . ' - Отправлен текст: ' . $mess);
|
||
|
|
mysql_query("UPDATE max_events SET description = '{$description}' WHERE id = {$r_ev['id']}");
|
||
|
|
$chatClass = new ChatsCianAvito();
|
||
|
|
$chatClass->setService($r_ev['service']);
|
||
|
|
$result = $chatClass->add_req($r_ev['mess_id'],$chatId, $r_ev['stage'], $mess, $r_ev, true);
|
||
|
|
} else if ($r_ev['event'] == 'task_completed'){
|
||
|
|
$description = mysql_real_escape_string($r_ev['description'] . ' ' . date('d.m.Y H:i:s') . ' - Отправлен комментарий: ' . $mess);
|
||
|
|
mysql_query("UPDATE max_events SET description = '{$description}', status = 1 WHERE id = {$r_ev['id']}");
|
||
|
|
$max = new MaxClass();
|
||
|
|
$result = $max->send_comment_task($chatId, $mess, $r_ev);
|
||
|
|
} else if ($r_ev['event'] == 'task_completed_object'){
|
||
|
|
$description = mysql_real_escape_string($r_ev['description'] . ' ' . date('d.m.Y H:i:s') . ' - Отправлен комментарий: ' . $mess);
|
||
|
|
mysql_query("UPDATE max_events SET description = '{$description}', status = 1 WHERE id = {$r_ev['id']}");
|
||
|
|
$max = new MaxClass();
|
||
|
|
$result = $max->send_comment_task($chatId, $mess, $r_ev, 'object');
|
||
|
|
}
|
||
|
|
}
|
||
|
|
// mysql_query("UPDATE users SET telegramm_notice = 1 WHERE id = ".$r['id']);
|
||
|
|
$result['user'] = trim($r['last_name'] . ' ' . $r['first_name'] . ' ' . $r['middle_name']);
|
||
|
|
$result['notice'] = 1;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
|
||
|
|
if(isset($_POST['delete_id'])){
|
||
|
|
$userId = $_POST['delete_id'];
|
||
|
|
|
||
|
|
$sql = "UPDATE users SET `max_notice` = 0, `max_chat_id` = 0, max_user_id = 0 WHERE `max_user_id` = ".$userId;
|
||
|
|
// echo $sql;
|
||
|
|
mysql_query($sql);
|
||
|
|
}
|
||
|
|
|
||
|
|
//var_dump($_POST);
|
||
|
|
if(isset($_POST['request_bot'])){
|
||
|
|
|
||
|
|
$request = $_POST['request_bot'];
|
||
|
|
if(($_POST['service'] > 0 && $_POST['mess_id'] > 0) || (isset($_POST['event_id']) && $_POST['event_id'] > 0)){
|
||
|
|
$mess_id = 0; if(isset($_POST['mess_id'])) $mess_id = (int)$_POST['mess_id'];
|
||
|
|
$service = 0; if(isset($_POST['service'])) $service = (int)$_POST['service'];
|
||
|
|
$event_id = 0; if(isset($_POST['event_id'])) $event_id = (int)$_POST['event_id'];
|
||
|
|
$max = new MaxClass();
|
||
|
|
switch ($request){
|
||
|
|
case 'read': {
|
||
|
|
$chatClass = new ChatsCianAvito();
|
||
|
|
$chatClass->setService($service);
|
||
|
|
echo json_encode($chatClass->update_read_message($mess_id), JSON_UNESCAPED_UNICODE);
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
case 'answer': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
if($user_id > 0){
|
||
|
|
$chatClass = new ChatsCianAvito();
|
||
|
|
$chatClass->setService($service);
|
||
|
|
echo json_encode($chatClass->query_send_answer($mess_id, $user_id, true), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
case 'no_answer': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
if($user_id > 0){
|
||
|
|
$chatClass = new ChatsCianAvito();
|
||
|
|
$chatClass->setService($service);
|
||
|
|
echo json_encode($chatClass->cancel_answer($mess_id, $user_id, true), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
|
||
|
|
case 'add_req': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
$stage = $_POST['stage'];
|
||
|
|
if($user_id > 0){
|
||
|
|
$chatClass = new ChatsCianAvito();
|
||
|
|
$chatClass->setService($service);
|
||
|
|
echo json_encode($chatClass->add_req($mess_id, $user_id, $stage, null, [], true), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
case 'add_funnel_req': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
$stage = $_POST['stage'];
|
||
|
|
if($user_id > 0){
|
||
|
|
$chatClass = new ChatsCianAvito();
|
||
|
|
$chatClass->setService($service);
|
||
|
|
echo json_encode($chatClass->add_req($mess_id, $user_id, $stage, $_POST['funnel_id'], [], true), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
case 'add_funnel_client': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
$stage = $_POST['stage'];
|
||
|
|
if($user_id > 0){
|
||
|
|
$chatClass = new ChatsCianAvito();
|
||
|
|
$chatClass->setService($service);
|
||
|
|
echo json_encode($chatClass->add_req($mess_id, $user_id, $stage, $_POST['funnel_id'], [], true), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
case 'no_add_req': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
if($user_id > 0){
|
||
|
|
$chatClass = new ChatsCianAvito();
|
||
|
|
$chatClass->setService($service);
|
||
|
|
echo json_encode($chatClass->cancel_add_req($mess_id, $user_id, true), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
|
||
|
|
case 'task_completed': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
if($user_id > 0){
|
||
|
|
|
||
|
|
|
||
|
|
echo json_encode($max->task_completed($user_id, $event_id), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
|
||
|
|
case 'task_completed_comment': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
if($user_id > 0){
|
||
|
|
|
||
|
|
|
||
|
|
echo json_encode($max->task_completed($user_id, $event_id, 'client_req', true), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
|
||
|
|
case 'no_task_completed_comment': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
if($user_id > 0){
|
||
|
|
|
||
|
|
|
||
|
|
echo json_encode($max->no_task_completed($user_id, $event_id), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
|
||
|
|
case 'task_completed_object': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
if($user_id > 0){
|
||
|
|
|
||
|
|
|
||
|
|
echo json_encode($max->task_completed($user_id, $event_id, 'object'), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
|
||
|
|
case 'task_completed_comment_object': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
if($user_id > 0){
|
||
|
|
|
||
|
|
|
||
|
|
echo json_encode($max->task_completed($user_id, $event_id, 'object', true), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
|
||
|
|
case 'no_task_completed_comment_object': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
if($user_id > 0){
|
||
|
|
|
||
|
|
|
||
|
|
echo json_encode($max->no_task_completed($user_id, $event_id, 'object'), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
|
||
|
|
case 'accept_work': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
if($user_id > 0){
|
||
|
|
|
||
|
|
echo json_encode($max->accept_work($user_id, $event_id), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
|
||
|
|
case 'accept_work_object': {
|
||
|
|
$user_id = $_POST['max_user_id'];
|
||
|
|
if($user_id > 0){
|
||
|
|
|
||
|
|
echo json_encode($max->accept_work($user_id, $event_id, 'object'), JSON_UNESCAPED_UNICODE);
|
||
|
|
}
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|