caching = true; $smarty->cache_lifetime = 864000; } class modClass { public static $catID = 0; // int public static $pageID = 0; // int public static $showTovars = 30; // int public static $html = ''; // int static function getImgHidrootvet($sku) { } static function getImgSamson($id, $sku) { $curl = curl_init('https://api.samsonopt.ru/v1/sku/' . $sku . '?api_key=3f8f720d5a2923a1ff02be994090b002'); $arHeaderList = []; $arHeaderList[] = 'Accept: application/json'; $arHeaderList[] = 'User-Agent: string'; $arHeaderList[] = 'Accept-Encoding: gzip'; curl_setopt($curl, CURLOPT_HTTPHEADER, $arHeaderList); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); curl_setopt($curl, CURLOPT_ENCODING, 'gzip'); $result = curl_exec($curl); //print_r($result); curl_close($curl); $m = \core::j($result); $imgs = $m['data'][0]['photo_list']; //print_r($m); if (!$m['error']) { $c = count($imgs); mkdir('img/tk-ligat.ru/tovar/' . $id, 0700); for ($i = 0; $i < $c; $i++) { $fm = \core::genpassword(30); //$target='img/tk-ligat.ru/tovar/' . $id . '/' . $fm . '.jpg'; exec("wget " . $imgs[$i] . " -O img/tk-ligat.ru/tovar/" . $id . '/' . $fm . ".jpg"); //echo "wget " . $imgs[$i] . " -O /www/core/img/tk-ligat.ru/tovar/" . $id . '/' . $fm . ".jpg"; $images[$i]['filename'] = $fm; $images[$i]['tip'] = 'jpg'; } \DBmysql::set("UPDATE `tovar` SET `images`=?, `status`=1 WHERE `id`=?", [\core::j($images), $id]); }else{ \DBmysql::set("UPDATE `tovar` SET `status`=0 WHERE `id`=?", $id); } } static function getInfoSamson($sku) { $curl = curl_init('https://api.samsonopt.ru/v1/sku/' . $sku . '?api_key=3f8f720d5a2923a1ff02be994090b002'); $arHeaderList = []; $arHeaderList[] = 'Accept: application/json'; $arHeaderList[] = 'User-Agent: string'; $arHeaderList[] = 'Accept-Encoding: gzip'; curl_setopt($curl, CURLOPT_HTTPHEADER, $arHeaderList); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); curl_setopt($curl, CURLOPT_ENCODING, 'gzip'); $result = curl_exec($curl); curl_close($curl); $m = \core::j($result); $brand = $m['data'][0]['brand']; $barcode = $m['data'][0]['barcode']; $br_id = \DBmysql::getValue("SELECT `id` FROM `content` WHERE `title`=? AND `site`=? AND `content_type`=? LIMIT 1", [$brand, $_SERVER['SERVER_NAME'], 'brand']); if (!$br_id && $brand) $br_id = \DBmysql::add("INSERT INTO `content` (`title`, `site`, `content_type`)VALUES(?,?,?)", [$brand, $_SERVER['SERVER_NAME'], 'brand']); $bar_id = \DBmysql::getValue("SELECT `id` FROM `content` WHERE `title`=? AND `site`=? AND `content_type`=? LIMIT 1", [$barcode, $_SERVER['SERVER_NAME'], 'barcode']); if (!$bar_id && $barcode) $bar_id = \DBmysql::add("INSERT INTO `content` (`title`, `site`, `content_type`)VALUES(?,?,?)", [$barcode, $_SERVER['SERVER_NAME'], 'barcode']); //Пересобираем json у товара $j = \DBmysql::getValue("SELECT `json` FROM `tovar` WHERE `id`=? AND `site`=? LIMIT 1", [$_GET['id'], $_SERVER['SERVER_NAME']]); $m = \core::j($j); $m['brand'] = $brand; $m['brand_id'] = $br_id; $m['barcode'] = $barcode; $m['barcode_id'] = $bar_id; $j = \core::j($m); \DBmysql::set("UPDATE `tovar` SET `json`=? WHERE `id`=?", [$j, $_GET['id']]); } /* ---------------------------------------------------------------------- 26.08.2024 Заполняем фильтр характеристик ---------------------------------------------------------------------- */ static function createFilter($id) { //echo $id; } static function updPriceSamson($sku, $cena){ // echo $sku; $curl = curl_init('https://api.samsonopt.ru/v1/sku/' . $sku . '/price/?api_key=3f8f720d5a2923a1ff02be994090b002'); $arHeaderList = []; $arHeaderList[] = 'Accept: application/json'; $arHeaderList[] = 'User-Agent: 3f8f720d5a2923a1ff02be994090b002'; $arHeaderList[] = 'Accept-Encoding: gzip'; curl_setopt($curl, CURLOPT_HTTPHEADER, $arHeaderList); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); curl_setopt($curl, CURLOPT_ENCODING, 'gzip'); $result = curl_exec($curl); $array=\core::j($result); if ($array['error']['error_message']=='Товар с указанным кодом не найден.'){ \DBmysql::set("UPDATE `tovar` SET `status`=0 WHERE `id`=?", $_GET['id']); }else{ $new_cena = round($array['data'][0]['value'] * 1.75); //echo $new_cena; if ($new_cena) \DBmysql::set("UPDATE `tovar` SET `cena`=?, `old_cena`=?, `uppricetime`=?, `status`=? WHERE `id`=? LIMIT 1", [$new_cena, $cena, time(), 1, $_GET['id']]); } //print_r($array); } /* ---------------------------------------------------------------------- 30.08.2024 Обновление цен самсон ---------------------------------------------------------------------- */ static function updatePrice($partner, $uppricetime, $cena, $code, $donor = '') { if ($partner == 'samson' && $uppricetime < time() - 259200) {// $curl = curl_init('https://api.samsonopt.ru/v1/sku/' . $code . '/price/?api_key=3f8f720d5a2923a1ff02be994090b002'); $arHeaderList = []; $arHeaderList[] = 'Accept: application/json'; $arHeaderList[] = 'User-Agent: 3f8f720d5a2923a1ff02be994090b002'; $arHeaderList[] = 'Accept-Encoding: gzip'; curl_setopt($curl, CURLOPT_HTTPHEADER, $arHeaderList); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); curl_setopt($curl, CURLOPT_ENCODING, 'gzip'); $result = curl_exec($curl); //print_r($result); curl_close($curl); $new_cena = round(\core::j($result)['data'][0]['value'] * 1.75); //echo $new_cena; if ($new_cena) \DBmysql::set("UPDATE `tovar` SET `cena`=?, `old_cena`=?, `uppricetime`=?, `status`=? WHERE `id`=? LIMIT 1", [$new_cena, $cena, time(), 1, $_GET['id']]); } if ($partner == 'leopak' && $uppricetime < time() - 259200) { $html = \core::get_page($donor); if ($html['code'] == 200) { require_once 'api/soft/phpQuery-master/phpQuery/phpQuery.php'; $doc = phpQuery::newDocument($html['html']); $cena1 = $doc->find('.details-payment-cell .price .price-current .price-number'); $c = pq($cena1)->text(); if ($c) $new_cena = round($c * 1.5, 2); if ($new_cena) \DBmysql::set("UPDATE `tovar` SET `cena`=?, `old_cena`=?, `uppricetime`=?, `status`=? WHERE `id`=? LIMIT 1", [$new_cena, $cena, time(), 1, $_GET['id']]); } else { \DBmysql::set("UPDATE `tovar` SET `status`=? WHERE `id`=?", [0, $_GET['id']]); } } return $new_cena; } static function getRndTovar($category, $limit = 24) { if (class_exists('DBmysql')) { $tovar = \DBmysql::getAll("SELECT `title`, `id`, `cena`, `artikul`, `code`, `images` FROM `tovar` WHERE `category`=? AND `status`=1 ORDER BY RAND() LIMIT " . $limit, $category); } else { $tovar = \DB::getAll("SELECT `title`, `id`, `cena`, `artikul`, `code`, `images` FROM `tovar` WHERE `category`=? AND `status`=1 ORDER BY RANDOM() LIMIT ?", [$category, $limit]); } $c = count($tovar); for ($i = 0; $i < $c; $i++) $tovar[$i]['img'] = ($tovar[$i]['images']) ? \core::getFirstImgJSON($tovar[$i]['id'], 'tovar', $tovar[$i]['images']) : \core::getFirstImg($tovar[$i]['id'], 'tovar'); return $tovar; } static function setHistory()//пишем историю { if (class_exists('DBmysql')) { $id = \DBmysql::getValue("SELECT `t` FROM `history` WHERE `content_id`=? AND `content_type`=? AND `site`=? AND `token`=?", [$_GET['id'], 'tovar', $_SERVER['SERVER_NAME'], session_id()]); if (!$id) \DBmysql::add("INSERT INTO `history` (`content_id`, `content_type`, `site`, `token`, `t`) VALUES (?, ?, ?, ?, ?)", [$_GET['id'], 'tovar', $_SERVER['SERVER_NAME'], session_id(), time()]); //очищалка if (date("H:i:s", time()) == '00:00:00') \DBmysql::set("DELETE FROM `history` WHERE `t`assign('tovar_category', \DBmysql::getAll("SELECT `id`, `title` FROM `tovar_category` WHERE `status`=1 ORDER BY `title`")); $smarty->assign('inc_comments', 'api/modules/tovar_show/comments.html'); /* ---------------------------------------------------------------------- 17.12.2022 Получаем данные о товаре ---------------------------------------------------------------------- */ $res = modClass::getTovar2(); $hars = modClass::getTovarHars2(); $res['massiv'] = \core::j($res['tovar']['json']); //print_r($res); /* ---------------------------------------------------------------------- 08.07.2023 Штрихкод ---------------------------------------------------------------------- */ $cena == modClass::updatePrice($res['massiv']['partner'], $res['tovar']['uppricetime'], $res['tovar']['cena'], $res['tovar']['code'], $res['massiv']['donor']); if ($cena) $res['tovar']['cena'] = $cena; $smarty->assign('tovar', $res['tovar']); $smarty->assign('massiv', $res['massiv']); $smarty->assign('har', $hars); //$imgList = \core::getAllImg($res['tovar']['id'], 'tovar'); if ($res['tovar']['images']) $imgList = \core::getAllImgJson($res['tovar']['id'], 'tovar', $res['tovar']['images']); //print_r($imgList); //print_r($res); $smarty->assign('imgList', $imgList); /* ---------------------------------------------------------------------- 03.01.2023 Хлебные крошки ---------------------------------------------------------------------- */ $smarty->assign('Breadcrumb', \core::getBreadcrumb('tovar_category', $res['tovar']['category'])); $smarty->assign('rndTovar', modClass::getRndTovar($res['tovar']['category'], 16)); $smarty->assign('tovarHistory', modClass::getHistory(16)); /* ---------------------------------------------------------------------- 15.10.2023 Пишем статистику просмотров ---------------------------------------------------------------------- */ modClass::setHistory(); //https://tk-ligat.ru/tovar_show/42963 ?>