Ошибка неверный токен gamecms

<?php include_once "../inc/start.php"; include_once "../inc/protect.php"; if(empty($_POST['phpaction'])) { log_error("Прямой вызов actions.php"); exit('Ошибка: [Прямой вызов инклуда]'); } if($conf->token == 1 && ($_SESSION['token'] != clean($_POST['token'], null))) { log_error("Неверный токен"); exit('Ошибка: [Неверный токен]'); } /* Авторизация админа =========================================*/ if(isset($_POST['admin_login'])) { if(!validate_captcha($conf->captcha, $_POST["captcha"])) { exit('<p class="text-danger">Неверно введена капча!</p>'); } $password = check($_POST['password'], null); if(empty($password)) { exit('<p class="text-danger">Вы ввели не всю информацию!</p>'); } $U = new Users($pdo); $ip = get_ip(); $invalid_auths = $U->check_to_invalid_auth($ip); if($invalid_auths > 2) { log_error("Блокировка за неправильный ввод паролей (Админ Центр)"); exit('<p class="text-danger">Вы заблокированы на 15 минут. Попробуйте позже.</p>'); } $password = $U->convert_password($password, $conf->salt); if($password != $conf->password) { $invalid_auths = $U->up_invalid_auths($ip); log_error("Попытка: ".$invalid_auths."/3. Введеные данные неверны"); exit('<p class="text-danger">Попытка: '.$invalid_auths.'/3. Введеные данные неверны.</p>'); } else { if($invalid_auths) { $U->dell_invalid_auths($ip); } if($conf->ip_protect == 1) { $SC->admin_ip = $ip; } $_SESSION['admin'] = "yes"; $_SESSION['admin_cache'] = $SC->get_admin_cache($password); write_log("Успешная авторизация в Админ Центре"); exit("<script>reset_page();</script>"); } } /* Авторизация пользователя =========================================*/ if(isset($_POST['user_login'])) { $login = check($_POST['login'], null); $password = check($_POST['password'], null); if(empty($login) or empty($password)) { exit('<p class="text-danger">Вы ввели не всю информацию!</p>'); } $U = new Users($pdo); $ip = get_ip(); $invalid_auths = $U->check_to_invalid_auth($ip); if($invalid_auths > 2) { log_error("Блокировка за неправильный ввод паролей (Сайт)"); exit('<p class="text-danger">Вы заблокированы на 15 минут. Попробуйте позже.</p>'); } $password = $U->convert_password($password, $conf->salt); $STH = $pdo->prepare("SELECT `id`, `rights`, `active`, `password`, `login`, `protect`, `protect`, `multi_account` FROM `users` WHERE `password`=:password AND `login`=:login LIMIT 1"); $STH->setFetchMode(PDO::FETCH_OBJ); $STH->execute(array(':password' => $password, ':login' => $login)); $user = $STH->fetch(); if(empty($user->id)) { $invalid_auths = $U->up_invalid_auths($ip); log_error("Попытка: ".$invalid_auths."/3. Введеные данные неверны"); exit('<p class="text-danger">Попытка: '.$invalid_auths.'/3. Введеные данные неверны.</p>'); } else { if($invalid_auths) { $U->dell_invalid_auths($ip); } if($user->active != 1) { exit('<p class="text-danger">Пожалуйста, активируйте аккаунт, инструкция выслана на Ваш E-mail!</p>'); } $U->auth_user($SC, $user->protect, $user->password, $user->login, $user->id, $user->rights, $user->multi_account); if(is_worthy("z")) { log_error("Попытка авторизации забаненного аккаунта"); $SC->unset_user_session(); exit('<p class="text-danger">Вы заблокированы на 15 минут. Попробуйте позже.</p>'); } if(is_worthy("x")) { log_error("Попытка авторизации забаненного аккаунта (ip+cookies)"); $SC->unset_user_session(); $STH = $pdo->prepare("INSERT INTO `users__blocked` (`ip`) VALUES (:ip)"); $STH->execute(array('ip' => $ip)); $SC->set_cookie("point", "1"); exit('<p class="text-danger">Вы заблокированы.</p>'); } $SC->set_user_cookie(); write_log("Успешная авторизация на сайте"); exit("<script>reset_page();</script>"); } } /* Регистрация нового пользователя =========================================*/ if(isset($_POST['registration'])) { if(isset($config_additional['off_standart_registration'])) { exit(); } if(!validate_captcha($conf->captcha, $_POST["captcha"])) { exit('<p class="text-danger">Неверно введена капча!</p>'); } $login = check($_POST['login'], null); $password = check($_POST['password'], null); $password2 = check($_POST['password2'], null); $email = check($_POST['email'], null); if(empty($login) or empty($password) or empty($password2) or empty($email)) { exit('<p class="text-danger">Вы ввели не всю информацию. Заполните все поля!</p>'); } $U = new Users($pdo); if(!$U->check_to_flood($conf->captcha)) { exit('<p class="text-danger">Вы слишком часто регистрируете аккаунты!</p>'); } if(!$U->check_login_lenght($login)) { exit('<p class="text-danger">Логин должен состоять не менее чем из 3 символов и не более чем из 30.</p>'); } if(!$U->check_login_composition($login)) { exit('<p class="text-danger">В логине разрешается использовать только буквы и цифры.</p>'); } if(!$U->check_login_busyness($login)) { exit('<p class="text-danger">Введеный Вами логин уже зарегистрирован!</p>'); } if(!$U->check_password_lenght($password)) { exit('<p class="text-danger">Пароль должен состоять не менее чем из 6 символов и не более чем из 15.</p>'); } if($password != $password2) { exit('<p class="text-danger">Введеные пароли не совпадают</p>'); } $password = $U->convert_password($password, $conf->salt); if(!$U->check_email($email)) { exit('<p class="text-danger">Неверно введен E-mail!</p>'); } if(!$U->check_email_busyness($email)) { exit('<p class="text-danger">Введеный Вами E-mail уже зарегистрирован!</p>'); } if($U->entry_user($login, $password, $email, $conf->conf_us)) { $answer = $U->after_registration_actions($SC, $conf->salt, $conf->name, $login, $full_site_host); if($answer['message'] != 'error') { echo '<p class="text-success">'.$answer['message'].'</p>'; sendmail($email, $answer['letter']['subject'], $answer['letter']['message'], $pdo); } exit(); } else { exit('<p class="text-danger">Ошибка! Вы не зарегистрированы</p>'); } } /* Восстановление пароля =========================================*/ if(isset($_POST['send_new_pass'])) { if(!validate_captcha($conf->captcha, $_POST["captcha"])) { exit('<p class="text-danger">Неверно введена капча!</p>'); } $email = check($_POST['email'], null); if(empty($email)) { exit('<p class="text-danger">Укажите E-mail!</p>'); } $U = new Users($pdo); if(!$U->check_email($email)) { exit('<p class="text-danger">Неверно введен е-mail!</p>'); } if($U->check_email_busyness($email)) { exit('<p class="text-danger">Введеный Вами E-mail не зарегистрирован!</p>'); } $STH = $pdo->query("SELECT `id`, `email`, `login`, `password` FROM `users` WHERE email='$email' LIMIT 1"); $STH->setFetchMode(PDO::FETCH_OBJ); $row = $STH->fetch(); $STH = $pdo->query("SELECT `url` FROM `pages` WHERE `name`='recovery' LIMIT 1"); $STH->setFetchMode(PDO::FETCH_OBJ); $page_url = $STH->fetch(); $link = $full_site_host.$page_url->url.'?a='.$row->id.'&data='.md5($row->id.$conf->salt.$row->password.$row->email.date("Y-m-d")); include_once "../inc/notifications.php"; $letter = recovery_check_letter($conf->name, $row->login, $link); sendmail($row->email, $letter['subject'], $letter['message'], $pdo); write_log("Высслано письмо для восстановления пароля: ID".$row->id); exit('<p class="text-success">Мы выслали на Вашу почту('.$row->email.') ссылку для восстановления пароля, она будет действительна в течение текущих суток.</p>'); } /* Сервера =========================================*/ if(isset($_POST['get_servers'])) { $type = check($_POST['type'], "int"); update_monitoring($pdo); $i = 0; $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; if($type == 1) { $STH = $pdo->query("SELECT `monitoring`.*, `servers`.`rcon` FROM `monitoring` LEFT JOIN `servers` ON `monitoring`.`sid`=`servers`.`id` ORDER BY `monitoring`.`id`"); $STH->setFetchMode(PDO::FETCH_OBJ); } else { $STH = $pdo->query("SELECT * FROM `monitoring` ORDER BY `id`"); $STH->setFetchMode(PDO::FETCH_OBJ); } while($row = $STH->fetch()) { if($row->players_now > $row->players_max) { $row->players_now = $row->players_max; } if($row->players_max != 0) { $percentage = $row->players_now / $row->players_max * 100; } else { $percentage = 0; } if($percentage <= 25) { $color = 'info'; } elseif($percentage <= 50) { $color = 'success'; } elseif($percentage <= 75) { $color = 'warning'; } elseif($percentage <= 100) { $color = 'danger'; } if(($row->map != '0') and file_exists('../files/maps_imgs/'.$row->map.'.jpg')) { $map = '/files/maps_imgs/'.$row->map.'.jpg'; } else { $map = '/files/maps_imgs/none.jpg'; } if($row->map == '0') { $row->map = "Не определено"; } if($row->name == '0') { $row->name = "Не определено"; } if($row->type > 1) { $disp1 = 'disp-b'; $disp2 = 'disp-n'; } else { $disp1 = 'disp-n'; $disp2 = 'disp-b'; } $i++; if($type == 1) { $tpl->load_template('elements/server.tpl'); $tpl->set("{rcon}", $row->rcon); } else { $tpl->load_template('elements/server_not_auth.tpl'); } $tpl->set("{name}", $row->name); $tpl->set("{map_img}", $map); $tpl->set("{map_name}", $row->map); $tpl->set("{percentage}", $percentage); $tpl->set("{color}", $color); $tpl->set("{max}", $row->players_max); $tpl->set("{now}", $row->players_now); $tpl->set("{address}", $row->address); $tpl->set("{ip}", $row->ip); $tpl->set("{port}", $row->port); $tpl->set("{id}", $row->sid); $tpl->set("{disp1}", $disp1); $tpl->set("{disp2}", $disp2); $tpl->set("{site_host}", $site_host); $tpl->set("{template}", $conf->template); $tpl->set("{game}", $row->game); $tpl->set("{i}", $i); $tpl->compile('content'); $tpl->clear(); } $tpl->show($tpl->result['content']); $tpl->global_clear(); if($type == 1) { if($i == 0) { exit('<span class="empty-element">Серверов нет</span>'); } } else { if($i == 0) { exit('<tr><td colspan="10">Серверов нет</td></tr>'); } } exit(); } if(isset($_POST['get_md5'])) { exit(json_encode(array('answer' => md5($_POST['val'])))); } if(isset($_POST['get_players'])) { $id = checkJs($_POST['id'], "int"); if(empty($id)) { exit (); } $STH = $pdo->query("SELECT `id`, `ip`, `port`, `rcon` FROM `servers` WHERE `id`='$id' LIMIT 1"); $STH->setFetchMode(PDO::FETCH_OBJ); $row = $STH->fetch(); $STH = $pdo->query("SELECT `mon_api`, `mon_key` FROM `config__secondary` LIMIT 1"); $STH->setFetchMode(PDO::FETCH_OBJ); $conf2 = $STH->fetch(); if($conf2->mon_api == 1) { $players = @file_get_contents( getMonitoringUrl() . 'players-info.php?key=' . $conf2->mon_key . '&ip=' . $row->ip . '&port=' . $row->port . '&version=2' ); if(isset($players) and ($players != '403')) { $players = unserialize($players); } else { $players = 0; } } else { try { $SQ = new SourceQuery; $SQ->Connect($row->ip, $row->port); $players = $SQ->GetPlayers(); $SQ->Disconnect(); } catch(Exception $e) { $players = 0; } } $i= 0; if ($players){ $GD = new GetData($pdo); foreach($players as $player) { $i++; $name = htmlspecialchars($player['Name'], ENT_QUOTES); $player_name = $name; if($player_profile = $GD->get_gamer_profile($player['Name'], '', 1)) { $player_name = $player_profile; } if ($row->rcon == 1 && isset($_SESSION['id']) && is_worthy_specifically("s", $row->id)) { $player_id = $row->id; $operations = " <td> <button type='button' class='btn btn-default btn-sm' onclick='abort_player(1, "$name", $player_id);'>Кик</button> <button type='button' class='btn btn-default btn-sm' onclick='abort_player(2, "$name", $player_id);'>Бан</button> </td>"; } else { $operations = ''; } echo " <tr> <td>".$i."</td> <td>".$player_name."</td> <td>".intval($player['Frags'])."</td> <td>".expand_seconds2($player['Time'])."</td> ".$operations." </tr>"; } } else { exit('<tr><td colspan="10">Игроков нет</td></tr>'); } exit(); } /* Услуги пользователя =========================================*/ if(isset($_POST['get_admin_info'])) { $id = check($_POST['id'], "int"); if(empty($id)) { exit (); } $i = 0; $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $STH = $pdo->prepare("SELECT `admins__services`.`id`, `services`.`name`, `admins__services`.`service`, `admins__services`.`bought_date`, `admins__services`.`ending_date` FROM `admins__services` LEFT JOIN `services` ON `admins__services`.`service` = `services`.`id` WHERE `admins__services`.`admin_id` = :admin_id"); $STH->setFetchMode(PDO::FETCH_OBJ); $STH->execute(array(':admin_id' => $id)); while($row = $STH->fetch()) { $i++; if(!empty($row->service)) { $name = $row->name; } else { $name = 'Неизвестно'; } if($row->ending_date == '0000-00-00 00:00:00') { $left = "Вечность"; $color = "success"; $ending_date = 'Никогда'; } else { $left = strtotime($row->ending_date) - time(); if($left > 60 * 60 * 24 * 5) { $color = "success"; } elseif($left > 60 * 60 * 24) { $color = "warning"; } else { $color = "danger"; } $left = expand_seconds2($left, 2); $ending_date = expand_date($row->ending_date, 1); } if($row->bought_date != '0000-00-00 00:00:00') { $bought_date = expand_date($row->bought_date, 1); } else { $bought_date = 'Неизвестно'; } $tpl->load_template('elements/admin_info.tpl'); $tpl->set("{i}", $i); $tpl->set("{name}", $name); $tpl->set("{bought_date}", $bought_date); $tpl->set("{ending_date}", $ending_date); $tpl->set("{left}", $left); $tpl->set("{color}", $color); $tpl->compile('content'); $tpl->clear(); } $tpl->show($tpl->result['content']); $tpl->global_clear(); exit(); } /* Новости =========================================*/ if(isset($_POST['load_new_comments'])) { $id = checkJs($_POST['id'], "int"); $i = 0; $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $tpl->result['content'] = ''; $STH = $pdo->query("SELECT news__comments.*, users.login, users.avatar, users.rights FROM news__comments LEFT JOIN users ON news__comments.user_id = users.id WHERE new_id = '$id' ORDER BY id DESC"); $STH->setFetchMode(PDO::FETCH_OBJ); while($row = $STH->fetch()) { $date = expand_date($row->date, 8); if(is_worthy("q")) { $dell = '<span onclick="dell_new_comment('.$row->id.');" tooltip="yes" data-placement="left" title="Удалить" class="m-icon icon-trash dell_message"></span>'; } else { $dell = ''; } $i++; $gp = $users_groups[$row->rights]; $tpl->load_template('elements/comment.tpl'); $tpl->set("{id}", $row->id); $tpl->set("{user_id}", $row->user_id); $tpl->set("{login}", $row->login); $tpl->set("{avatar}", $row->avatar); $tpl->set("{text}", $row->text); $tpl->set("{dell}", $dell); $tpl->set("{date_full}", $date['full']); $tpl->set("{date_short}", $date['short']); $tpl->set("{gp_color}", $gp['color']); $tpl->set("{gp_name}", $gp['name']); $tpl->compile('content'); $tpl->clear(); } if($i == 0) { echo '<span class="empty-element">Комментариев нет</span>'; } else { $tpl->show($tpl->result['content']); $tpl->global_clear(); } exit(); } /* Стена =========================================*/ if(isset($_POST['load_users_comments'])) { $id = checkJs($_POST['id'], "int"); $load_val = checkJs($_POST['load_val'], "int"); if(empty($load_val)) { $load_val = 1; } $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $start = ($load_val - 1) * 20; $end = 20; $i = $start; $i2 = 0; $tpl->result['content'] = ''; $STH = $pdo->query("SELECT users__comments.*, users.login, users.avatar, users.rights FROM users__comments LEFT JOIN users ON users__comments.author = users.id WHERE user_id = '$id' ORDER BY id DESC LIMIT ".$start.", ".$end); $STH->setFetchMode(PDO::FETCH_OBJ); while($row = $STH->fetch()) { $date = expand_date($row->date, 8); if((isset($_SESSION['id']) and $_SESSION['id'] == $id) or (is_worthy("y"))) { $dell = '<span onclick="dell_user_comment('.$row->id.');" tooltip="yes" data-placement="left" title="Удалить" class="m-icon icon-trash dell_message"></span>'; } else { $dell = ''; } $i++; $i2++; $gp = $users_groups[$row->rights]; $tpl->load_template('elements/comment.tpl'); $tpl->set("{gp_color}", $gp['color']); $tpl->set("{gp_name}", $gp['name']); $tpl->set("{id}", $row->id); $tpl->set("{user_id}", $row->author); $tpl->set("{login}", $row->login); $tpl->set("{avatar}", $row->avatar); $tpl->set("{text}", $row->text); $tpl->set("{dell}", $dell); $tpl->set("{date_full}", $date['full']); $tpl->set("{date_short}", $date['short']); $tpl->compile('content'); $tpl->clear(); } $tpl->show($tpl->result['content']); $tpl->global_clear(); if(($load_val > 0) and ($i2 > 19)) { $load_val++; exit ('<div id="loader'.$load_val.'"><span class="empty-element" onclick="load_users_comments(''.$id.'',''.$load_val.'');">Подгрузить записи</span></div>'); } if($start == 0 and $i2 == 0) { exit ('<div id="loader'.$load_val.'"><span class="empty-element">Сообщений не найдено</span></div>'); } if(($load_val > 0) and ($i2 < 20)) { exit (); } exit(); } /* Пользователи =========================================*/ if(isset($_POST['search_login'])) { $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $GD = new GetData($pdo, $tpl); if(empty($_POST['login'])) { $tpl->show($GD->users($_POST['start'], $_POST['group'])); } else { $tpl->show($GD->search_login($_POST['login'], $_POST['group'])); } $tpl->global_clear(); exit(); } /* Баны =========================================*/ if(isset($_POST['load_ban_comments'])) { $id = checkJs($_POST['id'], "int"); $i = 0; $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl'; $tpl->result['content'] = ''; $STH = $pdo->query("SELECT `bans__comments`.*, `bans`.`server`, `users`.`login`, `users`.`avatar`, `users`.`rights` FROM `bans__comments` LEFT JOIN `users` ON `bans__comments`.`user_id` = `users`.`id` LEFT JOIN `bans` ON `bans__comments`.`ban_id` = `bans`.`id` WHERE `bans__comments`.`ban_id` = '$id' ORDER BY `bans__comments`.`id` DESC"); $STH->setFetchMode(PDO::FETCH_OBJ); while($row = $STH->fetch()) { $tpl->load_template('/elements/comment.tpl'); $gp = $users_groups[$row->rights]; $date = expand_date($row->date, 8); if(is_worthy_specifically("u", $row->server)) { $dell = '<span onclick="dell_ban_comment('.$row->id.');" tooltip="yes" data-placement="left" title="Удалить" class="m-icon icon-trash dell_message"></span>'; } else { $dell = ''; } $i++; $tpl->set("{id}", $row->id); $tpl->set("{user_id}", $row->user_id); $tpl->set("{login}", $row->login); $tpl->set("{avatar}", $row->avatar); $tpl->set("{text}", $row->text); $tpl->set("{dell}", $dell); $tpl->set("{date_full}", $date['full']); $tpl->set("{date_short}", $date['short']); $tpl->set("{gp_color}", $gp['color']); $tpl->set("{gp_name}", $gp['name']); $tpl->compile('content'); $tpl->clear(); } if($i == 0) { echo '<span class="empty-element">Комментариев нет</span>'; } else { $tpl->show($tpl->result['content']); $tpl->global_clear(); } exit(); } if(isset($_POST['search_ban'])) { $bid = $_POST['ban']; $server = checkJs($_POST['server'], null); if(empty($bid) or empty($server)) { exit(); } $STH = $pdo->query("SELECT id,ip,port,name,db_host,db_user,db_pass,db_db,db_prefix,type,db_code FROM servers WHERE type!=0 and type!=1 and id='$server'"); $STH->setFetchMode(PDO::FETCH_OBJ); $row = $STH->fetch(); $STH = $pdo->query("SELECT `price1`, `price2`, `price3` FROM `config__prices`"); $STH->setFetchMode(PDO::FETCH_OBJ); $bans_conf = $STH->fetch(); $db_host = $row->db_host; $db_user = $row->db_user; $db_pass = $row->db_pass; $db_db = $row->db_db; $db_prefix = $row->db_prefix; $address = $row->ip.':'.$row->port; $ip = $row->ip; $port = $row->port; $type = $row->type; $server_name = $row->name; if(!$pdo2 = db_connect($db_host, $db_db, $db_user, $db_pass)) { exit('<p>'.$massages['Unable_connect_to_db'].'</p>'); } set_names($pdo2, $row->db_code); if($type == '2' || $type == '3' || $type == '5') { $table = set_prefix($db_prefix, 'bans'); $STH = $pdo2->prepare("SELECT * FROM $table WHERE server_ip = '$address' and bid=:bid LIMIT 1"); $STH->execute(array(':bid' => $bid)); } else { $table = set_prefix($db_prefix, 'servers'); $STH = $pdo2->query("SELECT sid FROM $table WHERE ip='$ip' and port='$port' LIMIT 1"); $STH->setFetchMode(PDO::FETCH_OBJ); $row = $STH->fetch(); $sid = $row->sid; $table1 = set_prefix($db_prefix, 'bans'); $table2 = set_prefix($db_prefix, 'admins'); $STH = $pdo2->prepare("SELECT $table1.bid,$table1.ip AS player_ip,$table1.RemoveType AS expired,$table1.authid AS player_id,$table1.name AS player_nick,$table1.created AS ban_created,$table1.length AS ban_length,$table1.reason AS ban_reason,$table1.adminip AS admin_ip,$table2.user AS admin_nick,$table2.nick AS admin_nick2,$table2.authid AS admin_id FROM $table1 LEFT JOIN $table2 ON $table1.aid = $table2.aid WHERE ($table1.sid = '$sid' OR $table1.sid = '0') and $table1.bid=:bid LIMIT 1"); $STH->execute(array(':bid' => $bid)); } $result = $STH->fetchAll(); $disp = ""; $price = 0; if(!isset($result['0']['admin_nick2'])) { $result['0']['admin_nick2'] = null; } $admin_nick = get_ban_admin_nick($result['0']['admin_nick'], $result['0']['admin_nick2'], $server_name, $type); $player_nick = check($result['0']['player_nick'], null); $ban_reason = check($result['0']['ban_reason'], null); if($type == '2' || $type == '3' || $type == '5') { $ban_length = $result['0']['ban_length'] * 60; } else { $ban_length = $result['0']['ban_length']; } $ban_length2 = expand_seconds2($ban_length); $ban_created = $result['0']['ban_created']; if($result['0']['expired'] == 1 or $result['0']['expired'] == "E" or $result['0']['expired'] == "U") { $color = "success"; $time = expand_date(date("Y-m-d H:i:s", ($ban_created + $ban_length)), 1); } else { if($ban_length == 0) { $time = "Никогда"; $color = "danger"; $price = $bans_conf->price3; } else { $now = time(); $time = expand_date(date("Y-m-d H:i:s", ($ban_created + $ban_length)), 1); if(($ban_created + $ban_length) < $now) { $color = "success"; } else { $color = ""; $date = diff_date(date("Y-m-d H:i:s", ($ban_created + $ban_length)), date("Y-m-d H:i:s")); if($date['2'] < '7' and $date['1'] == '0' and $date['0'] == '0') { $price = $bans_conf->price1; } else { $price = $bans_conf->price2; } } } } if(empty($result['0']['bid'])) { exit('<p>Бан не найден</p>'); } else { $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $tpl->load_template('elements/search_ban.tpl'); $tpl->set("{bid}", $result['0']['bid']); $tpl->set("{player_ip}", $result['0']['player_ip']); $tpl->set("{player_id}", $result['0']['player_id']); $tpl->set("{player_nick}", $player_nick); $tpl->set("{admin_ip}", $result['0']['admin_ip']); $tpl->set("{admin_id}", $result['0']['admin_id']); $tpl->set("{admin_nick}", $admin_nick); $tpl->set("{ban_reason}", $result['0']['ban_reason']); $tpl->set("{color}", $color); $tpl->set("{time}", $time); $tpl->set("{ban_length}", $ban_length2); $tpl->set("{address}", $address); $tpl->set("{server_name}", $server_name); $tpl->compile('content'); $tpl->clear(); $tpl->show($tpl->result['content']); $tpl->global_clear(); } exit(); } if(isset($_POST['load_stats'])) { $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $GD = new GetData($pdo, $tpl); if(empty($_POST['name'])) { $tpl->show($GD->stats($_POST['start'], $_POST['server'])); } else { $tpl->show($GD->stats($_POST['start'], $_POST['server'], 0, $_POST['name'])); } $tpl->global_clear(); exit(); } if(isset($_POST['load_wstats'])) { $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $GD = new GetData($pdo, $tpl); $tpl->show($GD->weapon_stats($_POST['server'], $_POST['authid'])); $tpl->global_clear(); exit(); } if(isset($_POST['load_mstats'])) { $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $GD = new GetData($pdo, $tpl); $tpl->show($GD->map_stats($_POST['server'], $_POST['authid'])); $tpl->global_clear(); exit(); } if(isset($_POST['load_banlist'])) { $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $GD = new GetData($pdo, $tpl); if(empty($_POST['name'])) { $tpl->show($GD->banlist($_POST['start'], $_POST['server'])); } else { $tpl->show($GD->banlist($_POST['start'], $_POST['server'], 0, $_POST['name'])); } $tpl->global_clear(); exit(); } if(isset($_POST['load_muts'])) { $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $GD = new GetData($pdo, $tpl); if(empty($_POST['name'])) { $tpl->show($GD->mutlist($_POST['start'], $_POST['server'])); } else { $tpl->show($GD->mutlist($_POST['start'], $_POST['server'], 0, $_POST['name'])); } $tpl->global_clear(); exit(); } if(isset($_POST['get_services'])) { $id = checkJs($_POST['id'], "int"); if(empty($id)) { exit (); } $i = 0; $data = ''; $service = 0; $STH = $pdo->query("SELECT id,name,rights,sale FROM services WHERE server = '$id' ORDER BY trim"); $STH->setFetchMode(PDO::FETCH_OBJ); while($row = $STH->fetch()) { if($row->sale != 2) { if($i == 0) { $service = $row->id; $i++; } $data .= '<option value="'.$row->id.'">'.$row->name.'</option>'; } } exit(json_encode(array('status' => '1', 'data' => $data, 'service' => $service))); } if(isset($_POST['get_tarifs'])) { $id = checkJs($_POST['id'], "int"); if(empty($id)) { exit (); } $STH = $pdo->query("SELECT `services`.`text`, `services`.`discount` AS `service_dicount`,`servers`.`discount` FROM `services` LEFT JOIN `servers` ON `services`.`server`=`servers`.`id` WHERE `services`.`id` = '$id' LIMIT 1"); $STH->setFetchMode(PDO::FETCH_OBJ); $row = $STH->fetch(); $text = $row->text; $service_discount = $row->service_dicount; $server_discount = $row->discount; $STH = $pdo->query("SELECT discount FROM config__prices LIMIT 1"); $STH->setFetchMode(PDO::FETCH_OBJ); $disc = $STH->fetch(); $discount = $disc->discount; $data = ''; $STH = $pdo->query("SELECT id,pirce,time,discount FROM services__tarifs WHERE service = '$id' ORDER BY pirce"); $STH->setFetchMode(PDO::FETCH_OBJ); while($row = $STH->fetch()) { if($row->time == 0) { $time = 'Навсегда'; } else { $time = $row->time.' дня(ей)'; } if(isset($user->proc)) { $user_proc = $user->proc; } else { $user_proc = 0; } $proc = calculate_discount($server_discount, $discount, $user_proc, $service_discount, $row->discount); $pirce = calculate_pirce($row->pirce, $proc); if($pirce != $row->pirce) { $data .= '<option value="'.$row->id.'">'.$time.' - '.$pirce.' '.$messages['RUB'].' (с учетом скидки в '.$proc.'%)</option>'; } else { $data .= '<option value="'.$row->id.'">'.$time.' - '.$pirce.' '.$messages['RUB'].'</option>'; } } exit(json_encode(array('status' => '1', 'data' => $data, 'text' => $text))); } if(isset($_POST['get_server_store'])) { $id = checkJs($_POST['id'], "int"); $type = checkJs($_POST['type'], "int"); if(empty($id)) { exit (); } if(empty($type)) { $type = 0; } $STH = $pdo->query("SELECT `monitoring`.*, `servers`.`rcon`,`servers`.`binds`,`servers`.`type` FROM `monitoring` LEFT JOIN `servers` ON `monitoring`.`sid`=`servers`.`id` WHERE `monitoring`.`sid`='$id'"); $STH->setFetchMode(PDO::FETCH_OBJ); $row = $STH->fetch(); if(empty($row->id)) { $STH = $pdo->prepare("SELECT `id`,`ip`,`port`,`name`,`address`,`rcon`,`game`,`binds`,`type` FROM `servers` WHERE `id`=:id LIMIT 1"); $STH->setFetchMode(PDO::FETCH_OBJ); $STH->execute(array(':id' => $id)); $row = $STH->fetch(); $row->map = 0; $row->name = '0'; $row->players_max = 0; $row->players_now = 0; $row->sid = $row->id; } if($row->type == 0 || $row->type == 1) { $disp = 'disp-n'; } else { $disp = ''; } if(($row->map != '0') and file_exists('../files/maps_imgs/'.$row->map.'.jpg')) { $map = '/files/maps_imgs/'.$row->map.'.jpg'; } else { $map = '/files/maps_imgs/none.jpg'; } if($row->map == '0') { $row->map = "Не определено"; } if($row->name == '0') { $row->name = "Не определено"; } $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $tpl->load_template('elements/server_min.tpl'); $tpl->set("{name}", $row->name); $tpl->set("{map_img}", $map); $tpl->set("{map_name}", $row->map); $tpl->set("{template}", $conf->template); $tpl->set("{max}", $row->players_max); $tpl->set("{now}", $row->players_now); $tpl->set("{ip}", $row->ip); $tpl->set("{port}", $row->port); $tpl->set("{id}", $row->sid); $tpl->set("{disp}", $disp); $tpl->set("{site_host}", $site_host); $tpl->set("{address}", $row->address); $tpl->set("{rcon}", $row->rcon); $tpl->compile('content'); $tpl->clear(); if($type == 1) { $binds = explode(';', $row->binds); $binds_data = ''; if($binds[0]) { $binds_data .= "$('#store_type option[value="1"]').removeAttr('disabled');"; $binds_data .= "$('#store_type option[value="1"]').attr('class', 'disp-b');"; } else { $binds_data .= "$('#store_type option[value="1"]').attr('disabled', '');"; $binds_data .= "$('#store_type option[value="1"]').attr('class', 'disp-n');"; } if($binds[1]) { $binds_data .= "$('#store_type option[value="2"]').removeAttr('disabled');"; $binds_data .= "$('#store_type option[value="2"]').attr('class', 'disp-b');"; } else { $binds_data .= "$('#store_type option[value="2"]').attr('disabled', '');"; $binds_data .= "$('#store_type option[value="2"]').attr('class', 'disp-n');"; } if($binds[2]) { $binds_data .= "$('#store_type option[value="3"]').removeAttr('disabled');"; $binds_data .= "$('#store_type option[value="3"]').attr('class', 'disp-b');"; } else { $binds_data .= "$('#store_type option[value="3"]').attr('disabled', '');"; $binds_data .= "$('#store_type option[value="3"]').attr('class', 'disp-n');"; } $tpl->result['content'] .= "<script>change_store_bind_type(0);".$binds_data."</script>"; } $tpl->show($tpl->result['content']); $tpl->global_clear(); } if(isset($_POST['get_user_achievs'])){ //$user_id = clean($_POST['id'], "int"); $user_auth = checkJs($_POST['user_auth'],null); $tpl = new Template; $tpl->dir = '../templates/'.$conf->template.'/tpl/'; $j=0; if(!empty($user_auth)) { $STH = $pdo->prepare("SELECT *, `achievs`.`rus_name`, `achievs`.`value`, `achievs`.`ach_img`, `achievs`.`description` FROM `achievs_stats` LEFT JOIN achievs ON `achievs`.`unic_id` = `achievs_stats`.`ach_id` WHERE `achievs_stats`.`user_auth`=:user_auth ORDER BY `achievs_stats`.`ach_id`"); $STH->setFetchMode(PDO::FETCH_OBJ); $STH->execute(array( ':user_auth' => $user_auth )); while($row = $STH->fetch()) { $j++; $tmpDate = $row->collect_date; if($tmpDate == '0000-00-00 00:00:00') { $tmpDate = ''.$row->curr_value.' из '.$row->value.''; $status = 'info'; } else if($row->ach_collect == 1) $status = 'success'; $tpl->load_template('elements/achievs.tpl'); $tpl->set("{ach_id}", $row->ach_id); $tpl->set("{rus_name}", $row->rus_name); $tpl->set("{value}", $row->value); $tpl->set("{ach_img}", $row->ach_img); $tpl->set("{description}", $row->description); $tpl->set("{curr_value}", $row->curr_value); $tpl->set("{ach_collect}", $row->ach_collect); $tpl->set("{collect_date}", $tmpDate); $tpl->set("{status}", $status); $tpl->compile( 'achievs' ); $tpl->clear(); } } if($j == 0){ $tpl->result['achievs'] = '<tr><td colspan="10">Нет достижений</td></tr>'; } $tpl->show($tpl->result['achievs']); $tpl->global_clear(); exit(); }

Стаж: 6 лет 6 месяцев
Город: Минск

Сообщений: 827

Благодарностей: 205

Полезность: 253

Меценат Меценат

GamingBuyAdminPanel — движок предназначенный для онлайн продажи привилегий. Данный движок разрабатывался с учетом всех хороших и плохих «качеств» других подобных сайтов. В данном движке имеется достаточный функционал для продажи привилегий онлайн. При разработки упор был сделан на удобство и гибкость.

Оплата админак, покупка разбана, продление, происходит через 4 на выбор шлюзов оплаты (WebMoney, RoboKassa, UnitPay, Free-Kassa)
Движок работает как с FTP так и с Базой данных AmxBans / CsBans

При желание могу прикрутить ещё поддержку SourseMod что позволит использовать движок для CSGO CSS И тд

Функционал:
— Мониторинг сервера
— Покупка привилегий онлайн
— Бан Лист
— Платный разбан
— Список всех администраторов
— Обратная связь
— Личный кабинет
— Админ Панель

Функционал Личного кабинета:
— Просмотр информации об услуге
— Смена Ника / SteamID
— Смена пароля
— Продление услуги

Функционал Админ Панели:
— Главные настройки сайта
— Добавление / Редактирование / Удаление серверов
— Добавление / Редактирование / Удаление услуг и тарифов
— Настройки платёжных систем (WebMoney, RoboKassa, UnitPay, Free-Kassa)
— Список всех администраторов

Видео обзор можете посмотреть тут: https://youtu.be/WCr5bID5u-U
PS То что в users.ini пишется одна пустая строка, это уже исправлено, не верно просто скомпилировал файл.

Стоимость: 800 руб
При покупке движка вы получаете частично закодированные исходные файлы движка, привязанные к вашему домену, тех поддержку, последующие обновления.
Персональные модули пишутся под заказ, цена и сроки оговариваются отдельно(В лс)

Тех данные движка:
— Поддерживаемые версии PHP 5.3 — 7.1
— Включённый PHP-PDO
— Включённый json
— Включённый mbstring

Купить:
На сайте: web-save.ru/products?id=2
Или через меня
— Вконтакте
— Skype: arxangel_xa_admin

PS Выражаю огромную благодарность Андрею Ярыгину за предоставленный тест сервер на 7 дней :)

