259 lines
11 KiB
PHP
259 lines
11 KiB
PHP
<?php
|
||
ini_set('display_errors', 0);
|
||
@mkdir('img/' . $_SERVER['SERVER_NAME'] . '/cert', 0700);
|
||
@mkdir('img/' . $_SERVER['SERVER_NAME'] . '/tovar/square', 0700);
|
||
if (!$_SESSION['user_id'])
|
||
$smarty->caching = true;
|
||
$smarty->cache_lifetime = 86400;
|
||
$me = \core::checkMe();
|
||
|
||
|
||
|
||
|
||
function setKeywords()
|
||
{
|
||
$token = 'y0_AgAAAAABiU4jAAn8iwAAAADkWpkSbFJu1kVDTGCi5DQIA4h6RaMwKpA';
|
||
$url = ((!empty($_SERVER['HTTPS'])) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; // . $_SERVER['REQUEST_URI']
|
||
$params = array(
|
||
'ids' => '88262601',
|
||
'metrics' => 'ym:s:visits',
|
||
'dimensions' => 'ym:s:searchPhrase',
|
||
'date1' => '365daysAgo',
|
||
'date2' => 'today',
|
||
'filters' => "ym:pv:URL=='" . $url . "'"
|
||
);
|
||
// echo $url;
|
||
$ch = curl_init('https://api-metrika.yandex.net/stat/v1/data?' . urldecode(http_build_query($params)));
|
||
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: OAuth ' . $token));
|
||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
|
||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
|
||
curl_setopt($ch, CURLOPT_HEADER, false);
|
||
$res = curl_exec($ch);
|
||
curl_close($ch);
|
||
|
||
$res = json_decode($res, true);
|
||
//print_r($res);
|
||
|
||
$words = array();
|
||
foreach ($res['data'] as $row) {
|
||
$words[] = $row['dimensions'][0]['name'];
|
||
}
|
||
|
||
//print_r($words);
|
||
for ($i = 0; $i < count($words); $i++) {
|
||
$id = \DB::getValue("SELECT `id` FROM `tovar_keywords` WHERE `tovar_id`=? AND `txt`=? LIMIT 1", array($_GET['id'], $words[$i]));
|
||
if (!$id)
|
||
\DB::set("INSERT INTO `tovar_keywords` (`tovar_id`, `txt`) VALUES (?, ?)", array($_GET['id'], $words[$i]));
|
||
}
|
||
|
||
}
|
||
|
||
if (date("H:i") == '00:00')
|
||
setKeywords();
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
/* ----------------------------------------------------------------------
|
||
01.03.2023
|
||
Получаем историю просмотров
|
||
---------------------------------------------------------------------- */
|
||
$tovarHistory = \DB::getAll("SELECT `id`, `title`, `cena` FROM `tovar` WHERE `id` IN ( SELECT `tovar_id` FROM `tovar_history` WHERE `session_id`=? ORDER BY RAND()) AND `status`=1 LIMIT 20", $me);
|
||
|
||
|
||
|
||
|
||
|
||
for ($i = 0; $i < count($tovarHistory); $i++) {
|
||
$tovarHistory[$i]['img'] = \DB::getValue("SELECT `filename` FROM `tovar_img` WHERE `tovar_id`=? LIMIT 1", $tovarHistory[$i]['id']);
|
||
}
|
||
//print_r($tovarHistory);
|
||
$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']);
|
||
|
||
$triDnya = time() - $page[0]['cena_d'];
|
||
if ($_SERVER['SERVER_NAME'] == 'tk-ligat.ru') {
|
||
if ($page[0]['partner'] == 'samson') {
|
||
require_once 'api/modules/tovar_show/get_price_samson.php';
|
||
$page[0]['cena'] = ($triDnya > 259200) ? getCenaApiSamson($page[0]['id'], $page[0]['code']) : $page[0]['cena'];
|
||
}
|
||
if ($page[0]['partner'] == 'leopak') {
|
||
require_once 'api/modules/tovar_show/get_price_leopak.php';
|
||
$page[0]['cena'] = ($triDnya > 259200) ? getCenaLeopak($page[0]['donor'], $page[0]['id']) : $page[0]['cena'];
|
||
|
||
}
|
||
if ($page[0]['partner'] == 'deznet') {
|
||
require_once 'api/modules/tovar_show/get_price_deznet.php';
|
||
$page[0]['cena'] = ($triDnya > 259200) ? getCenaLeopak($page[0]['donor'], $page[0]['id']) : $page[0]['cena'];
|
||
}
|
||
}
|
||
|
||
|
||
|
||
/* ----------------------------------------------------------------------
|
||
08.07.2023
|
||
Штрихкод
|
||
---------------------------------------------------------------------- */
|
||
$page[0]['barcode'] = \DB::getValue("SELECT `barcode` FROM `tovar_barcode` WHERE `tovar_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
|
||
Получаем данные о последней цене на товар
|
||
---------------------------------------------------------------------- */
|
||
if (!$page[0]['cena'])
|
||
$page[0]['cena'] = \DB::getAll("SELECT `cena`, `t` FROM `tovar_price_history` WHERE `status`=1 AND `tovar_id`=? ORDER BY `t` DESC LIMIT 1", $_GET['id'])[0]['cena'];
|
||
\DB::set("UPDATE `tovar` SET `cena`=? WHERE `id`=? LIMIT 1", array($page[0]['cena'], $_GET['id']));
|
||
|
||
//print_r($page[0]['cena']);
|
||
|
||
|
||
|
||
|
||
|
||
/*
|
||
//Загружаем правильные картинки
|
||
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<count($old_img); $i++) unlink( 'img/' . $_SERVER['SERVER_NAME'] . '/tovar/' . $old_img[$i]['filename'] . '.jpg');
|
||
if ($images)\DB::set("DELETE FROM `tovar_img` WHERE `tovar_id`=?", $_GET['id']);
|
||
$count_img=count($images);
|
||
for ($i=0; $i<$count_img; $i++){
|
||
$rndname=\core::genpassword(30);
|
||
exec ("wget " . foolImg($images[$i]) . " -O img/" . $_SERVER['SERVER_NAME'] . "/tovar/" . $rndname . ".jpg");
|
||
\DB::add("INSERT INTO `tovar_img` (`filename`, `tovar_id`) VALUES (?, ?)", array( $rndname, $_GET['id'] ) );
|
||
\DB::set("UPDATE `tovar` SET `check_img`=1 WHERE `id`=?", $_GET['id']);
|
||
}
|
||
}
|
||
|
||
|
||
$hars_list=$result2['data'][0]['facet_list'];//array
|
||
//print_r($hars_list);
|
||
|
||
//}
|
||
|
||
*/
|
||
|
||
//$page[0]['cena'] = ($partner_cena) ? $partner_cena : $cena[0]['cena'];
|
||
|
||
$smarty->assign('page', $page);
|
||
|
||
|
||
/* ----------------------------------------------------------------------
|
||
17.12.2022
|
||
Получаем картинки
|
||
---------------------------------------------------------------------- */
|
||
$imagesTovar = \DB::getAll("SELECT * FROM `tovar_img` WHERE `tovar_id`=?", $_GET['id']);
|
||
if (!$imagesTovar && $page[0]['partner'] == "deznet") {
|
||
$filename = \core::genpassword(30);
|
||
exec("wget " . $page[0]['linkimg'] . " -O /home/cloud/core/img/tk-ligat.ru/tovar/" . $filename . ".jpg");
|
||
DB::add("INSERT INTO `tovar_img` (`filename`, `tovar_id`) VALUES (?, ?)", array($filename, $_GET['id']));
|
||
$imagesTovar = \DB::getAll("SELECT * FROM `tovar_img` WHERE `tovar_id`=?", $_GET['id']);
|
||
}
|
||
|
||
//if ($_SERVER['SERVER_NAME']=='v.yurecnt.ru'){
|
||
// for ($i=0; $i<count($imagesTovar); $i++){
|
||
// if (!file_exists('img/' . $_SERVER['SERVER_NAME'] . '/tovar/square/' . $imagesTovar[$i]['filename'] . '.jpg')) \core::imgPreview('img/' . $_SERVER['SERVER_NAME'] . '/tovar/' . $imagesTovar[$i]['filename'] . '.jpg', 'img/' . $_SERVER['SERVER_NAME'] . '/tovar/square/' . $imagesTovar[$i]['filename'] . '.jpg');
|
||
// }
|
||
/*require_once('api/php/thumbs/thumbs.php');
|
||
for ($i=0; $i<count($imagesTovar); $i++){
|
||
//Проверяем сущетсование картинки.....
|
||
if (!file_exists('img/' . $_SERVER['SERVER_NAME'] . '/tovar/square/' . $imagesTovar[$i]['filename'] . '.jpg')) {
|
||
$image = new Thumbs('img/' . $_SERVER['SERVER_NAME'] . '/tovar/' . $imagesTovar[$i]['filename'] . '.jpg');
|
||
$image->thumb(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 < count($rndTovar); $i++) {
|
||
$rndTovar[$i]['cena'] = \DB::getValue('SELECT `cena` FROM `tovar_price_history` WHERE `status`=1 AND `tovar_id`=? ORDER BY `id` DESC LIMIT 1', $rndTovar[$i]['id']);
|
||
$rndTovar[$i]['img'] = \DB::getValue('SELECT `filename` FROM `tovar_img` WHERE `tovar_id`=? LIMIT 1', $rndTovar[$i]['id']);
|
||
}
|
||
$smarty->assign('rndTovar', $rndTovar);
|
||
//$smarty->assign('keywords', \core::getMeta( $_GET['mod'], $_GET['id'], 'keywords') );
|
||
//$smarty->assign('description', \core::getMeta( $_GET['mod'], $_GET['id'], 'description') );
|
||
|
||
?>
|