core/api/modules/ajax/ajax.php

207 lines
8.1 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
ini_set( 'display_errors', 0 );
//print_r($_POST);
switch(@$_POST['act']) {
/* ----------------------------------------------------------------------
09.04.2023
Получаем суб-меню
---------------------------------------------------------------------- */
case 'getSubMenu':
$submenu=\DB::getAll("SELECT `id`, `title` FROM `tovar_category` WHERE `category`=? AND `status`=1", $_POST['id']);
echo \json::to_j($submenu);
break;
/* ----------------------------------------------------------------------
05.03.2023
Удаляем из корзины
---------------------------------------------------------------------- */
case 'delFromCart':
\DB::set("DELETE FROM `cart` WHERE `id`=? AND `user_id`=?", array($_POST['id'], \core::checkMe()));
echo \core::getCart()['summ'];
break;
/* ----------------------------------------------------------------------
27.02.2023
Добавляем в корзину
Берем три параметра ID товара, ИД пользователя, Количество
---------------------------------------------------------------------- */
case 'addToCart':
echo \DB::add("INSERT INTO `cart` (`kolvo`, `t`, `tovar_id`, `user_id`)VALUES(?, ?, ?, ?)", array($_POST['kolvo'], time(), $_POST['tovar_id'], \core::checkMe()));
break;
case 'add_comment':
print_r($_POST);
if (!$_SESSION['user_id'] || !$_POST['txt'])die();
$_POST['t']=time();
$_POST['user_id']=$_SESSION['user_id'];
unset($_POST['act']);
$db->add ( 'pages_comments', $_POST );
break;
case 'like':
unset($a);
unset($b);
$a['id']=$_POST['id'];
$b['likes']=$db->get_val('pages', $a, 'likes')+1;
setcookie ("page_like", $a['id'], time()+31536000, '/', $_SERVER['SERVER_NAME']);
$db->update('pages', $a['id'], $b);
echo 1;
break;
//сохраняет настройки модуля
/* case 'save_settings_mod':
unset($a);
$a['mod']=$_POST['mod'];
$id_set=$db->get_val('settings', $a, 'id');
unset($_POST['act']);
unset( $_POST['mod'] );
$a['json']=serialize($_POST);
$db->update('settings', $id_set, $a);
echo 0;
//сделать проверку наличия в БД (это уже есть в модуле, но кто ж не ошибается)
break;
*/
// Сохранение настроек модуля
case 'save_settings_mod':
$res['mod']=$_POST['mod'];
unset ($_POST['mod']);
unset($_POST['act']);
$res['json']=json_encode($_POST, JSON_UNESCAPED_UNICODE);
$db->free_sql2 ( "UPDATE `settings` SET `json`='" . $res['json'] . "' WHERE `mod`='" . $res['mod'] . "'" );
break;
/* ----------------------------------------------------------------------
12.02.2023
Повышаем рейтинг
---------------------------------------------------------------------- */
case 'up_reyt';
$tip = $_POST['tip'];
$user_id = ( $_SESSION['user_id'] ) ? $_SESSION['user_id'] : session_id();
if ( $tip=='user_reyt' ){//обновляем рейтинг пользователя
//проверяем что еще не лайкали
$id = \DB::getValue( "SELECT `id` FROM `likes` WHERE `user_id`=? AND `tip`=? AND `content_id`=? LIMIT 1", array( $user_id, $tip, $_POST['id'] ) );
if ( $id ){//Убавляем
//Получаем текущий рейтинг из БД
$reyt = \DB::getValue( "SELECT `reyt` FROM `users` WHERE `id`=? LIMIT 1", $_POST['id'] );
$reyt--;
//обновляем рейтинг
\DB::set( "UPDATE `users` SET `reyt`=? WHERE `id`=?", array($reyt, $_POST['id'] ) );
\DB::add("DELETE FROM `likes` WHERE `id`=?", $id);
echo $reyt;
}else{//прибавляем
//Получаем текущий рейтинг из БД
$reyt = \DB::getValue( "SELECT `reyt` FROM `users` WHERE `id`=? LIMIT 1", $_POST['id'] );
$reyt++;
//обновляем рейтинг
\DB::set( "UPDATE `users` SET `reyt`=? WHERE `id`=?", array($reyt, $_POST['id'] ) );
//пишем в базу что уже это лайкнули
\DB::add("INSERT INTO `likes` (`user_id`, `tip`, `content_id`) VALUES(?, ?, ?)", array($user_id, $tip, $_POST['id']));
echo $reyt;
}
}
if ( $tip=='user_spasibo' ){//обновляем рейтинг пользователя
//проверяем что еще не лайкали
$id = \DB::getValue( "SELECT `id` FROM `likes` WHERE `user_id`=? AND `tip`=? AND `content_id`=? LIMIT 1", array( $user_id, $tip, $_POST['id'] ) );
if ( $id ){//Убавляем
//Получаем текущий рейтинг из БД
$reyt = \DB::getValue( "SELECT `spasibo` FROM `users` WHERE `id`=? LIMIT 1", $_POST['id'] );
$reyt--;
//обновляем рейтинг
\DB::set( "UPDATE `users` SET `spasibo`=? WHERE `id`=?", array($reyt, $_POST['id'] ) );
\DB::add("DELETE FROM `likes` WHERE `id`=?", $id);
echo $reyt;
}else{//прибавляем
//Получаем текущий рейтинг из БД
$reyt = \DB::getValue( "SELECT `spasibo` FROM `users` WHERE `id`=? LIMIT 1", $_POST['id'] );
$reyt++;
//обновляем рейтинг
\DB::set( "UPDATE `users` SET `spasibo`=? WHERE `id`=?", array($reyt, $_POST['id'] ) );
//пишем в базу что уже это лайкнули
\DB::add("INSERT INTO `likes` (`user_id`, `tip`, `content_id`) VALUES(?, ?, ?)", array($user_id, $tip, $_POST['id']));
echo $reyt;
}
}
if ( $tip=='page_reyt' ){//обновляем рейтинг пользователя
//проверяем что еще не лайкали
$id = \DB::getValue( "SELECT `id` FROM `likes` WHERE `user_id`=? AND `tip`=? AND `content_id`=? LIMIT 1", array( $user_id, $tip, $_POST['id'] ) );
if ( $id ){//Убавляем
//Получаем текущий рейтинг из БД
$reyt = \DB::getValue( "SELECT `reyt` FROM `pages` WHERE `id`=? LIMIT 1", $_POST['id'] );
$reyt--;
//обновляем рейтинг
\DB::set( "UPDATE `pages` SET `reyt`=? WHERE `id`=?", array($reyt, $_POST['id'] ) );
\DB::add("DELETE FROM `likes` WHERE `id`=?", $id);
echo $reyt;
}else{//прибавляем
//Получаем текущий рейтинг из БД
$reyt = \DB::getValue( "SELECT `reyt` FROM `pages` WHERE `id`=? LIMIT 1", $_POST['id'] );
$reyt++;
//обновляем рейтинг
\DB::set( "UPDATE `pages` SET `reyt`=? WHERE `id`=?", array($reyt, $_POST['id'] ) );
//пишем в базу что уже это лайкнули
\DB::add("INSERT INTO `likes` (`user_id`, `tip`, `content_id`) VALUES(?, ?, ?)", array($user_id, $tip, $_POST['id']));
echo $reyt;
}
}
if ( $tip=='comment_reyt' ){//обновляем рейтинг пользователя
//проверяем что еще не лайкали
$id = \DB::getValue( "SELECT `id` FROM `likes` WHERE `user_id`=? AND `tip`=? AND `content_id`=? LIMIT 1", array( $user_id, $tip, $_POST['id'] ) );
if ( $id ){//Убавляем
//Получаем текущий рейтинг из БД
$reyt = \DB::getValue( "SELECT `reyt` FROM `pages_comments` WHERE `id`=? LIMIT 1", $_POST['id'] );
$reyt--;
//обновляем рейтинг
\DB::set( "UPDATE `pages_comments` SET `reyt`=? WHERE `id`=?", array($reyt, $_POST['id'] ) );
\DB::add("DELETE FROM `likes` WHERE `id`=?", $id);
echo $reyt;
}else{//прибавляем
//Получаем текущий рейтинг из БД
$reyt = \DB::getValue( "SELECT `reyt` FROM `pages_comments` WHERE `id`=? LIMIT 1", $_POST['id'] );
$reyt++;
//обновляем рейтинг
\DB::set( "UPDATE `pages_comments` SET `reyt`=? WHERE `id`=?", array($reyt, $_POST['id'] ) );
//пишем в базу что уже это лайкнули
\DB::add("INSERT INTO `likes` (`user_id`, `tip`, `content_id`) VALUES(?, ?, ?)", array($user_id, $tip, $_POST['id']));
echo $reyt;
}
}
break;
default:
}
?>