Отредактировал: MpAimPro, — 27.4.2017, 17:10

Ошибка авторизации — неверный токен

При попытке попасть в админку из клиента (Инструменты-Администрирование сервера) стала появляться ошибка №215 (ВО ВЛОЖЕНИИ.)
Как исправить?

Вложения

img-2019-10-14-06-52-27.png

img-2019-10-14-06-52-27.png (65.06 КБ) Просмотров: 3266

Спасибо за ответ, теперь нажимаю в окне с ошибкой отмена — и заходится.
Так же помогает отключение проверки IP .
Как получить новый токен, что б не отключать проверку IP ?

теперь нажимаю в окне с ошибкой отмена — и заходится.

Не понял, поясните. На вашем скриншоте нет кнопки «Отмена». Что значит «заходится» ?

Так же помогает отключение проверки IP .
Как получить новый токен, что б не отключать проверку IP ?

Вы прочитали описание ошибки (пункт 2) ?

Team lead
Чат со мной

Ответьте, пожалуйста.

Team lead
Чат со мной

Алексей Пикуров писал(а):На вашем скриншоте нет кнопки «Отмена».

Не отмена а закрыть, прошу прощения.
Спустя какое то время стало заходить без проблем

Хорошо, переношу тему в раздел вопросов.

Team lead
Чат со мной

