caching = false; $smarty -> cache_lifetime = 86400; /* ---------------------------------------------------------------------- 01.03.2023 Получаем историю просмотров ---------------------------------------------------------------------- */ $tovarHistory=\DB::getAll( "SELECT `id`, `title`, `akccena` FROM `tovar` WHERE `id` IN ( SELECT `tovar_id` FROM `tovar_history` WHERE `session_id`=? ORDER BY RAND()) AND `status`=1 LIMIT 20", \core::checkMe() ); for ( $i=0; $i < count( $tovarHistory ); $i++ ){ $tovarHistory[$i]['cena'] = \DB::getValue ( "SELECT `cena` FROM `tovar_price_history` WHERE `status`=1 AND `tovar_id`=? ORDER BY `t` DESC", $tovarHistory[$i]['id'] ); $tovarHistory[$i]['img'] = \DB::getValue ( "SELECT `filename` FROM `tovar_img` WHERE `tovar_id`=? LIMIT 1", $tovarHistory[$i]['id']); } $smarty -> assign( 'tovarHistory', $tovarHistory ); /* ---------------------------------------------------------------------- 28.02.2023 Получаем коментарии ---------------------------------------------------------------------- */ $comments = \DB::getAll( "SELECT * FROM `tovar_otzyv` WHERE `tovar_id`=? AND `status`=1 ORDER BY `t` DESC", $_GET['id'] ); for ( $i=0; $i < count($comments); $i++ ) $comments[$i]['fio'] = \DB::getValue( "SELECT `fio` FROM `users` WHERE `id`=?", $comments[$i]['user_id'] ); $smarty -> assign( 'comments', $comments ); $smarty -> assign( 'inc_comments', 'api/modules/tovar_show/comments.html' ); /* ---------------------------------------------------------------------- 17.12.2022 Получаем данные о товаре ---------------------------------------------------------------------- */ $page = \DB::getAll( "SELECT * FROM `tovar` WHERE `id`=? LIMIT 1", $_GET['id'] ); $page[0]['date'] = date( 'd.m.Y', @$page[0]['t'] ); /* ---------------------------------------------------------------------- 03.03.2023 Смотрим есть ли цена из таблицы товаров в регистре цен, если нет - переносим данные туда и убираем из товара ---------------------------------------------------------------------- */ $tmpCena=\DB::getValue("SELECT `cena` FROM `tovar_price_history` WHERE `tovar_id`=? AND `status`=1 ORDER BY `t` DESC LIMIT 1", $_GET['id']); if ($page[0]['cena']!=$tmpCena && $page[0]['cena']){ //Создаем документ $jsonDoc[0]['tovar_id']=$_GET['id']; $jsonDoc[0]['cena']=$page[0]['cena']; $docID=\DB::add("INSERT INTO `docs` (`t`, `tip`, `json`, `status`, `comment`) VALUES(?, 'pereocenka', ?, 1, ?)", array( time(), \json::to_j($jsonDoc), 'Документ создан из публичной карточки товара' )); \DB::add("INSERT INTO `tovar_price_history` (`status`, `tovar_id`, `cena`, `docs_id`, `t`) VALUES (1, ?, ?, ?, ?)", array( $_GET['id'], $page[0]['cena'], $docID, time() )); \DB::set("UPDATE `tovar` SET `cena`=NULL WHERE `id`=?", $_GET['id']); } /* ---------------------------------------------------------------------- 03.01.2023 Хлебные крошки ---------------------------------------------------------------------- */ $smarty->assign('Breadcrumb', \core::getBreadcrumb( 'tovar_category', $page[0]['category'] ) ); /* ---------------------------------------------------------------------- 03.01.2023 Получаем картинку категории ---------------------------------------------------------------------- */ $smarty->assign('catImg', \DB::getValue( "SELECT `filename` FROM `tovar_category_img` WHERE `tovar_category_id`=?", $page[0]['category'] ) ); /* ---------------------------------------------------------------------- 17.12.2022 Получаем данные о последней цене на товар ---------------------------------------------------------------------- */ $cena=\DB::getAll ( "SELECT `cena`, `t` FROM `tovar_price_history` WHERE `status`=1 AND `tovar_id`=? ORDER BY `t` DESC", $_GET['id']); if ( $page[0]['partner']=='samson'){ //Берем цену с сайта партнера $curl = curl_init('https://api.samsonopt.ru/v1/sku/' . $page[0]['code'] . '/?api_key=4e2ef85d3ec9e27cc2a148c74a47d804'); $arHeaderList = array(); $arHeaderList[] = 'Accept: application/json'; $arHeaderList[] = 'User-Agent: 4e2ef85d3ec9e27cc2a148c74a47d804'; $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'); $result2 = \json::from_j(curl_exec($curl)); curl_close($curl); //\DB::set( "UPDATE `tovar` SET `json`=? WHERE `id`=?", array( $result2, $_GET['id'] ) ); //print_r($result2['data'][0]); //Сохраняем штрих код $barcode=$result2['data'][0]['barcode'];//str if ($barcode){ $id_barcode=\DB::getValue("SELECT `id` FROM `tovar_barcode` WHERE `barcode`=? AND `tovar_id`=? LIMIT 1", array( $barcode, $_GET['id'] ) ); if (!$id_barcode)\DB::add("INSERT INTO `tovar_barcode` (`barcode`, `tovar_id`) VALUES (?, ?)", array( $barcode, $_GET['id'] )); } $brand=$result2['data'][0]['brand'];//str if($brand){ $id_brand=\DB::getValue("SELECT `id` FROM `tovar_brand` WHERE `brand`=? AND `tovar_id`=? LIMIT 1", array( $brand, $_GET['id'] ) ); if (!$id_brand)\DB::add("INSERT INTO `tovar_brand` (`brand`, `tovar_id`) VALUES (?, ?)", array( $brand, $_GET['id'] )); } } /* //Загружаем правильные картинки if ($page[0]['check_img']!=1){ $images=$result2['data'][0]['photo_list'];//array $old_img=\DB::getAll("SELECT * FROM `tovar_img` WHERE `tovar_id`=?", $_GET['id']); for ($i=0; $i assign( 'page', $page ); /* ---------------------------------------------------------------------- 17.12.2022 Получаем картинки ---------------------------------------------------------------------- */ $imagesTovar = \DB::getAll( "SELECT * FROM `tovar_img` WHERE `tovar_id`=?", $_GET['id'] ); if ($_SERVER['SERVER_NAME']=='v.yurecnt.ru'){ for ($i=0; $ithumb(600, 400); $image->save('img/' . $_SERVER['SERVER_NAME'] . '/tovar/square/' . $imagesTovar[$i]['filename'] . '.jpg'); unset ($image); } }*/ } $smarty -> assign( 'imagesTovar', $imagesTovar ); $countImg=count($imagesTovar); \DB::set("UPDATE `tovar` SET `countImg`=? WHERE `id`=?", array( $countImg, $_GET['id'] ) ); /* ---------------------------------------------------------------------- 17.12.2022 Получаем характеристики из БД ---------------------------------------------------------------------- */ $har = \DB::getAll( "SELECT * FROM `tovar_har` WHERE `tovar_id`=?", $_GET['id'] ); for ( $i=0; $i < count( $har ); $i++ ) $har[$i]['opt']=\DB::getValue("SELECT `txt` FROM `tovar_har_sp` WHERE `id`=?", $har[$i]['tovar_har_sp_id']); $smarty -> assign( 'har', $har ); /* ---------------------------------------------------------------------- 17.12.2022 Пишем историю ---------------------------------------------------------------------- */ $session_id = ( $_SESSION['user_id'] ) ? $_SESSION['user_id'] : session_id(); unset($id); $id=\DB::getValue("SELECT `id` FROM `tovar_history` WHERE `tovar_id`=? AND `session_id`=?", array( $_GET['id'], $session_id ) ); if (!$id) \DB::add( "INSERT INTO `tovar_history` (`tovar_id`, `session_id`, `t`) VALUES (?, ?, ?)", array( $_GET['id'], $session_id, time() ) ); /* ---------------------------------------------------------------------- 05.02.2023 ищем похожие товары - этой же категории, но рандомно ---------------------------------------------------------------------- */ $rndTovar=\DB::getAll("SELECT * FROM `tovar` WHERE `category`=? ORDER BY RAND() LIMIT 10", $page[0]['category']); //print_r($rndTovar); for ($i=0; $i assign( 'rndTovar', $rndTovar ); //$smarty->assign('keywords', \core::getMeta( $_GET['mod'], $_GET['id'], 'keywords') ); //$smarty->assign('description', \core::getMeta( $_GET['mod'], $_GET['id'], 'description') ); ?>