Joywork/webhooks/incoming/object_links.php
2026-05-22 21:21:54 +03:00

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);
}
}
}