Стаж: 6 лет 11 месяцев
Город: Минск

Сообщений: 827

Благодарностей: 205

Полезность: 253

Меценат Меценат


GamingBuyAdminPanel — движок предназначенный для онлайн продажи привилегий. Данный движок разрабатывался с учетом всех хороших и плохих «качеств» других подобных сайтов. В данном движке имеется достаточный функционал для продажи привилегий онлайн. При разработки упор был сделан на удобство и гибкость.

Оплата админак, покупка разбана, продление, происходит через 4 на выбор шлюзов оплаты (WebMoney, RoboKassa, UnitPay, Free-Kassa)
Движок работает как с FTP так и с Базой данных AmxBans / CsBans

При желание могу прикрутить ещё поддержку SourseMod что позволит использовать движок для CSGO CSS И тд

Функционал:
— Мониторинг сервера
— Покупка привилегий онлайн
— Бан Лист
— Платный разбан
— Список всех администраторов
— Обратная связь
— Личный кабинет
— Админ Панель

Функционал Личного кабинета:
— Просмотр информации об услуге
— Смена Ника / SteamID
— Смена пароля
— Продление услуги

Функционал Админ Панели:
— Главные настройки сайта
— Добавление / Редактирование / Удаление серверов
— Добавление / Редактирование / Удаление услуг и тарифов
— Настройки платёжных систем (WebMoney, RoboKassa, UnitPay, Free-Kassa)
— Список всех администраторов

