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'; $user_id=\core::checkMe(); //узнаем, лайкали ли уже это $like_id=\DB::getValue("SELECT `id` FROM `likes` WHERE `user_id`=? AND `content_id`=? AND `content_type`=?", array($user_id, $_POST['id'], $_POST['tip'])); $reyt=\DB::getValue("SELECT `reyt` FROM `" . $_POST['tip'] . "` WHERE `id`=? LIMIT 1", $_POST['id']); if ($like_id){//уже лайкали - разлайкиваем $reyt--; \DB::set("DELETE FROM `likes` WHERE `user_id`=? AND `content_id`=? AND `content_type`=? LIMIT 1", array($user_id, $_POST['id'], $_POST['tip'])); }else{ $reyt++; \DB::add("INSERT INTO `likes` (`user_id`, `content_id`, `content_type`) VALUES (?, ?, ?)", array($user_id, $_POST['id'], $_POST['tip'])); } \DB::set("UPDATE `" . $_POST['tip'] . "` SET `reyt`=? WHERE `id`=? LIMIT 1", array($reyt, $_POST['id'])); echo $reyt; break; case 'up_reyt1'; $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: } ?>