Joywork/sended-object-view.php
2026-05-22 21:21:54 +03:00

492 lines
28 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
require_once($_SERVER['DOCUMENT_ROOT'] . "/config.php");
$get = clearInputData($_GET);
$sql3 = "SELECT objects.*, sended_pdf.id_agent, rayon.rayon, sale_objects.house_material, house_material.name as house_material_name,
sale_objects.house_type, house_type.name as house_type_name,
sale_objects.deal_type, deal_type.name as deal_type_name,
sale_objects.build_year, DATE_FORMAT(objects.date_add,'%d.%m.%Y %H:%i') as date_add
FROM objects objects
LEFT JOIN sale_objects sale_objects on objects.id = sale_objects.object_id
LEFT JOIN house_material house_material on sale_objects.house_material = house_material.id
LEFT JOIN house_type house_type on house_type.id = sale_objects.house_type
LEFT JOIN deal_type deal_type on deal_type.id = sale_objects.deal_type
LEFT JOIN rayon rayon on objects.rayon = rayon.id
INNER JOIN sended_pdf on sended_pdf.token='$get[token]' and sended_pdf.id_object = objects.id";
$sql4 = "SELECT objects.*, sended_pdf.id_agent, rayon.rayon, sale_objects.house_material, house_material.name as house_material_name,
sale_objects.house_type, house_type.name as house_type_name,
sale_objects.deal_type, deal_type.name as deal_type_name,
sale_objects.build_year, DATE_FORMAT(objects.date_add,'%d.%m.%Y %H:%i') as date_add
FROM objects objects
LEFT JOIN sale_objects sale_objects on objects.id = sale_objects.object_id
LEFT JOIN house_material house_material on sale_objects.house_material = house_material.id
LEFT JOIN house_type house_type on house_type.id = sale_objects.house_type
LEFT JOIN deal_type deal_type on deal_type.id = sale_objects.deal_type
LEFT JOIN rayon rayon on objects.rayon = rayon.id
INNER JOIN sended_pdf on sended_pdf.token='$get[token]' and sended_pdf.id_object = objects.id";
$rez_obj = mysql_query($sql3);
$rez_obj2 = mysql_query($sql4);
require($_SERVER['DOCUMENT_ROOT'] . "/templates/view-header.php");
$apPhoto = "";
$useLocalApPhoto = true;
$objArr = [];
while ($objVal = mysql_fetch_assoc($rez_obj)) {
$objArr[$objVal['id']] = $objVal;
}
while ($objVal2 = mysql_fetch_assoc($rez_obj2)) {
$objArr[$objVal2['id']] = $objVal2;
}
?>
<script type="text/javascript" src="/js/fotorama.js"></script>
<script type="text/javascript" src="https://api-maps.yandex.ru/2.1/?load=package.standard&apikey=898fc684-cdf6-4af8-af57-15e2781d68d1&lang=ru_RU&onload=getYaMap"></script>
<script type="text/javascript">
$(document).ready(function (){
$('.accordion').each(function(){
this.addEventListener("click", function() {
this.classList.toggle("active");
var panel = this.nextElementSibling;
if (panel.style.maxHeight){
panel.style.maxHeight = null;
} else {
panel.style.maxHeight = panel.scrollHeight + "px";
}
});
});
});
function getYaMap() {
<?php
$z = 0;
foreach($objArr as $v){
$z++;
?>
// Создание карты.
var myMap<?= $z ?> = new ymaps.Map("map_canvas<?= $z ?>", {
center: [59.9174455, 30.3250575],
zoom: 19,
controls: ['fullscreenControl', 'zoomControl']
});
var address<?= $z ?> = $('.adress_map<?= $z ?>').text();
if (!address<?= $z ?>.indexOf('Санкт-Петербург')) {
address<?= $z ?> = 'Санкт-Петербург, ' + address<?= $z ?>;
}
ymaps.geocode(address<?= $z ?>, {results: 1})
.then(function (res) {
var firstGeoObject = res.geoObjects.get(0),
// Координаты геообъекта.
coords = firstGeoObject.geometry.getCoordinates(),
// Область видимости геообъекта.
bounds = firstGeoObject.properties.get('boundedBy');
firstGeoObject.options.set('preset', 'islands#darkBlueDotIconWithCaption');
// Получаем строку с адресом и выводим в иконке геообъекта.
firstGeoObject.properties.set('iconCaption', firstGeoObject.getAddressLine());
// Добавляем первый найденный геообъект на карту.
myMap<?= $z ?>.geoObjects.add(firstGeoObject);
// Масштабируем карту на область видимости геообъекта.
myMap<?= $z ?>.setBounds(bounds, {
// Проверяем наличие тайлов на данном масштабе.
checkZoomRange: true
});
});
<?php
}
?>
}
</script>
<div class="sended-object">
<?php
$i = 0;
foreach($objArr as $obj) {
$i++;
?>
<button class="accordion">
<?php
$sqlPhotoInfo = "SELECT oop.sort_order, p.photo FROM objects_object_photo oop, object_photo p WHERE p.id = oop.object_photo_id AND oop.object_id = $obj[id] ORDER BY oop.sort_order";
$rezPhotoInfo = mysql_query($sqlPhotoInfo);
if (mysql_num_rows($rezPhotoInfo) > 0) {
while ($photoInfo = mysql_fetch_assoc($rezPhotoInfo)) {
$obj['photo' . $photoInfo['sort_order']] = $photoInfo['photo'];
}
}
$sql = "SELECT * FROM rayon WHERE id in (select rayon from objects where id = $obj[id])";
$result = mysql_query($sql);
if ($result) {
$rayon = mysql_fetch_assoc($result);
}
if ($obj['id_rf_region'] == 50) {
if (is_bool(strpos($obj['adres'], "Ленинградская область"))) {
echo "Ленинградская область,";
}
} else if ($obj['id_rf_region'] == 81) {
echo "Санкт Петербург,";
} else if ($obj['id_rf_region'] == 77) {
$sqlRegion = "SELECT parent.name as parent,rf_regions.name FROM rf_regions as parent
LEFT JOIN rf_regions on rf_regions.parent = parent.id
LEFT JOIN rf_region_rayons ON rf_region_rayons.rf_region_id = rf_regions.id
WHERE rayon_id in (select rayon from objects where id = $obj[id])";
$rezRegion = mysql_query($sqlRegion);
if ($rezRegion) {
$region = mysql_fetch_assoc($rezRegion);
echo $region['parent'] . ',' . $region['name'] . ' округ,';
}
}
?>
<?php
if ($obj['rayon'] && $obj['id_rf_region'] == 81) {
if (strpos($obj['rayon'], "район") or strpos($obj['adres'], "район") or strpos($obj['adres'], "р-н")) {
echo $obj['rayon'] . ',';
} else {
echo $obj['rayon'] . " район,";
}
}
?>
<?php
echo str_replace('г. Санкт-Петербург, ', '', $obj['adres']);
if ($obj['dom']) {
echo ", " . $obj['dom'];
}
if ($obj['korpus']) {
echo ", корпус " . $obj['korpus'];
}
if ($obj['litera']) {
echo ", литера " . $obj['litera'];
} ?>
</button>
<div class="panel">
<div class="inner">
<?php
//Доп обработка
if (!$obj['etazh']) $obj['etazh'] = Filter::getFloorFromName($obj['nazv'], true);
else Filter::getFloorFromName($obj['nazv'], true);
if (!$obj['etazh_iz']) $obj['etazh_iz'] = Filter::getMaxFloorFromName($obj['nazv'], true);
else Filter::getMaxFloorFromName($obj['nazv'], true);
Filter::getSpaceFromName($obj['nazv'], true);
$obj['nazv'] = Filter::name($obj['nazv']);
Filter::getSpaceFromName($obj['nazv'], true);
$obj['sobstv'] = Filter::replaceSobstv($obj['sobstv']);
?>
<div class="main-title">
<h1>Объект <?php echo $obj['id']; ?></h1>
</div>
<div class="f-object">
<div class="f-object_row fr_fotorama">
<div class="photos">
<?php
$useLocalApPhoto = true;
?>
<div class="f-fotorama backgrounded">
<div class="fotorama" data-width="100%" data-height="450px" data-allowfullscreen="true" data-nav="thumbs" data-thumb-height="32">
<?php
if ($useLocalApPhoto) {
for ($num = 1; $num <= 20; $num++) {
if ($obj['photo' . $num]) {
if (stripos($obj['photo' . $num], "http") === false) {
$obj['photo' . $num] = "/photos/" . $obj['photo' . $num];
}
echo '<img src="' . $obj['photo' . $num] . '" height="450px">';
}
}
} else {
echo $apPhoto;
}
?>
</div>
</div>
</div>
</div>
<div class="f-object_row fr__room" style="overflow: visible;">
<div class="object-info top">
<h2><?php echo Filter::name($obj['nazv']); ?></h2>
<div class="top-info">
<?php if ($obj['operation_type'] == 0) { ?>
<div class="period">
<i class="ti-time"></i>Сдается <?php echo $SROK_ARENDY["$obj[srok]"]; ?><?php if ($obj['prim_srok']) echo "&nbsp;(" . $obj['prim_srok'] . ")"; ?>
</div>
<?php
} else {
if ($obj['operation_type'] == 1) { ?>
<div class="period">
<i class="ti-time"></i>Продается
</div>
<?php
}
}
if (!$obj['archive']) {
?>
<div class="date" style="padding-top: 0;">
<i class="ti-calendar"></i><span>
<?php
list($dateAdd, $timeAdd) = explode(" ", $obj['date_add']);
list($d, $m, $y) = explode(".", $dateAdd);
$date_add = $d . " " . getRusMonth($m) . " " . $y;
$date = $date_add . "&nbsp;&nbsp;" . $timeAdd;
echo $date;
?></span>
</div>
<?php } ?>
</div>
<div class="middle-info">
<div class="f-map">
<div class="bg-map"></div>
<div class="address">
<i class="ti-location-pin"></i><span class="adress_map<?= $i ?>"><?php
$sql = "SELECT * FROM rayon WHERE id in (select rayon from objects where id = $obj[id])";
$result = mysql_query($sql);
if ($result) {
$rayon = mysql_fetch_assoc($result);
}
/*if ((isset($rayon) && $rayon['is_lo'] == 1) ||
(isset($obj['lo_city_id']) && $obj['lo_city_id'] > 0)) {
echo "Ленинградская область";
} else {
echo "Санкт-Петербург";
}*/
if ($obj['id_rf_region'] == 50) {
if (is_bool(strpos($obj['adres'], "Ленинградская область"))) {
echo "Ленинградская область,";
}
} else if ($obj['id_rf_region'] == 81) {
echo "Санкт Петербург,";
} else if ($obj['id_rf_region'] == 77) {
$sqlRegion = "SELECT parent.name as parent,rf_regions.name FROM rf_regions as parent
LEFT JOIN rf_regions on rf_regions.parent = parent.id
LEFT JOIN rf_region_rayons ON rf_region_rayons.rf_region_id = rf_regions.id
WHERE rayon_id in (select rayon from objects where id = $obj[id])";
$rezRegion = mysql_query($sqlRegion);
if ($rezRegion) {
$region = mysql_fetch_assoc($rezRegion);
echo $region['parent'] . ',' . $region['name'] . ' округ,';
}
}
?>
<?php
if ($obj['rayon'] && $obj['id_rf_region'] == 81) {
if (strpos($obj['rayon'], "район") or strpos($obj['adres'], "район") or strpos($obj['adres'], "р-н")) {
echo $obj['rayon'] . ',';
} else {
echo $obj['rayon'] . " район,";
}
}
?>
<?php
echo str_replace('г. Санкт-Петербург, ', '', $obj['adres']);
if ($obj['dom']) {
echo ", " . $obj['dom'];
}
if ($obj['korpus']) {
echo ", корпус " . $obj['korpus'];
}
if ($obj['litera']) {
echo ", литера " . $obj['litera'];
} ?>
</span>
<span id="scrollMap" style="display: none"><i
class="ti-map-alt"></i><span>на карте</span></span>
</div>
<div class="object-subway object-subway<?= $i ?>">
<span><?php
$mtr = array();
$sql = "SELECT metro.metro FROM metro, sp_metro
WHERE sp_metro.id_metro = metro.id AND sp_metro.id_obj = $obj[id]";
$result = mysql_query($sql);
while ($m = mysql_fetch_row($result)) $mtr[] = $m[0];
echo implode(", ", $mtr);
?></span>
<span><?php
if ($obj['peshkom']) echo $obj['peshkom'] . " минут пешком";
if ($obj['peshkom'] and $obj['transport']) echo " или ";
if ($obj['transport']) echo $obj['transport'] . " минут на транспорте";
?>
</span>
</div>
</div>
<div class="price">
<p class="biglin">Цена:</p>
<h1><?php echo number_format($obj['stoim'], 0, ',', ' ') . '<span class="rub">p</span>' . ($obj['operation_type'] == 1 ? "<br/>" : "") . '<span' . ($obj['operation_type'] == 0 && $obj['type'] == 7 ? " style='display:none;'" : "") . ($obj['operation_type'] == 1 ? " style='font-size:24px;'" : "") . '>' . $obj['stoim_prim']; ?></span></h1>
</div>
<?php
$userSql = "SELECT id, fio, phone, photo, id_manager, user_logo FROM users WHERE id='$obj[id_agent]'";
$rez_user = mysql_query($userSql);
$user = mysql_fetch_assoc($rez_user);
if ($user['id_manager']) {
$sql="SELECT id_manager, photo, fio FROM users WHERE id=$user[id_manager]";
$rez=mysql_query($sql);
$manager = mysql_fetch_assoc($rez);
if($manager['id_manager']) {
$agency = mysql_fetch_assoc(mysql_query("SELECT id_manager, photo, fio FROM users WHERE id=$manager[id_manager]"));
} else {
$agency = $manager;
}
$user['photo'] = $agency['photo'];
$user['agencyName'] = trim($agency['last_name'] . ' ' . $agency['first_name'] . ' ' . $agency['middle_name']);
} else {
$user['agencyName'] = trim($user['last_name'] . ' ' . $user['first_name'] . ' ' . $user['middle_name']);
}
?>
<div class="number">
<div class="inner">
<p class="biglin">Телефон:</p>
<h1><?php if ($user != null) { echo $user['phone'];} else { echo "$obj[phone]";} ?></h1>
<div class='name'><?php if ($user != null) { echo trim($user['last_name'] . ' ' . $user['first_name'] . ' ' . $user['middle_name']); } else { echo $obj['sobstv']; } ?></div>
</div>
</div>
<div class="clear"></div>
<div class="square">
<p class="biglin">Общая информация:</p>
<div class="columns">
<?php
if ($obj['type'] == 7) {
if ($obj['ploshad'] * 1 != 0) {
echo '<div class="info-label">Площадь:</div>';
echo '<div class="info-value">' . $obj['land_area'] * 1;
echo ' соток</div><div class="clear"></div>';
}
} else {
if ($obj['ploshad'] * 1 != 0) {
echo '<div class="info-label">Общая площадь:</div>';
echo '<div class="info-value">' . $obj['ploshad'] * 1;
echo 'м<sup>2</sup></div><div class="clear"></div>';
}
if ($obj['ploshad_komn'] * 1 != 0) {
echo '<div class="info-label">Площадь комнат:</div>';
echo '<div class="info-value">' . $obj['ploshad_komn'];
echo 'м<sup>2</sup></div><div class="clear"></div>';
}
if ($obj['ploshad_k'] * 1 != 0) {
echo '<div class="info-label">Площадь кухни:</div>';
echo '<div class="info-value">' . $obj['ploshad_k'] * 1;
echo 'м<sup>2</sup></div><div class="clear"></div>';
}
if ($obj['etazh'] * 1 != 0) {
echo '<div class="info-label">Этаж:</div>';
if ((int)$obj['etazh'] == 1 && $obj['etaz_first_type'] > 0) {
echo '<div class="info-value">' . $etaz_first_types[$obj['etaz_first_type']];
} else {
echo '<div class="info-value">' . $obj['etazh'];
}
if ($obj['etazh_iz'] * 1 != 0) echo " из " . $obj['etazh_iz'];
echo '</div>';
}
}
if ($obj['operation_type'] == 1 && $obj['deal_type']) {
echo '<div class="info-label">Тип сделки:</div>';
echo '<div class="info-value">' . $obj['deal_type_name'];
echo '</div><div class="clear"></div>';
}
if ($obj['operation_type'] == 1 && $obj['commission']) {
echo '<div class="info-label">Комиссия встречному агенту:</div>';
echo '<div class="info-value">' . $obj['commission'];
echo '&nbsp;%</div><div class="clear"></div>';
}
?>
</div>
</div>
<?php if ($obj['operation_type'] == 1 && $obj['type'] != 7) { ?>
<div class="square">
<p class="biglin">Информация о доме:</p>
<div class="columns">
<?php
if ($obj['house_material']) {
echo '<div class="info-label">Материал:</div>';
echo '<div class="info-value">' . $obj['house_material_name'];
echo '</div><div class="clear"></div>';
}
if ($obj['house_type']) {
echo '<div class="info-label">Тип:</div>';
echo '<div class="info-value">' . $obj['house_type_name'];
echo '</div><div class="clear"></div>';
}
if ($obj['build_year']) {
echo '<div class="info-label">Год постройки:</div>';
echo '<div class="info-value">' . $obj['build_year'];
echo '</div><div class="clear"></div>';
}
?>
</div>
</div>
<?php } ?>
<?php if ($obj['operation_type'] == 0 && $obj['type'] != 7) { ?>
<div class="have">
<div class="inner">
<p class="biglin">Удобства:</p>
<ul>
<?php
if ($obj['stirka']) echo '<li><span class="tooltip tooltip-effect"><div class="icon"><img src="/images/washing-click.png" class="icon" height="36px"></div>стиральная машина<span class="tooltip-content" style="width:auto;"><b class="tooltip-text">стиральная машина</b></span></span></li>';
if ($obj['holod']) echo '<li><span class="tooltip tooltip-effect"><div class="icon"><img src="/images/refregerator-click.png" class="icon" height="36px"></div><b>холодильник</b><span class="tooltip-content" style="width:auto;"><b class="tooltip-text">холодильник</b></span></span></li>';
if ($obj['tv']) echo '<li class="tv"><span class="tooltip tooltip-effect"><div class="icon"><img src="/images/television-click.png" class="icon" height="36px"></div>телевизор<span class="tooltip-content" style="width:auto;"><b class="tooltip-text">телевизор</b></span></span></li>';
if ($obj['mebel']) echo '<li><span class="tooltip tooltip-effect"><div class="icon"><img src="/images/furniture-click.png" class="icon" height="36px"></div>мебель<span class="tooltip-content" style="width:auto;"><b class="tooltip-text">мебель</b></span></span></li>';
?>
</ul>
</div>
</div>
<?php } ?>
<div class="clear"></div>
<div class="description">
<p class="biglin">Описание:</p>
<p style="overflow-x: auto;"><?php echo cleanHtml($obj['opis']); ?></p>
</div>
</div>
</div>
</div>
<div class="f_object-row">
<div class="f-object_left">
<div class="on-map" style="">
<?php echo '<div id="map_canvas' . $i . '" style="width:100%; height:440px"></div>'; ?>
</div>
</div>
<div class="f-object_right">
</div>
<div class="clear"></div>
</div>
</div>
</div>
</div>
<?php
}
function curl_request($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CERTINFO, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // запретить проверку сертификата удаленного сервера
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0");
curl_setopt($ch, CURLOPT_REFERER, "https://joywork.ru/");
curl_setopt($ch, CURLOPT_HEADER, 0); // При установке этого параметра в 1 результат будет включать полученные заголовки.
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // При установке этого параметра в ненулевое значение CURL будет возвращать результат, а не выводить его.
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); //при получении HTTP заголовка "Location: " будет происходить перенаправление на указанный этим заголовком URL
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
$content = curl_exec($ch);
curl_close($ch);
return $content;
}
?>
</div>