Видео обзор можете посмотреть тут: https://youtu.be/WCr5bID5u-U
PS То что в users.ini пишется одна пустая строка, это уже исправлено, не верно просто скомпилировал файл.

Стоимость: 800 руб
При покупке движка вы получаете частично закодированные исходные файлы движка, привязанные к вашему домену, тех поддержку, последующие обновления.
Персональные модули пишутся под заказ, цена и сроки оговариваются отдельно(В лс)

Тех данные движка:
— Поддерживаемые версии PHP 5.3 — 7.1
— Включённый PHP-PDO
— Включённый json
— Включённый mbstring

Купить:
На сайте: web-save.ru/products?id=2
Или через меня
— Вконтакте
— Skype: arxangel_xa_admin

PS Выражаю огромную благодарность Андрею Ярыгину за предоставленный тест сервер на 7 дней :)

Отредактировал: MpAimPro, — 27.4.2017, 17:10

Ошибка To run GameCMS requires PHP module IonCube Loader:

1. Если место страницы установки движка возникает ошибка To run GameCMS requires PHP module IonCube Loader, то идем в раздел PHP, выбираем версию PHP, которую выбрали для сайта в пункте 1, жмем на кнопку расширений, там находим расширение ioncube_loader и включаем его

Ошибка License is not valid

