81 lines
4.0 KiB
PHP
81 lines
4.0 KiB
PHP
<?php
|
|
require_once($_SERVER['DOCUMENT_ROOT']."/config.php");
|
|
|
|
$result = array('activeObj'=>0, 'archiveObj'=>0);
|
|
|
|
$db_sphinx = new MysqlPdo(hstsph2, null, null, null, true, '9306');
|
|
$depClass = new Department();
|
|
$searchUserId = $_SESSION['id'];
|
|
$adminDep = false;
|
|
|
|
if ($_SESSION['agency'] || $_SESSION['manager'] || $_SESSION['users_admin']) {
|
|
$agentIds = [];
|
|
if ($_SESSION['users_admin']) {
|
|
$user = new User;
|
|
$user->checkPermissions();
|
|
$searchUserId = $user->agencyId;
|
|
$agentIds[] = $user->agencyId;
|
|
}
|
|
|
|
$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] : [$searchUserId];
|
|
$agentIds = array_merge($agentIds, $agentIds);
|
|
}
|
|
|
|
|
|
$sql = "SELECT id FROM objects WHERE del=0 and archive <> 1 and id_add_user IN (" . implode(',', $agentIds) . ") LIMIT 1000000 OPTION max_matches=1000000";
|
|
$rez = $db_sphinx->query($sql, true);
|
|
$kol_my_obj_not_archive = $db_sphinx->num_rows($rez);
|
|
$result['activeObj']= (int)$kol_my_obj_not_archive;
|
|
|
|
$sql = "SELECT id FROM objects WHERE del=0 and archive = 1 and id_add_user IN (" . implode(',', $agentIds) . ") LIMIT 1000000 OPTION max_matches=1000000";
|
|
$rez = $db_sphinx->query($sql);
|
|
$kol_my_obj_archive = $db_sphinx->num_rows($rez);
|
|
$result['archiveObj'] = (int)$kol_my_obj_archive;
|
|
echo json_encode($result);
|