256 lines
12 KiB
PHP
256 lines
12 KiB
PHP
|
|
<?php
|
|||
|
|
|
|||
|
|
require_once($_SERVER['DOCUMENT_ROOT']."/config.php");
|
|||
|
|
|
|||
|
|
if($_SESSION['id'] && isset($_POST['objId']) && is_numeric($_POST['objId'])) {
|
|||
|
|
$db_sphinx = new MysqlPdo(hstsph2, null, null, null, true, '9306');
|
|||
|
|
|
|||
|
|
$post = clearInputData($_POST);
|
|||
|
|
|
|||
|
|
$sql = "SELECT * FROM users WHERE id = $_SESSION[id]";
|
|||
|
|
$rez = mysql_query($sql);
|
|||
|
|
$user = mysql_fetch_assoc($rez);
|
|||
|
|
|
|||
|
|
$dateAdd = date("Y-m-d H:i:s");
|
|||
|
|
|
|||
|
|
$phone = $user['phone'];
|
|||
|
|
$num_search = num_search($user['phone']);
|
|||
|
|
/*if(!empty($user['phone2'])){
|
|||
|
|
$phone = $phone.' '.$user['phone2'];
|
|||
|
|
}*/
|
|||
|
|
|
|||
|
|
$agency = new User;
|
|||
|
|
$agency->get($_SESSION['id']);
|
|||
|
|
|
|||
|
|
if (!isset($agency->agencyId)) {
|
|||
|
|
$agency->agencyId = $_SESSION['id'];
|
|||
|
|
if (!empty($agency->agency_name) && $agency->agency)
|
|||
|
|
$agency->agencyName = $agency->agency_name;
|
|||
|
|
elseif (!empty($agency->agency_name) && $agency->agency)
|
|||
|
|
$agency->agencyName = $agency->agency_name;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($_SESSION['agency']) {
|
|||
|
|
$sobstv = trim($user['last_name'] . ' ' . $user['first_name'] . ' ' . $user['middle_name']) . ", агентство " . $user['agency_name'];
|
|||
|
|
} else {
|
|||
|
|
if (isset($agency->agencyName)) {
|
|||
|
|
$sobstv = trim($user['last_name'] . ' ' . $user['first_name'] . ' ' . $user['middle_name']) . ", агентство " . $agency->agencyName;
|
|||
|
|
} else {
|
|||
|
|
$sobstv = trim($user['last_name'] . ' ' . $user['first_name'] . ' ' . $user['middle_name']);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$sql3="SELECT * FROM objects WHERE objects.id = $post[objId]";
|
|||
|
|
$rez_obj=mysql_query($sql3);
|
|||
|
|
$obj=mysql_fetch_assoc($rez_obj);
|
|||
|
|
|
|||
|
|
if ($obj) {
|
|||
|
|
|
|||
|
|
$link = '';
|
|||
|
|
|
|||
|
|
$sqlAdsLink = "SELECT ads_url FROM ads_objects WHERE obj_id = $obj[id]";
|
|||
|
|
$rezAdsLink = mysql_query($sqlAdsLink);
|
|||
|
|
|
|||
|
|
if (mysql_num_rows($rezAdsLink) > 0) {
|
|||
|
|
$link = mysql_fetch_assoc($rezAdsLink)['ads_url'];
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//ставим родительский регион, так как в выпадайке на форме только регионы с parent = 0
|
|||
|
|
$sqlRegions = "SELECT * FROM rf_regions WHERE id = $obj[id_rf_region]";
|
|||
|
|
$rezRegions = mysql_query($sqlRegions);
|
|||
|
|
if (mysql_num_rows($rezRegions) > 0) {
|
|||
|
|
$region = mysql_fetch_assoc($rezRegions);
|
|||
|
|
|
|||
|
|
if ($region['parent']) {
|
|||
|
|
$obj['id_rf_region'] = $region['parent'];
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//переносим объект
|
|||
|
|
$opis = '';
|
|||
|
|
if(!empty($obj['opis'])){
|
|||
|
|
$opis = mysql_real_escape_string(cleanHtml($obj['opis'], '<p><br><strong><em><ul><ol><li>'));
|
|||
|
|
}
|
|||
|
|
$sql = "INSERT INTO objects(prim_srok, nazv, type, rayon, adres, dom, peshkom, transport, srok, komnat, vsego_komn, etazh, etazh_iz, ploshad, ploshad_k, ploshad_komn, holod, stirka, tv, mebel, stoim, stoim_prim, opis, phone, moder, date_add, sobstv, phone_search, id_add_user, id_user, date_really_add, commission, add_to_yandex_feed, add_from_archive, initial_object_id, initial_object_phone, initial_object_sobstv, type_category, operation_type, id_rf_region)
|
|||
|
|
VALUES('$obj[prim_srok]', '$obj[nazv]', '$obj[type]', '$obj[rayon]', '$obj[adres]', '$obj[dom]', '$obj[peshkom]', '$obj[transport]', '$obj[srok]', '$obj[komnat]', '$obj[vsego_komn]', '$obj[etazh]', '$obj[etazh_iz]', '$obj[ploshad]', '$obj[ploshad_k]', '$obj[ploshad_komn]', '$obj[holod]', '$obj[stirka]', '$obj[tv]', '$obj[mebel]', '$obj[stoim]', '$obj[stoim_prim]', '$opis', '$phone', '$obj[moder]', '$dateAdd', '$sobstv', '$num_search', '$_SESSION[id]', '$_SESSION[id]', NOW(), '0', '0', '1', '$obj[id]', '$obj[phone]', '$obj[sobstv]', '$obj[type_category]', '$obj[operation_type]', '$obj[id_rf_region]')";
|
|||
|
|
mysql_query($sql);
|
|||
|
|
|
|||
|
|
|
|||
|
|
$id = mysql_insert_id();
|
|||
|
|
|
|||
|
|
|
|||
|
|
//Запрос в сфинкс
|
|||
|
|
$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('$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()."', '$num_search', '$_SESSION[id]', '0', '$obj[type_category]', '$obj[operation_type]', '$obj[id_rf_region]')";
|
|||
|
|
|
|||
|
|
$db_sphinx->query($sql_sh, true);
|
|||
|
|
//переносим метро
|
|||
|
|
$sql4="SELECT * FROM sp_metro WHERE id_obj = $post[objId]";
|
|||
|
|
$rez_metro=mysql_query($sql4);
|
|||
|
|
while($m = mysql_fetch_assoc($rez_metro)) {
|
|||
|
|
$sql = "INSERT INTO sp_metro(id_obj, id_metro) VALUES('$id', '$m[id_metro]')";
|
|||
|
|
mysql_query($sql);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//переносим фото
|
|||
|
|
$sqlSelectPhoto = "select oop.id, oop.object_photo_id, oop.sort_order from objects_object_photo oop where oop.object_id = $post[objId]";
|
|||
|
|
$rezSelectPhoto = mysql_query($sqlSelectPhoto);
|
|||
|
|
|
|||
|
|
if (mysql_num_rows($rezSelectPhoto) > 0) {
|
|||
|
|
|
|||
|
|
$result = SelectelApi::getTokenAndUrl();
|
|||
|
|
|
|||
|
|
$token = $result[0];
|
|||
|
|
$storageUrl = $result[1];
|
|||
|
|
|
|||
|
|
while ($objPh = mysql_fetch_assoc($rezSelectPhoto)) {
|
|||
|
|
$sqlPhoto = "SELECT * FROM object_photo where id = $objPh[object_photo_id]";
|
|||
|
|
$rezPhoto = mysql_query($sqlPhoto);
|
|||
|
|
|
|||
|
|
if (mysql_num_rows($rezPhoto) > 0) {
|
|||
|
|
$photo = mysql_fetch_assoc($rezPhoto);
|
|||
|
|
|
|||
|
|
$pathInfo = pathinfo($photo['photo']);
|
|||
|
|
|
|||
|
|
if (stripos($photo['photo'], "http://") === false && stripos($photo['photo'], "https://") === false) {
|
|||
|
|
$photo['photo'] = $_SERVER['DOCUMENT_ROOT'] . "/photos/" . $photo['photo'];
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$content = file_get_contents($photo['photo']);
|
|||
|
|
|
|||
|
|
$ext = $pathInfo['extension'];
|
|||
|
|
|
|||
|
|
if (!$pathInfo['extension']) {
|
|||
|
|
$ext = 'jpg';
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (strlen($ext) > 4) {
|
|||
|
|
$ext = 'jpg';
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$ph = md5($pathInfo['filename'].time())."_cpd.".$ext;
|
|||
|
|
|
|||
|
|
$one = mb_substr($ph, 0, 1);
|
|||
|
|
$two = mb_substr($ph, 1, 1);
|
|||
|
|
$three = mb_substr($ph, 3, 1);
|
|||
|
|
|
|||
|
|
$ph = "$one/$two/$three/$ph";
|
|||
|
|
|
|||
|
|
if (!is_dir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one")) {
|
|||
|
|
mkdir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!is_dir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two")) {
|
|||
|
|
mkdir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!is_dir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two/$three")) {
|
|||
|
|
mkdir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two/$three");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$f1 = fopen($_SERVER['DOCUMENT_ROOT'] . "/photos/" . $ph, "a");
|
|||
|
|
fwrite($f1, $content);
|
|||
|
|
fclose($f1);
|
|||
|
|
|
|||
|
|
//загрузка в Selectel
|
|||
|
|
$fp = $_SERVER['DOCUMENT_ROOT'] . "/photos/" . $ph;
|
|||
|
|
$r = SelectelApi::uploadFile($storageUrl, $token, $fp, $ph, 'image/'.$ext);
|
|||
|
|
//если выложили в Selectel
|
|||
|
|
if ($r) {
|
|||
|
|
//заменяем путь на новый
|
|||
|
|
$ph = "https://data.joywork.ru/" . $ph;
|
|||
|
|
//удаляем файл с локального сервера
|
|||
|
|
unlink($fp);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$sqlInsPhoto = "INSERT INTO object_photo(photo) VALUES('$ph')";
|
|||
|
|
mysql_query($sqlInsPhoto);
|
|||
|
|
|
|||
|
|
$photoId = mysql_insert_id();
|
|||
|
|
$sqlInsPhotoLink = "INSERT INTO objects_object_photo(object_id, object_photo_id, sort_order) VALUES($id, $photoId, $objPh[sort_order])";
|
|||
|
|
mysql_query($sqlInsPhotoLink);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//переносим адрес
|
|||
|
|
$sqlLoc="SELECT * FROM object_location WHERE object_id = $post[objId]";
|
|||
|
|
$rezLoc=mysql_query($sqlLoc);
|
|||
|
|
while($loc = mysql_fetch_assoc($rezLoc)) {
|
|||
|
|
$sqlInsLoc = "INSERT INTO object_location(`object_id`, `address`, `latitude`, `longitude`, `street`, `rf_region_rayon`, `city`, `deleted`, `part`) VALUES($id, '$loc[address]', '$loc[latitude]', '$loc[longitude]', '$loc[street]', '$loc[rf_region_rayon]', '$loc[city]', '$loc[deleted]', '$loc[part]')";
|
|||
|
|
mysql_query($sqlInsLoc);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//переносим доп поля продажи
|
|||
|
|
if ($obj['operation_type'] == 1) {
|
|||
|
|
$sql77 = "SELECT * FROM sale_objects WHERE object_id=$post[objId]";
|
|||
|
|
$rez77 = mysql_query($sql77);
|
|||
|
|
while ($saleObj = mysql_fetch_assoc($rez77)) {
|
|||
|
|
$sql88 = "INSERT INTO sale_objects (object_id, house_material, house_type, deal_type, build_year) VALUES ('$id', '$saleObj[house_material]', '$saleObj[house_type]', '$saleObj[deal_type]', '$saleObj[build_year]')";
|
|||
|
|
mysql_query($sql88);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//переносим заметки
|
|||
|
|
$sql4="SELECT * FROM user_object_events WHERE object_id = $post[objId] and user_id = $_SESSION[id]";
|
|||
|
|
$rez_events=mysql_query($sql4);
|
|||
|
|
while($event = mysql_fetch_assoc($rez_events)) {
|
|||
|
|
$address = 'NULL';
|
|||
|
|
if ($event['address']) {
|
|||
|
|
$address = "'$event[address]'";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$sum = 'NULL';
|
|||
|
|
if ($event['sum']) {
|
|||
|
|
$sum = "'$event[sum]'";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$schDate = 'NULL';
|
|||
|
|
if ($event['schedule_date']) {
|
|||
|
|
$schDate = "'$event[schedule_date]'";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$comment = 'NULL';
|
|||
|
|
if ($event['comment']) {
|
|||
|
|
$comment = "'$event[comment]'";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$sql = "INSERT INTO user_object_events(user_id, object_id, create_date, type, address, sum, schedule_date, comment, calendar_view)
|
|||
|
|
VALUES('$event[user_id]', '$id', '$event[create_date]', '$event[type]', $address, $sum, $schDate, $comment, '$event[calendar_view]')";
|
|||
|
|
mysql_query($sql);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$com = 'Объект скопирован из Поиска (ID ' . $obj['id'] . '). Ссылка на первоисточник: <a target="_blank" href="' . $link .'">' . $link . '</a>';
|
|||
|
|
|
|||
|
|
$sql = "INSERT INTO user_object_events(user_id, object_id, create_date, type, address, sum, schedule_date, comment, calendar_view)
|
|||
|
|
VALUES('$_SESSION[id]', '$id', NOW(), 'comment', NULL, NULL, NULL, '$com', '1')";
|
|||
|
|
mysql_query($sql);
|
|||
|
|
|
|||
|
|
$sqlPriceHist = "INSERT INTO objects_price_history (object_id, date_change_price, price, price_ku) VALUES
|
|||
|
|
($id, now(), '$obj[stoim]', 0)";
|
|||
|
|
mysql_query($sqlPriceHist);
|
|||
|
|
|
|||
|
|
//переносим примечания
|
|||
|
|
$sql5 = "SELECT * FROM object_notes WHERE object_id = $post[objId]";
|
|||
|
|
$rez_notes = mysql_query($sql5);
|
|||
|
|
while($note = mysql_fetch_assoc($rez_notes)) {
|
|||
|
|
$sql = "INSERT INTO object_notes(object_id, message, created_at, created_by, updated_at, updated_by)
|
|||
|
|
VALUES($id, '$note[message]', '$note[created_at]', '$note[created_by]', '$note[updated_at]', '$note[updated_by]')";
|
|||
|
|
mysql_query($sql);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* отправка хука
|
|||
|
|
*/
|
|||
|
|
$agencyId = (int)$agency->agencyId;
|
|||
|
|
|
|||
|
|
if($agencyId > 0){
|
|||
|
|
$dataWhook = array('action'=>'object_create', 'object_id'=>$id, 'section'=>'object', 'user_id'=>$_SESSION['id'], 'agency_id'=>$agencyId);
|
|||
|
|
$w_in = new WebHookIn(null, $agencyId);
|
|||
|
|
$w_in->check_send($dataWhook);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|