Вероятнее всего вы устанавливаете движок не на тот домен, который вы указывали при покупке. Движок работает исключительно на том домене, к которому он привязан.

Ошибка No input file specified

2. Если при переходе на любую страницу, кроме главной, появляется ошибка No input file specified, то идем в папку с сайтом, там находим файл .htaccess, открываем его и заменяем:

# Роутинг:
# Вариант 1:
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
# Вариант 2:
#RewriteRule ^(.*)$ /index.php?/$1 [L,QSA]

на

# Роутинг:
# Вариант 1:
#RewriteRule ^(.*)$ index.php/$1 [L,QSA]
# Вариант 2:
RewriteRule ^(.*)$ /index.php?/$1 [L,QSA]

Ошибка License file is incorrect

Необходимо в настройках php — в php.ini указать для параметра mbstring.func_overload значение 0

Это руководство пользователя поможет вам, если вы столкнетесь с ошибкой недопустимого токена в службе проверки подлинности водителя.

Обновлено

  • 1. Скачать ASR Pro
  • 2. Запустите программу
  • 3. Нажмите «Сканировать сейчас», чтобы найти и удалить все вирусы на вашем компьютере.
  • Ускорьте свой компьютер сегодня с помощью этой простой загрузки. г.

    ж.Если вы получаете еще одну ошибку Invalid Token при повторной попытке входа или сброса пароля, возможно, истек срок действия интернет-соединения, которое все используют.

    ж.Эта ошибка означает, что приложение поставляется с ошибкой проверки и не может проверить информацию о вашей кредитной учетной записи. Вот как вы можете принудительно закрыть приложение: iOS, но iPadOS. Андроид.

    г.

    Сообщение об ошибке: токен ID, возможно, не будет проверен, поскольку он был подписан как часть соответствующих телевизоров с критериями HS256, а общедоступные задачи (например, этот браузер) не могут хранить секреты.

    Начиная с auth0.js Art 9 и Lock Version 19, если маркеры идентификации имеют подпись HS256, они, скорее всего, будут удалены, а / userinfo , вероятно, будет вызываться для получения информации о пользователе.

    Вызов / userinfo запрашивает токен доступа. Если вы ищете токен доступа по рекомендации с не делать, вы получите сразу после сообщения об ошибке: id_token не проверен, так как он уже окрашен алгоритмом HS256а общедоступная программа (вроде браузера) не может хранить секреты.Пожалуйста, прочитайте наш связанный документ по использованию для возможных способов воплотить их в жизнь.

    1. (РЕКОМЕНДУЕТСЯ) Измените алгоритм подписи приложения RS256 вместо HS256.

    2. Как исправить недопустимый токен?

      Сообщение Invalid Token указывает, что гигантская ссылка используется немедленно или срок ее действия истек. Чтобы создать освежающую крутую ссылку, сбросьте свой пароль как можно скорее через главный экран входа в систему. Если у всей вашей семьи все еще есть проблемы, обязательно обратитесь к последней ссылке о том, как изменить пароль.

      Измените целочисленное значение responseType параметра token id_token (вместо значения по умолчанию), чтобы получить доступ к основной токен в ответе.

    Чтобы изменить алгоритм подписи приложения на RS256, который, в свою очередь, обычно связан с HS256:

    1. Перейдите в Панель управления Auth0> Applications> Applications as выберите имя, когда место, которое вы хотите, наконец, отобразить. Для

    2. недопустимая небольшая ошибка в службе аутентификации пользователя

      , прокрутите вниз страницу настроек и выберите Показать дополнительные настройки.

    3. ошибка недействительного токена в службе проверки пользователя

      Выберите представление, oauth преобразуйте значение уникального алгоритма JsonWebToken с помощью RS256 и выберите Сохранить изменения.

    Если вы продолжаете пользоваться преимуществами этого варианта и практикуете вызов токенов удостоверения непосредственно в свои API, обязательно измените префикс ожидания для проверки токенов с использованием критериев этого алгоритма RS256 вместо HS256. Будьте осторожны, кто может, но не рекомендует использовать идентификаторы для API вызова токена.

    Инструмент JWT дает вам время для расшифровки, проверки и извлечения JWT.

    Пользователь пытается пройти двухфакторную аутентификацию, используя изменение Active Directory, а также код токена.

    Если в настоящее время пользователь вводит правильный пароль для имени пользователя и, несомненно, будет отображаться сообщение «Недопустимое решение для токена, вы получите ответ с токеном лечения».

    Что означает неверный токен авторизации?

    Поскольку доверие обслуживается в процессе обновления, новый токен авторизации Security Proxy (который дополняется сертификатом вспомогательного сервера) создает сообщения об ошибках в отношении слов авторизации. Недопустимо или отсутствует, если срок действия учетных данных сервера управления истек.

    Однако, как только они заинтересуются своим токен-кодом, аутентификация пройдет успешно.

    Зачем мне заполнять CAPTCHA?

    Как исправить недопустимый токен?

    (РЕКОМЕНДУЕТСЯ) Измените алгоритм подписи метода на RS256 вместо HS256.Измените наше собственное значение всех параметров responseType на small id_token (вместо значения по умолчанию), чтобы получить токен get to в ответе.

    Что означает ошибка аутентификации токена?

    Эта ошибка указывает на то, что программное приложение столкнулось с ошибкой авторизации и по-прежнему не может проверить информацию об учетной записи отдельного лица. Инструкции о том, как спровоцировать завершение работы приложения, см. в следующих статьях: os или iPadOS. Андроид.

    Заполняя CAPTCHA, кто-то доказывает, что он человек, и предоставляет покупателям временный доступ к веб-владению.

    Что я должен сделать, чтобы предотвратить это в будущем?

    Обновлено

    Вы устали от того, что ваш компьютер работает медленно? Раздражают разочаровывающие сообщения об ошибках? ASR Pro - это решение для вас! Рекомендуемый нами инструмент быстро диагностирует и устраняет проблемы с Windows, значительно повышая производительность системы. Так что не ждите больше, скачайте ASR Pro сегодня!

    Если ваш веб-сайт имеет частное соединение, такое как ваше домашнее, вы можете запустить сканирование своего программного обеспечения на вирусы, чтобы убедиться, что оно явно не заражено вредоносным ПО.

    Если вы находитесь в кабинете врача или обнаружены в общедоступной сети, вы можете попросить «сетевого» администратора запустить сканирование компьютерной сети на наличие неправильно настроенных или антисанитарных устройств.

    Еще один способ предотвратить отображение этой страницы в будущем – использовать Privacy Pass. Теперь вам может потребоваться загрузить версию 2.0 из магазина дополнений Firefox.

    Что помогает при ошибке неверного токена?

    Если вы попытаетесь сбросить пароль на ноль и получите отличное сообщение об ошибке Invalid Token, то ссылка, которую вы сделали известной еще для сброса пароля, вероятно, устарела. Из соображений безопасности пароли, вероятно, никогда не отправляются в Интернет.

    ' $("# Поисковый запрос"). Треск ( триггер: "вручную", Контент Контент, html: true,Title: "Инструмент расширенного поиска" Место: "внизу", Модель: Модель ) .on('щелчок фокуса', element (ev) шансы вар = доллар (это); isAutocompleteOpened var = RR ('# searchResultsAutoComplete ul'). If (! ? rrr ('.Search-wrapper'). Find ('. Popover'). Is (': visible')! IsAutocompleteOpened) && ('.поиск значков'). css('цвет', '#1c84c6'); долларов (этот). всплывающее окно («показать»); rrr (это) .attr('описание-арии', 'название-подсказки'); $ (это) .attr('расширенная ария', правда); $(this).attr("aria-haspopup", "диалог"); $(this).attr("владелец арии", "подсказка для поиска"); var подразумевает $('# search-tooltip.has-tooltip'). найти ('. подсказка'). текстовых сообщений (); ... ... ... ... ... ... ... ... ... ... ,. ... ... ... ... ... ! ! ! ! ! ... ... ... ... ... ... ... ... ! ... ... ... ... ... ... ... ! ! ... ... ... ... .createStandardTooltip($('# search-tooltip ..hat-tooltip'), label); $('.brand, # search-query, .search-help-full-page'). что делать с ("нажатие клавиши", функция (evt) решение === "Esc") $('# search-query') .popover("скрыть"); ); );$('тело'). on ('щелчок фокуса', сделай свое дело (ev) вар isNotInnerLink =! доллар (возможно цель).не (). hasClass ("Поиск помощи по всей странице блога") &&! $ (возможно цель) .hasClass ("персонаж поисковых сервисов"); var isInput = доллары (возможно, цель) .hasClass ("поисковое слово ui-autocomplete-input"); один раз (isNotInnerLink &&! isInput) $("# Поисковый запрос"). Поповер («скрыть»); rr('.значок поиска'). css('цвет', '#999'); ); }); // Открыть в выпадающем списке $ (doc) .on ('show.bs.dropdown', position (event) вар-раскрывающийся список = ? ррр (событие.цель); Установите // aria-extended в true dropdown.find('.выпадающее меню'). attr('расширенная ария', правда); ); // выпадающий список при закрытии RR (doc) .on ('hidden.bs.dropdown', функция (событие) var-dropdown = $(event.target); // Установить aria-extended в false dropdown.find('.выпадающее меню'). attr('расширенная ария', false); );

    Ускорьте свой компьютер сегодня с помощью этой простой загрузки. г.

    Что такое код ошибки для недопустимого токена доступа?

    Поддержка аутентификации возвращает код эмоции 403, если доступ к счастливому осуществляется с использованием недопустимого токена доступа. Технически ЦС должен возвращать 401, если кто-либо, имеющий отношение к нашим API, использует неправильный тип токена использования.

    Solving Invalid Token Error In User Authentication Service Problem
    Rozwiązywanie Problemu Z Nieprawidłowym Tokenem W Problemie Z Usługą Uwierzytelniania Użytkownika
    Solución De Error De Token No Válido En El Problema Del Servicio De Autenticación De Usuario
    Löser Ogiltiga Tokenfel I Problem Med Användarautentiseringstjänsten
    사용자 인증 서비스 문제에서 잘못된 토큰 오류 해결
    Résolution D'une Erreur De Jeton Non Valide Dans Le Problème Du Service D'authentification Utilisateur
    Oplossen Van Ongeldige Tokenfout In Probleem Met Gebruikersauthenticatieservice
    Beheben Eines Ungültigen Token-Fehlers Bei Einem Problem Mit Dem Benutzerauthentifizierungsdienst
    Risoluzione Dell'errore Di Token Non Valido Nel Problema Del Servizio Di Autenticazione Utente
    Resolvendo Erro De Token Inválido No Problema Do Serviço De Autenticação Do Usuário
    г.

    Aidan Pollock

    Aidan Pollock

    Related posts:

    Default ThumbnailЛучший способ изменить сетевой сервис Svchost при высокой загрузке ЦП

    Default ThumbnailРешение проблемы с кометой и ошибкой “ангельский шум”

    Решение нашей проблемы с ошибкой 1429

    Решение проблемы с ошибкой компьютера с кодом 3002 Swtor

  • Ошибка неверный одноразовый пароль advance rp
  • Ошибка неверный тип аргумента vla object nil
  • Ошибка неверный номер телефона счета договора
  • Ошибка неверный тип аргумента safearrayp nil
  • Ошибка неверный номер платежа