Joywork/max.php
2026-05-22 21:21:54 +03:00

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;
}
}
}
}