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

101 lines
4.7 KiB
PHP

<?php
require_once($_SERVER['DOCUMENT_ROOT']."/config.php");
if($_SESSION['id'] && $_POST['id_object']) {
$db_sphinx = new MysqlPdo(hstsph2, null, null, null, true, '9306');
$post = clearInputData($_POST);
if (isset($post['state']) && $post['state'] == 1) {
$sql = "INSERT INTO user_potential_objects(user_id, object_id) VALUES($_SESSION[id], $post[id_object])";
mysql_query($sql);
//Проверка в сфинкс
$sql_sh = "SELECT count(*) FROM objects WHERE id=$post[id_object]";
$q_sh = $db_sphinx->query($sql_sh);
if($db_sphinx->result($q_sh,0) == 0){
$sql_o = "SELECT * FROM objects WHERE id = $post[id_object]";
$q_o = mysql_query($sql_o);
$obj = mysql_fetch_assoc($q_o);
if($obj){
$time = strtotime($obj['date_add']);
$sql_sh = "INSERT INTO objects_rt (id, type, rayon_id, adres, peshkom, transport, srok, komnat, etazh, ploshad, ploshad_k, ploshad_komn, holod, stirka, tv, mebel, stoim, stoim_prim, sort_price, price_for_order, moder, date_add, phone_search, id_add_user, commission, type_category, operation_type, id_rf_region)
VALUES('$obj[id]', '$obj[type]', '$obj[rayon]', '$obj[adres]', '$obj[peshkom]', '$obj[transport]', '$obj[srok]', '$obj[komnat]', '$obj[etazh]', '$obj[ploshad]', '$obj[ploshad_k]', '$obj[ploshad_komn]', '$obj[holod]', '$obj[stirka]', '$obj[tv]', '$obj[mebel]', '$obj[stoim]', '$obj[stoim_prim]', '$obj[stoim]', '$obj[stoim]', '$obj[moder]', '".$time."', '$obj[phone_search]]', '$obj[id_add_user]', '$obj[commission]', '$obj[type_category]', '$obj[operation_type]', '$obj[id_rf_region]')";
$db_sphinx->query($sql_sh);
}
}
} else {
$user = new User;
$user->get($_SESSION['id']);
$user->checkPermissions();
$depClass = new Department();
$adminDep = false;
$searchUserId = $_SESSION['id'];
if ($_SESSION['agency'] || $_SESSION['manager'] || $_SESSION['users_admin']) {
$agentIds = [];
if ($_SESSION['users_admin']) {
$user = new User;
$user->checkPermissions();
$searchUserId = $user->agencyId;
$agentIds[] = $user->agencyId;
}
$user = new User;
$user->get((int)$_SESSION['id']);
$dep_user = $depClass->getDepartment((int)$_SESSION['id']);
if($dep_user['role'] == 'manager_office'){
$searchUserId = $dep_user['admin'];
$adminDep = true;
} else if($dep_user['role'] == 'manager_office_menager') {
$searchUserId = $user->id_manager;
$adminDep = true;
}
$agentIds[] = $searchUserId;
$agentsOfAgency = User::getAllAgents($searchUserId);
foreach ($agentsOfAgency as $agent) {
if (!in_array($agent['id'], $agentIds)) {
$agentIds[] = $agent['id'];
}
}
if ($_SESSION['agency'] || $_SESSION['users_admin'] || $adminDep) {
$agentsOfManager = User::getAllManagers($searchUserId);
foreach ($agentsOfManager as $agent) {
if (!in_array($agent['id'], $agentIds)) {
$agentIds[] = $agent['id'];
}
if((int)$agent['role_id'] > 0 && (int)$agent['department_id'] > 0){
$role_user = $depClass->getRole((int)$agent['role_id']);
if($role_user['role'] == 'admin_department'){
$menagerDep = User::getDepManagers($role_user['department_id']);
foreach($menagerDep as $md){
if(!in_array($md['id'], $agentIds)){
$agentIds[] = $md['id'];
$thisAgents = User::getAgentsOfAgency($md['id'], true);
foreach($thisAgents as $da){
if (!in_array($da['id'], $agentIds)) {
$agentIds[] = $da['id'];
}
}
}
}
}
}
}
}
} else {
$agentIds = isset($user_view) ? [$user_view->id] : [$_SESSION['id']];
$agentIds = array_merge($agentIds, $agentIds);
}
$sql = "DELETE FROM user_potential_objects where user_id IN (" . implode(',', $agentIds) . ") and object_id =$post[id_object]";
mysql_query($sql);
}
}