45 lines
1.5 KiB
PHP
45 lines
1.5 KiB
PHP
<?php
|
|
require_once($_SERVER['DOCUMENT_ROOT']."/config.php");
|
|
|
|
|
|
header('Content-Type: application/json');
|
|
|
|
ini_set('display_errors', 1);
|
|
error_reporting(E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE);
|
|
|
|
$pdo = new MysqlPdo(hst, ndb, user, pass);
|
|
$sql = "SET NAMES 'utf8'";
|
|
$pdo->query($sql);
|
|
|
|
$content = file_get_contents('php://input');
|
|
|
|
if($_SESSION['id'] > 0){
|
|
//$content = '{"status":true,"event":"object_links_sync","timestamp":"2026-02-17T14:01:54+03:00","object_id":91819488,"link":"https:\/\/test.yarmetro.ru\/catalog\/86437"}';
|
|
}
|
|
|
|
$message = json_decode($content, true);
|
|
|
|
//var_dump($message);
|
|
|
|
$object_id = (int)$message['object_id'];
|
|
|
|
if((bool)$message['status'] !== false && $object_id > 0 && isset($message['link'])){
|
|
$is_active = 1;
|
|
$sql_obj = "SELECT id, archive FROM objects WHERE id = {$object_id}";
|
|
$q_obj = $pdo->query($sql_obj);
|
|
if($pdo->num_rows($q_obj) > 0){
|
|
$r_obj = $pdo->fetch_assoc($q_obj);
|
|
$is_active = ((int)$r_obj['archive'] == 1) ? 0 : 1;
|
|
|
|
$sql_m = "SELECT * FROM object_agencymetro_links WHERE object_id = {$object_id}";
|
|
$q_m = $pdo->query($sql_m);
|
|
if($pdo->num_rows($q_m) > 0){
|
|
$sql_up = "UPDATE object_agencymetro_links SET link = '{$message['link']}', is_active = {$is_active} WHERE object_id = {$object_id}";
|
|
$pdo->query($sql_up);
|
|
|
|
} else {
|
|
$sql = "INSERT INTO object_agencymetro_links (object_id, link) VALUES ($object_id, '{$message['link']}')";
|
|
$pdo->query($sql);
|
|
}
|
|
}
|
|
} |