From 9e45f170c749fbb7ff9f00d246957ffa03c82be5 Mon Sep 17 00:00:00 2001 From: Ivor Barhansky Date: Fri, 6 Jan 2023 16:57:25 +0200 Subject: [PATCH] =?UTF-8?q?=D0=A5=D0=BE=D1=80=D0=BE=D0=BD=D0=B8=D0=BC=20$?= =?UTF-8?q?=5FCOOKIE['pass'],=20=D0=BE=D1=82=D0=BA=D0=B0=D0=B7=D1=8B=D0=B2?= =?UTF-8?q?=D0=B0=D0=B5=D0=BC=D1=81=D1=8F=20=D0=BE=D1=82=20md5('pass').=20?= =?UTF-8?q?=D0=AD=D1=82=D0=BE=20=D0=BD=D0=B5=20=D1=80=D0=B5=D0=B3=D0=B8?= =?UTF-8?q?=D1=81=D1=82=D1=80=D0=B0=D1=86=D0=B8=D1=8F,=20=D0=B0=20=D1=87?= =?UTF-8?q?=D1=91=D1=80=D0=BD=D0=B0=D1=8F=20=D0=B4=D1=8B=D1=80=D0=B0!?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _incl_data/class/Battle.php | 4 +- _incl_data/class/BotLogic.php | 6 +- _incl_data/class/Core/Config.php | 3 + _incl_data/class/FightRequest.php | 9 +- _incl_data/class/Magic.php | 1 - _incl_data/class/PassGen.php | 5 + _incl_data/class/Priems.php | 4 +- _incl_data/class/User.php | 21 +- _incl_data/class/User/Confirmation.php | 120 +++ _incl_data/class/User/Email.php | 42 + _incl_data/class/User/Password.php | 67 ++ _incl_data/class/UserRegister.php | 16 +- _incl_data/class/magic/addrep.php | 6 +- _incl_data/class/magic/upexp.php | 2 - _incl_data/class/priems/bot_priems1.end.php | 1 - .../crons/undone/cron_dungeon_goBots.php | 4 +- _incl_data/crons/undone/cron_tower.php | 8 +- active.php | 44 - activnew.php | 140 ---- adminion/testing.php | 2 +- buttons.php | 7 +- confirm.php | 75 +- cron_dungeon_goBots.php | 4 +- enter.php | 236 +++--- fight/take.user.php | 2 +- forum_script/_forum.class.php | 2 +- gate.php | 3 +- getbattle.php | 2 +- html/library.php | 8 +- i/main.css | 576 ++++++++++++- inf.php | 97 +-- jx/battle/refresh.php | 8 +- jx/battle/refresh1.php | 7 +- jx/battle/refresh_bot.php | 2 +- jx/battle/refresh_vip.php | 2 +- jx/post.php | 2 +- main_bot.php | 6 +- modules_data/_NewLocations.php | 2 - modules_data/_anketa.php | 614 -------------- modules_data/_changepass.php | 711 +++++----------- modules_data/_locations.php | 5 +- modules_data/_ref2.php | 7 +- modules_data/location/katok.php | 4 +- modules_data/location/ruine_enter.php | 4 +- news_script/index.php | 6 +- online.php | 8 +- page/lib.php | 8 +- repass.php | 23 +- ruin_characteristics.php | 4 - settings.php | 772 +++++------------- 50 files changed, 1470 insertions(+), 2242 deletions(-) create mode 100644 _incl_data/class/User/Confirmation.php create mode 100644 _incl_data/class/User/Email.php create mode 100644 _incl_data/class/User/Password.php delete mode 100644 active.php delete mode 100644 activnew.php delete mode 100644 modules_data/_anketa.php diff --git a/_incl_data/class/Battle.php b/_incl_data/class/Battle.php index 0e99518b..347784d4 100644 --- a/_incl_data/class/Battle.php +++ b/_incl_data/class/Battle.php @@ -818,7 +818,7 @@ class Battle `u`.`zag`,`u`.`id`,`u`.`login`,`u`.`login2`,`u`.`online`,`u`.`admin`,`u`.`city`,`u`.`cityreg`,`u`.`align`,`u`.`align_lvl`,`u`.`align_exp`,`u`.`clan`, `u`.`level`,`u`.`money`,`u`.`money3`,`u`.`money2`,`u`.`money4`,`u`.`battle`,`u`.`sex`,`u`.`obraz`,`u`.`win`,`u`.`win_t`, `u`.`lose`,`u`.`lose_t`,`u`.`nich`,`u`.`timeMain`,`u`.`invis`,`u`.`bot_id`,`u`.`animal`,`u`.`type_pers`, - `u`.`notrhod`,`u`.`bot_room`,`u`.`inUser`,`u`.`inTurnir`,`u`.`inTurnirnew`,`u`.`activ`,`u`.`stopexp`,`u`.`real`, + `u`.`notrhod`,`u`.`bot_room`,`u`.`inUser`,`u`.`inTurnir`,`u`.`inTurnirnew`,`u`.`stopexp`,`u`.`real`, `st`.* @@ -9813,7 +9813,7 @@ class Battle `u`.`id`,`u`.`login`,`u`.`login2`,`u`.`online`,`u`.`admin`,`u`.`city`,`u`.`cityreg`,`u`.`align`,`u`.`align_lvl`,`u`.`align_exp`,`u`.`clan`, `u`.`level`,`u`.`money`,`u`.`money3`,`u`.`money2`,`u`.`money4`,`u`.`battle`,`u`.`sex`,`u`.`obraz`,`u`.`win`,`u`.`win_t`, `u`.`lose`,`u`.`lose_t`,`u`.`nich`,`u`.`timeMain`,`u`.`invis`,`u`.`bot_id`,`u`.`animal`,`u`.`type_pers`, - `u`.`notrhod`,`u`.`bot_room`,`u`.`inUser`,`u`.`inTurnir`,`u`.`inTurnirnew`,`u`.`activ`,`u`.`stopexp`,`u`.`real`, + `u`.`notrhod`,`u`.`bot_room`,`u`.`inUser`,`u`.`inTurnir`,`u`.`inTurnirnew`,`u`.`stopexp`,`u`.`real`, `st`.* diff --git a/_incl_data/class/BotLogic.php b/_incl_data/class/BotLogic.php index 3cbf8fd2..a9e07029 100644 --- a/_incl_data/class/BotLogic.php +++ b/_incl_data/class/BotLogic.php @@ -865,9 +865,9 @@ class BotLogic $se = 1; } - $r = ['name' => '_', 'city_real' => '', 'deviz' => '', 'chatColor' => 'Black']; + $r = ['name' => '_', 'chatColor' => 'Black']; - $ins = mysql_query("INSERT INTO `users` (`fnq`,`host_reg`,`room`,`login`,`pass`,`ipreg`,`ip`,`city`,`cityreg`,`name`,`sex`,`city_real`,`deviz`,`chatColor`,`timereg`) VALUES ( + $ins = mysql_query("INSERT INTO `users` (`fnq`,`host_reg`,`room`,`login`,`pass`,`ipreg`,`ip`,`city`,`cityreg`,`name`,`sex`,`chatColor`,`timereg`) VALUES ( '0', 'real_bot_user', '0', @@ -879,8 +879,6 @@ class BotLogic 'capitalcity', '" . $r['name'] . "', '" . mysql_real_escape_string($sex) . "', - '" . $r['city_real'] . "', - '" . $r['deviz'] . "', '" . $r['chatColor'] . "', '" . time() . "')"); if ($ins) { diff --git a/_incl_data/class/Core/Config.php b/_incl_data/class/Core/Config.php index 2e0e135d..2a178989 100644 --- a/_incl_data/class/Core/Config.php +++ b/_incl_data/class/Core/Config.php @@ -29,6 +29,7 @@ class Config $c['title3'] = $c['name']; $c['keys'] = $c['name'] . ', combats.com, ' . $c['name'] . ' игра, ' . $c['name'] . ' играть, игра ' . $c['name'] . ', старый ' . $c['name'] . ', ' . $c['name'] . ' онлайн игра, ' . $c['name'] . ' браузерная игра, играть в ' . $c['name'] . ', игра бк, бк игра, старый бк, играть в бк, бк онлайн игра, новый бк, Легендарный ' . $c['name'] . ', легендарный бк, combats, комбатс, combats ru, combats com, OldBK, oldbk ru, oldbk com, олдбк, old bk, олд бк, mycombats, rebk, recombats, oldcombats, obk2'; //Ключевые слова META $c['desc'] = '«' . $c['name'] . '» – это бесплатная увлекательная браузерная онлайн игра 2004-2009г, в которой сконцентрировано все самое лучшее от современных онлайн игр. В этой браузерной игре заложены самые интересные традиции всем известной онлайн игры под названием «' . $c['name'] . ' 2004-2009», которая, кстати, стала первооткрывателем всех браузерных игр.'; //Описание META + $c['footer'] = $c['name'] . ' © 2013-' . date('Y'); //Сервера $c['host'] = 'new-combats.com'; @@ -39,6 +40,8 @@ class Config $c['abandonedplain'] = $c['host']; $c['https'] = 'https://' . $c['host'] . DIRECTORY_SEPARATOR; $c['exit'] = ''; + $c['support'] = 'support@' . $c['host']; + //Валюта $c['curency_name'] = 'RUB'; diff --git a/_incl_data/class/FightRequest.php b/_incl_data/class/FightRequest.php index 575b910d..cd1a213f 100644 --- a/_incl_data/class/FightRequest.php +++ b/_incl_data/class/FightRequest.php @@ -106,7 +106,7 @@ class FightRequest ); while ($ur = mysql_fetch_array($usp)) { mysql_query( - 'INSERT INTO `users` (`login`,`room`,`name`,`sex`,`level`,`inTurnirnew`,`bithday`,`activ`) VALUES ("' . $ur['login'] . '","318","' . $ur['name'] . '","' . $ur['sex'] . '","' . $t['level'] . '","' . $pl['id'] . '","01.01.2001","0")' + 'INSERT INTO `users` (`login`,`room`,`name`,`sex`,`level`,`inTurnirnew`,`bithday`) VALUES ("' . $ur['login'] . '","318","' . $ur['name'] . '","' . $ur['sex'] . '","' . $t['level'] . '","' . $pl['id'] . '","01.01.2001")' ); $uri = mysql_insert_id(); mysql_query( @@ -241,7 +241,7 @@ class FightRequest ); while ($ur = mysql_fetch_array($usp)) { mysql_query( - 'INSERT INTO `users` (`login`,`room`,`name`,`sex`,`level`,`inTurnirnew`,`bithday`,`activ`) VALUES ("' . $ur['login'] . '","318","' . $ur['name'] . '","' . $ur['sex'] . '","' . $t['level'] . '","' . $pl['id'] . '","01.01.2001","0")' + 'INSERT INTO `users` (`login`,`room`,`name`,`sex`,`level`,`inTurnirnew`,`bithday`) VALUES ("' . $ur['login'] . '","318","' . $ur['name'] . '","' . $ur['sex'] . '","' . $t['level'] . '","' . $pl['id'] . '","01.01.2001")' ); $uri = mysql_insert_id(); mysql_query( @@ -356,7 +356,6 @@ class FightRequest 'cityreg' => $botInfo['city'], 'name' => $botInfo['login'], 'sex' => $botInfo['sex'], - 'deviz' => '', 'hobby' => '', 'time_reg' => time(), 'obraz' => $botInfo['obraz'], @@ -2910,8 +2909,8 @@ function MM_jumpMenu(targ,selObj,restore){ //v3.0 //============================================================================================= Призовые Db::sql( - 'insert into users (name, align, `real`, login, host_reg, pass, ip, ipreg, city, cityreg, room, timereg, mail, bithday, sex, fnq, battle, design, molch2, level) -values (?,?,1,?,0,?,?,?,?,?,422,unix_timestamp(),?,?,?,0,0,1,unix_timestamp() + 86400,8)', + 'insert into users (name, align, `real`, login, host_reg, pass, ip, ipreg, city, cityreg, room, timereg, mail, bithday, sex, fnq, battle, molch2, level) +values (?,?,1,?,0,?,?,?,?,?,422,unix_timestamp(),?,?,?,0,0,unix_timestamp() + 86400,8)', [ $this->u->info['name'], $this->u->info['align'], diff --git a/_incl_data/class/Magic.php b/_incl_data/class/Magic.php index 386f24ce..561a4b5f 100644 --- a/_incl_data/class/Magic.php +++ b/_incl_data/class/Magic.php @@ -1338,7 +1338,6 @@ class Magic 'cityreg' => $u->info['cityreg'], 'name' => $u->info['name'], 'sex' => $u->info['sex'], - 'deviz' => $u->info['deviz'], 'hobby' => $u->info['hobby'], 'time_reg' => $u->info['time_reg'], 'obraz' => $u->info['obraz'], diff --git a/_incl_data/class/PassGen.php b/_incl_data/class/PassGen.php index acb862c0..af865c32 100644 --- a/_incl_data/class/PassGen.php +++ b/_incl_data/class/PassGen.php @@ -14,4 +14,9 @@ class PassGen $length ); } + + public static function intCode($length = 8): int + { + return mt_rand(10 ** ($length - 1), 10 ** $length - 1); + } } \ No newline at end of file diff --git a/_incl_data/class/Priems.php b/_incl_data/class/Priems.php index 5426d74d..e90aad05 100644 --- a/_incl_data/class/Priems.php +++ b/_incl_data/class/Priems.php @@ -1426,7 +1426,7 @@ class Priems `u`.`id`,`u`.`login`,`u`.`login2`,`u`.`online`,`u`.`admin`,`u`.`city`,`u`.`cityreg`,`u`.`align`,`u`.`clan`, `u`.`level`,`u`.`money`,`u`.`money3`,`u`.`money4`,`u`.`battle`,`u`.`sex`,`u`.`obraz`,`u`.`win`,`u`.`win_t`, `u`.`lose`,`u`.`lose_t`,`u`.`nich`,`u`.`timeMain`,`u`.`invis`,`u`.`bot_id`,`u`.`animal`,`u`.`type_pers`, - `u`.`notrhod`,`u`.`bot_room`,`u`.`inUser`,`u`.`inTurnir`,`u`.`inTurnirnew`,`u`.`activ`,`u`.`stopexp`,`u`.`real`, + `u`.`notrhod`,`u`.`bot_room`,`u`.`inUser`,`u`.`inTurnir`,`u`.`inTurnirnew`,`u`.`stopexp`,`u`.`real`, `st`.* @@ -1455,7 +1455,7 @@ class Priems `u`.`id`,`u`.`login`,`u`.`login2`,`u`.`online`,`u`.`admin`,`u`.`city`,`u`.`cityreg`,`u`.`align`,`u`.`clan`, `u`.`level`,`u`.`money`,`u`.`money3`,`u`.`money4`,`u`.`battle`,`u`.`sex`,`u`.`obraz`,`u`.`win`,`u`.`win_t`, `u`.`lose`,`u`.`lose_t`,`u`.`nich`,`u`.`timeMain`,`u`.`invis`,`u`.`bot_id`,`u`.`animal`,`u`.`type_pers`, - `u`.`notrhod`,`u`.`bot_room`,`u`.`inUser`,`u`.`inTurnir`,`u`.`inTurnirnew`,`u`.`activ`,`u`.`stopexp`,`u`.`real`, + `u`.`notrhod`,`u`.`bot_room`,`u`.`inUser`,`u`.`inTurnir`,`u`.`inTurnirnew`,`u`.`stopexp`,`u`.`real`, `st`.* diff --git a/_incl_data/class/User.php b/_incl_data/class/User.php index f3be6077..0313978f 100644 --- a/_incl_data/class/User.php +++ b/_incl_data/class/User.php @@ -1214,7 +1214,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.` `u`.`level`, `u`.`city`, `u`.`online`, - `u`.`sex`,`u`.`design`,`u`.`autospell`,`u`.`noplaw`, + `u`.`sex`,`u`.`autospell`,`u`.`noplaw`, `u`.`cityreg`, `u`.`palpro`, `u`.`invis`, @@ -1355,7 +1355,6 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.` $this->info['admin'], $this->info['nadmin'], $this->info['banned'], - $this->info['activ'], $this->info['align'], $this->info['id'], $this->info['level'] @@ -1384,7 +1383,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.` if ($this->info['banned'] < $md[5]) { $this->info['banned'] = $md[5]; } - $this->info['activ'] = $md[6]; + $this->info['noreal'] = 1; $this->info['align_real'] = $md[7]; $this->info['__id'] = $md[8]; @@ -1581,7 +1580,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.` } else { $t = mysql_fetch_array( mysql_query( - 'SELECT `id`,`login`,`login2`,`pass`,`pass2`,`emailconfirmation`,`securetime`,`sys`,`online`,`ip`,`ipreg`,`joinIP`,`admin`,`city`,`room`,`banned`,`auth`,`align`,`mod_zvanie`,`clan`,`nextMsg`,`molch1`,`molch2`,`molch3`,`level`,`money`,`battle`,`cityreg`,`invBlock`,`invBlockCode`,`zag`,`a1`,`q1`,`mail`,`name`,`bithday`,`sex`,`city_real`,`icq`,`icq_hide`,`homepage`,`deviz`,`hobby`,`chatColor`,`timereg`,`add_smiles`,`obraz`,`win`,`lose`,`nich`,`cityreg2`,`host`,`info_delete`,`dateEnter`,`afk`,`dnd`,`timeMain`,`clan_prava`,`addpr`,`marry`,`city2`,`invis`,`bot_id`,`haos`,`host_reg`,`inUser`,`jail`,`animal`,`vip`,`catch`,`frg`,`no_ip`,`type_pers`,`bot_room` FROM `users` WHERE `login` = "' . mysql_real_escape_string( + 'SELECT `id`,`login`,`login2`,`pass`,`pass2`,`emailconfirmation`,`securetime`,`sys`,`online`,`ip`,`ipreg`,`joinIP`,`admin`,`city`,`room`,`banned`,`auth`,`align`,`mod_zvanie`,`clan`,`nextMsg`,`molch1`,`molch2`,`molch3`,`level`,`money`,`battle`,`cityreg`,`invBlock`,`invBlockCode`,`zag`,`a1`,`q1`,`mail`,`name`,`bithday`,`sex`,`hobby`,`chatColor`,`timereg`,`add_smiles`,`obraz`,`win`,`lose`,`nich`,`cityreg2`,`host`,`info_delete`,`dateEnter`,`afk`,`dnd`,`timeMain`,`clan_prava`,`addpr`,`marry`,`city2`,`invis`,`bot_id`,`haos`,`host_reg`,`inUser`,`jail`,`animal`,`vip`,`catch`,`frg`,`no_ip`,`type_pers`,`bot_room` FROM `users` WHERE `login` = "' . mysql_real_escape_string( $_POST['trnLogin'] ) . '" AND `city` = "' . $this->info['city'] . '" LIMIT 1' ) @@ -2078,7 +2077,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.` return mysql_fetch_array( mysql_query( 'SELECT - `u`.`id`,`u`.`login`,`u`.`login2`,`u`.`pass`,`u`.`pass2`,`u`.`repass`,`u`.`notrhod`,`u`.`emailconfirmation`,`u`.`securetime`,`u`.`sys`,`u`.`palpro`,`u`.`online`,`u`.`ip`,`u`.`ipreg`,`u`.`joinIP`,`u`.`admin`,`u`.`city`,`u`.`room`,`u`.`banned`,`u`.`auth`,`u`.`align`,`u`.`align2`,`u`.`align_lvl`,`u`.`align_exp`,`u`.`mod_zvanie`,`u`.`clan`,`u`.`nextMsg`,`u`.`molch1`,`u`.`molch2`,`u`.`molch3`,`u`.`level`,`u`.`money`,`u`.`money2`,`u`.`money4`,`u`.`money3`,`u`.`battle`,`u`.`cityreg`,`u`.`invBlock`,`u`.`allLock`,`u`.`invBlockCode`,`u`.`zag`,`u`.`a1`,`u`.`q1`,`u`.`mail`,`u`.`name`,`u`.`bithday`,`u`.`sex`,`u`.`design`,`u`.`autospell`,`u`.`noplaw`,`u`.`city_real`,`u`.`icq`,`u`.`icq_hide`,`u`.`homepage`,`u`.`deviz`,`u`.`hobby`,`u`.`chatColor`,`u`.`timereg`,`u`.`add_smiles`,`u`.`obraz`,`u`.`win`,`u`.`win_bs`,`u`.`lose`,`u`.`nich`,`u`.`cityreg2`,`u`.`host`,`u`.`info_delete`,`u`.`dateEnter`,`u`.`afk`,`u`.`dnd`,`u`.`timeMain`,`u`.`clan_prava`,`u`.`addpr`,`u`.`marry`,`u`.`city2`,`u`.`invis`,`u`.`bot_id`,`u`.`haos`,`u`.`host_reg`,`u`.`inUser`,`u`.`inTurnir`,`u`.`inTurnirnew`,`u`.`jail`,`u`.`animal`,`u`.`vip`,`u`.`catch`,`u`.`frg`,`u`.`no_ip`,`u`.`type_pers`,`u`.`bot_room`,`u`.`clan_delay`,`u`.`bukmeker`, + `u`.`id`,`u`.`login`,`u`.`login2`,`u`.`pass`,`u`.`pass2`,`u`.`repass`,`u`.`notrhod`,`u`.`emailconfirmation`,`u`.`securetime`,`u`.`sys`,`u`.`palpro`,`u`.`online`,`u`.`ip`,`u`.`ipreg`,`u`.`joinIP`,`u`.`admin`,`u`.`city`,`u`.`room`,`u`.`banned`,`u`.`auth`,`u`.`align`,`u`.`align2`,`u`.`align_lvl`,`u`.`align_exp`,`u`.`mod_zvanie`,`u`.`clan`,`u`.`nextMsg`,`u`.`molch1`,`u`.`molch2`,`u`.`molch3`,`u`.`level`,`u`.`money`,`u`.`money2`,`u`.`money4`,`u`.`money3`,`u`.`battle`,`u`.`cityreg`,`u`.`invBlock`,`u`.`allLock`,`u`.`invBlockCode`,`u`.`zag`,`u`.`a1`,`u`.`q1`,`u`.`mail`,`u`.`name`,`u`.`bithday`,`u`.`sex`,`u`.`autospell`,`u`.`noplaw`,`u`.`hobby`,`u`.`chatColor`,`u`.`timereg`,`u`.`add_smiles`,`u`.`obraz`,`u`.`win`,`u`.`win_bs`,`u`.`lose`,`u`.`nich`,`u`.`cityreg2`,`u`.`host`,`u`.`info_delete`,`u`.`dateEnter`,`u`.`afk`,`u`.`dnd`,`u`.`timeMain`,`u`.`clan_prava`,`u`.`addpr`,`u`.`marry`,`u`.`city2`,`u`.`invis`,`u`.`bot_id`,`u`.`haos`,`u`.`host_reg`,`u`.`inUser`,`u`.`inTurnir`,`u`.`inTurnirnew`,`u`.`jail`,`u`.`animal`,`u`.`vip`,`u`.`catch`,`u`.`frg`,`u`.`no_ip`,`u`.`type_pers`,`u`.`bot_room`,`u`.`clan_delay`,`u`.`bukmeker`, `st`.`id`,`st`.`lider`,`st`.`btl_cof`,`st`.`last_hp`,`st`.`last_pr`,`st`.`smena`,`st`.`stats`,`st`.`hpAll`,`st`.`mpAll`,`st`.`hpNow`,`st`.`mpNow`,`st`.`enNow`,`st`.`transfers`,`st`.`regHP`,`st`.`regMP`,`st`.`showmenu`,`st`.`prmenu`,`st`.`ability`,`st`.`skills`,`st`.`sskills`,`st`.`nskills`,`st`.`exp`,`st`.`minHP`,`st`.`minMP`,`st`.`zv`,`st`.`dn`,`st`.`dnow`,`st`.`team`,`st`.`battle_yron`,`st`.`battle_exp`,`st`.`enemy`,`st`.`last_a`,`st`.`last_b`,`st`.`battle_text`,`st`.`upLevel`,`st`.`wipe`,`st`.`bagStats`,`st`.`timeGo`,`st`.`timeGoL`,`st`.`nextAct`,`st`.`active`,`st`.`bot`,`st`.`lastAlign`,`st`.`tactic1`,`st`.`tactic2`,`st`.`tactic3`,`st`.`tactic4`,`st`.`tactic5`,`st`.`tactic6`,`st`.`tactic7`,`st`.`x`,`st`.`y`,`st`.`s`,`st`.`battleEnd`,`st`.`priemslot`,`st`.`priems`,`st`.`priems_z`,`st`.`bet`,`st`.`clone`,`st`.`atack`,`st`.`bbexp`,`st`.`ref_data`,`st`.`res_x`,`st`.`res_y`,`st`.`res_s`,`st`.`bn_capitalcity`,`st`.`bn_demonscity` FROM `users` AS `u` LEFT JOIN `stats` AS `st` ON (`u`.`id` = `st`.`id`) WHERE ' . $whr . ' LIMIT 1' ) @@ -2107,7 +2106,6 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.` `cityreg`, `name`, `sex`, - `deviz`, `hobby`, `timereg`, `obraz`, @@ -2123,7 +2121,6 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.` "' . $clon['login'] . '", "' . $clon['sex'] . '", "", - "", "' . $clon['time_reg'] . '", "' . $clon['obraz'] . '", "' . mysql_real_escape_string($id) . '", @@ -2201,7 +2198,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.` if ($botDate == null) { $bot = mysql_fetch_array( mysql_query( - 'SELECT `id`,`login`,`stats`,`obraz`,`level`,`sex`,`name`,`deviz`,`hobby`,`type`,`itemsUse`,`priemUse`,`align`,`clan`,`align_zvanie`,`bonus`,`clan_zvanie`,`time_reg`,`city_reg`,`upLevel`,`active`,`expB`,`p_items`,`agressor`,`priems`,`priems_z`,`award` FROM `test_bot` WHERE `id` = "' . $id . '" LIMIT 1' + 'SELECT `id`,`login`,`stats`,`obraz`,`level`,`sex`,`name`,`hobby`,`type`,`itemsUse`,`priemUse`,`align`,`clan`,`align_zvanie`,`bonus`,`clan_zvanie`,`time_reg`,`city_reg`,`upLevel`,`active`,`expB`,`p_items`,`agressor`,`priems`,`priems_z`,`award` FROM `test_bot` WHERE `id` = "' . $id . '" LIMIT 1' ) ); } else { @@ -2232,7 +2229,6 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.` `cityreg`, `name`, `sex`, - `deviz`, `hobby`, `timereg`, `obraz`, @@ -2246,7 +2242,6 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.` "' . $bot['city_reg'] . '", "' . $bot['name'] . '", "' . $bot['sex'] . '", - "' . $bot['deviz'] . '", "' . $bot['hobby'] . '", "' . $bot['time_reg'] . '", "' . $bot['obraz'] . '", @@ -7913,7 +7908,7 @@ LIMIT 1' if ($uid != $this->info['id']) { $u = mysql_fetch_array( mysql_query( - 'SELECT `u`.`align`,`u`.`align2`,`u`.`battle`,`u`.`clan`,`u`.`animal`,`u`.`id`,`u`.`level`,`u`.`login`,`u`.`sex`,`u`.`design`,`u`.`autospell`,`u`.`noplaw`,`u`.`obraz`, + 'SELECT `u`.`align`,`u`.`align2`,`u`.`battle`,`u`.`clan`,`u`.`animal`,`u`.`id`,`u`.`level`,`u`.`login`,`u`.`sex`,`u`.`autospell`,`u`.`noplaw`,`u`.`obraz`, `st`.`id`,`st`.`lider`,`st`.`btl_cof`,`st`.`last_hp`,`st`.`last_pr`,`st`.`smena`,`st`.`stats`,`st`.`hpAll`,`st`.`mpAll`,`st`.`hpNow`,`st`.`mpNow`,`st`.`enNow`,`st`.`transfers`,`st`.`regHP`,`st`.`regMP`,`st`.`showmenu`,`st`.`prmenu`,`st`.`ability`,`st`.`skills`,`st`.`sskills`,`st`.`nskills`,`st`.`exp`,`st`.`minHP`,`st`.`minMP`,`st`.`zv`,`st`.`dn`,`st`.`dnow`,`st`.`team`,`st`.`battle_yron`,`st`.`battle_exp`,`st`.`enemy`,`st`.`last_a`,`st`.`last_b`,`st`.`battle_text`,`st`.`upLevel`,`st`.`wipe`,`st`.`bagStats`,`st`.`timeGo`,`st`.`timeGoL`,`st`.`nextAct`,`st`.`active`,`st`.`bot`,`st`.`lastAlign`,`st`.`tactic1`,`st`.`tactic2`,`st`.`tactic3`,`st`.`tactic4`,`st`.`tactic5`,`st`.`tactic6`,`st`.`tactic7`,`st`.`x`,`st`.`y`,`st`.`s`,`st`.`battleEnd`,`st`.`priemslot`,`st`.`priems`,`st`.`priems_z`,`st`.`bet`,`st`.`clone`,`st`.`atack`,`st`.`bbexp`,`st`.`ref_data`,`st`.`res_x`,`st`.`res_y`,`st`.`res_s`,`st`.`bn_capitalcity`,`st`.`bn_demonscity` FROM `users` AS `u` LEFT JOIN `stats` AS `st` ON (`u`.`id` = `st`.`id`) WHERE `u`.`id`="' . mysql_real_escape_string( $uid @@ -8346,7 +8341,7 @@ LIMIT 1' if ($uid != $this->info['id']) { $u = mysql_fetch_array( mysql_query( - 'SELECT `u`.`inTurnir`,`u`.`allLock`,`u`.`battle`,`u`.`zag`,`u`.`banned`,`u`.`align`,`u`.`align2`,`u`.`clan`,`u`.`animal`,`u`.`id`,`u`.`level`,`u`.`login`,`u`.`sex`,`u`.`design`,`u`.`autospell`,`u`.`noplaw`,`u`.`obraz`,`u`.`vip`, + 'SELECT `u`.`inTurnir`,`u`.`allLock`,`u`.`battle`,`u`.`zag`,`u`.`banned`,`u`.`align`,`u`.`align2`,`u`.`clan`,`u`.`animal`,`u`.`id`,`u`.`level`,`u`.`login`,`u`.`sex`,`u`.`autospell`,`u`.`noplaw`,`u`.`obraz`,`u`.`vip`, `st`.`id`,`st`.`lider`,`st`.`btl_cof`,`st`.`last_hp`,`st`.`last_pr`,`st`.`smena`,`st`.`stats`,`st`.`hpAll`,`st`.`mpAll`,`st`.`hpNow`,`st`.`mpNow`,`st`.`enNow`,`st`.`transfers`,`st`.`regHP`,`st`.`regMP`,`st`.`showmenu`,`st`.`prmenu`,`st`.`ability`,`st`.`skills`,`st`.`sskills`,`st`.`nskills`,`st`.`exp`,`st`.`minHP`,`st`.`minMP`,`st`.`zv`,`st`.`dn`,`st`.`dnow`,`st`.`team`,`st`.`battle_yron`,`st`.`battle_exp`,`st`.`enemy`,`st`.`last_a`,`st`.`last_b`,`st`.`battle_text`,`st`.`upLevel`,`st`.`wipe`,`st`.`bagStats`,`st`.`timeGo`,`st`.`timeGoL`,`st`.`nextAct`,`st`.`active`,`st`.`bot`,`st`.`lastAlign`,`st`.`tactic1`,`st`.`tactic2`,`st`.`tactic3`,`st`.`tactic4`,`st`.`tactic5`,`st`.`tactic6`,`st`.`tactic7`,`st`.`x`,`st`.`y`,`st`.`s`,`st`.`battleEnd`,`st`.`priemslot`,`st`.`priems`,`st`.`priems_z`,`st`.`bet`,`st`.`clone`,`st`.`atack`,`st`.`bbexp`,`st`.`ref_data`,`st`.`res_x`,`st`.`res_y`,`st`.`res_s`,`st`.`bn_capitalcity`,`st`.`bn_demonscity` FROM `users` AS `u` LEFT JOIN `stats` AS `st` ON (`u`.`id` = `st`.`id`) WHERE `u`.`id`="' . mysql_real_escape_string( $uid @@ -11451,7 +11446,7 @@ LIMIT 1' } } - if (($rtg || !isset($mtest['id'])) && isset($rlog['id']) && $this->info['activ'] == 0) { + if (($rtg || !isset($mtest['id'])) && isset($rlog['id'])) { $rfs['data'] = explode('|', $rlogs['ref_data']); $ekr = '0.00'; $bn = mysql_fetch_array( diff --git a/_incl_data/class/User/Confirmation.php b/_incl_data/class/User/Confirmation.php new file mode 100644 index 00000000..e16ab594 --- /dev/null +++ b/_incl_data/class/User/Confirmation.php @@ -0,0 +1,120 @@ +info. + * @param mixed $value Новое значение + * @param ?int $code Проверочный код + * @param string $type Тип меняемого значения. С маленькой буквы, именительный падеж. + * @return void + */ + public static function byEmail(array $userinfo, string $type, $value, ?int $code = null) + { + if ($type === 'pass2' && is_null($code)) { + self::pass2ByEmailCustom($userinfo, $value); + return; + } + $ip = UserIp::get(); + $date = date('d.m.y H:i'); + $https = Config::get('https'); + $support = Config::get('support'); + $activationLink = 'https://' . $userinfo['city'] . Config::get('host') . + "/confirm.php?id={$userinfo['id']}&code=$code"; + $fulllogin = $userinfo['login'] . "[{$userinfo['level']}]"; + Mail::send( + $userinfo['mail'], + << + Сменить $type + + $date
+ Кто-то с IP: $ip пытается сменить $type к персонажу $fulllogin.
+ Т.к. в анкете у этого персонажа указан email: {$userinfo['mail']}, то вы и получили это письмо.
+ login: {$userinfo['login']}
+ Новый $type: $value

+ Для того чтобы сменить $type, перейдите по ссылке:
+ $activationLink
+
--
+ Бойцовский Клуб $https
+ Администрация Бойцовского Клуба: $support
+ P.S. Данное письмо сгенерировано автоматически, отвечать на него не нужно. + + + HTML, + "Смена $type у персонажа $fulllogin" + ); + } + + private static function pass2ByEmailCustom(array $userinfo, string $pass2) + { + + $ip = UserIp::get(); + $fulllogin = $userinfo['login'] . "[{$userinfo['level']}]"; + Mail::send( + $userinfo['mail'], + << + Второй пароль от персонажа $fulllogin. + + Вами, с IP адреса - $ip, был установлен второй пароль в игре Бойцовский Клуб.
+ Если это были не Вы, свяжитесь с администрацией сайта.

+ ------------------------------------------------------------------
+ Ваш логин | {$userinfo['login']}
+ Второй пароль | ' . $pass2 . '
+ ------------------------------------------------------------------
+

Желаем Вам приятной игры.

Администрация + + HTML, + "Второй пароль от персонажа $fulllogin" + ); + } + + public static function byCode(int $uid, int $code): string + { + $status = ''; + + if ($uid <= 0 || $code <= 0) { + return $status; + } + + $codes = Db::getRow( + 'select * from emailconfirmation where id = ? and code = ? and (active = 1 or pass = 1 or email = 1)', + [$uid, $code] + ); + if (!$codes['id']) { + $status = 'Ссылка устарела!'; + } elseif ($codes['active'] === 1) { + Db::sql( + 'update users set emailconfirmation = 1, securetime = unix_timestamp() + 259200 where id = ?', + [$codes['id']] + ); + $status = "Подтверждение смены пароля/email через почту включено"; + } elseif ($codes['pass'] === 1) { + Db::sql( + 'update users as u inner join emailconfirmation as e on u.id = e.id set u.pass = e.pa_em, u.securetime = unix_timestamp() + 259200 where u.id = ?', + [$codes['id']] + ); + $status = "Удачно сменили пароль<"; + } elseif ($codes['email'] === 1) { + Db::sql( + 'update users as u inner join emailconfirmation as e on u.id = e.id set u.mail = e.pa_em, u.securetime = unix_timestamp() + 259200 where u.id = ?', + [$codes['id']] + ); + $status = "Удачно сменили email"; + } + Db::sql('delete from emailconfirmation where id = ? and code = ?', [$_GET['id'], $_GET['code']]); + if ($status) { + $status = "

$status

"; + } + return $status; + } +} \ No newline at end of file diff --git a/_incl_data/class/User/Email.php b/_incl_data/class/User/Email.php new file mode 100644 index 00000000..a46c4897 --- /dev/null +++ b/_incl_data/class/User/Email.php @@ -0,0 +1,42 @@ +info = $userinfo ?? User::start()->info; + } + + public function change(string $old, string $new): string + { + if ($old === $new) { + return $this->info['mail']; + } + + if ($this->info['emailconfirmation'] === 1) { + $query = 'insert into emailconfirmation (id, code, pa_em, pass) values (?,?,?,1)'; + $args = [ + $this->info['id'], + PassGen::intCode(10), + $new + ]; + Confirmation::byEmail($this->info, 'email', $new, $args[1]); + } else { + $query = 'update users set mail = ?, securetime = unix_timestamp() + 259200 where id = ?'; + $args = [ + $new, + $this->info['id'] + ]; + } + Db::sql($query, $args); + return $new; + } +} \ No newline at end of file diff --git a/_incl_data/class/User/Password.php b/_incl_data/class/User/Password.php new file mode 100644 index 00000000..98abcbd4 --- /dev/null +++ b/_incl_data/class/User/Password.php @@ -0,0 +1,67 @@ +info = $userinfo ?? User::start()->info; + } + + public function changeFirst(string $old, string $new): string + { + if ($old === $new && password_verify($old, $this->info['pass'])) { + if ($this->info['emailconfirmation'] === 1) { + $query = 'insert into emailconfirmation (id, code, pa_em, pass) values (?,?,?,1)'; + $args = [ + $this->info['id'], + PassGen::intCode(10), + password_hash($new, PASSWORD_DEFAULT) + ]; + Confirmation::byEmail($this->info, 'пароль', $new, $args[1]); + $hashedPass = $args[2]; + } else { + $query = 'update users set pass = ?, repass = 0, securetime = unix_timestamp() + 259200 where id = ?'; + $args = [ + password_hash($new, PASSWORD_DEFAULT), + $this->info['id'] + ]; + $hashedPass = $args[0]; + } + Db::sql($query, $args); + return $hashedPass; + } + return $this->info['pass']; + } + + public function changeSecond(?int $passLength): array + { + if (in_array($passLength, [4,6,8])) { + $query = 'update users set pass2 = ? where id = ?'; + $pass2 = PassGen::intCode($passLength); + $args = [ + password_hash($pass2, PASSWORD_DEFAULT), + $this->info['id'] + ]; + Confirmation::byEmail($this->info, 'pass2', $pass2); + $hash = $args[0]; + } else { + $query = 'update users set pass2 = default where id = ?'; + $args = [$this->info['id']]; + } + + Db::sql($query, $args); + return [ + 'pass2' => $pass2 ?? '', + 'hash' => $hash ?? null, + ]; + } +} + diff --git a/_incl_data/class/UserRegister.php b/_incl_data/class/UserRegister.php index 18472b9d..2b0ffb18 100644 --- a/_incl_data/class/UserRegister.php +++ b/_incl_data/class/UserRegister.php @@ -97,17 +97,21 @@ class UserRegister public static function new(string $login, string $password, string $email, $ref, $birthday, $sex): string { + $password = password_hash($password, PASSWORD_DEFAULT); + $ref = (int)$ref; + $ip = UserIp::get(); + $sex = (int)$sex - 10; //На входе 10\11, а передать надо 0\1. Db::sql( - 'insert into users (users.real,login,host_reg,pass,ip,ipreg,room,timereg,activ,mail,bithday,sex,fnq,design,molch2,level,hobby,clan_zv) values (1,?,?,?,?,?,9,unix_timestamp(),0,?,?,?,0,1,unix_timestamp() + 86400,8,\'\',0)', + 'insert into users (users.real,login,host_reg,pass,ip,ipreg,room,timereg,mail,bithday,sex,fnq,molch2,level,hobby,clan_zv) values (1,?,?,?,?,?,9,unix_timestamp(),?,?,?,0,unix_timestamp() + 86400,8,\'\',0)', [ $login, - (int)$ref, - md5($password), - UserIp::get(), - UserIp::get(), + $ref, + $password, + $ip, + $ip, $email, date('d.m.Y', strtotime($birthday)), - $sex - 10, + $sex, ] ); diff --git a/_incl_data/class/magic/addrep.php b/_incl_data/class/magic/addrep.php index 6fe78e90..df32fcf7 100644 --- a/_incl_data/class/magic/addrep.php +++ b/_incl_data/class/magic/addrep.php @@ -7,11 +7,7 @@ if( $u->info['twink'] != 0 ) { $u->error = 'Невозможно использовать "'.$itm['name'].'". Зайдите на основного персонажа!'; } -elseif( $u->info['activ'] != 0 ) - { - $u->error = 'Невозможно использовать "'.$itm['name'].'". Активируйте персонажа через E-mail!'; - } -elseif( $itm['id'] > 0 && $itm['item_id']==10006 ) +elseif( $itm['id'] > 0 && $itm['item_id']==10006 ) { $repc='repcapitalcity'; if ($u->rep[$repc]<25000) diff --git a/_incl_data/class/magic/upexp.php b/_incl_data/class/magic/upexp.php index dfb8e187..52d25269 100644 --- a/_incl_data/class/magic/upexp.php +++ b/_incl_data/class/magic/upexp.php @@ -6,8 +6,6 @@ if(!defined('GAME')) if( $u->info['twink'] != 0 ) { $u->error = 'Невозможно использовать "'.$itm['name'].'". Зайдите на основного персонажа!'; -}elseif( $u->info['activ'] != 0 ) { - $u->error = 'Невозможно использовать "'.$itm['name'].'". Активируйте персонажа через E-mail!'; }elseif( $itm['id'] > 0 ) { if ($u->info['exp']<469999999) { diff --git a/_incl_data/class/priems/bot_priems1.end.php b/_incl_data/class/priems/bot_priems1.end.php index 6ddc92d5..e48ce372 100644 --- a/_incl_data/class/priems/bot_priems1.end.php +++ b/_incl_data/class/priems/bot_priems1.end.php @@ -540,7 +540,6 @@ if ($this->users[$this->uids[$uid1]]['hpNow'] > 0){ 'cityreg' => $this->users[$this->uids[$uid2]]['cityreg'], 'name' => $this->users[$this->uids[$uid2]]['name'], 'sex' => $this->users[$this->uids[$uid2]]['sex'], - 'deviz' => $this->users[$this->uids[$uid2]]['deviz'], 'hobby' => $this->users[$this->uids[$uid2]]['hobby'], 'time_reg' => $this->users[$this->uids[$uid2]]['time_reg'], 'obraz' => $this->users[$this->uids[$uid2]]['obraz'], diff --git a/_incl_data/crons/undone/cron_dungeon_goBots.php b/_incl_data/crons/undone/cron_dungeon_goBots.php index 89c72996..d188582e 100644 --- a/_incl_data/crons/undone/cron_dungeon_goBots.php +++ b/_incl_data/crons/undone/cron_dungeon_goBots.php @@ -144,7 +144,7 @@ function botAddBattle($bot, $logins_bot) $add_bot = mysql_fetch_array( mysql_query( 'SELECT - `id`, `login`, `stats`, `obraz`, `level`, `sex`, `name`, `deviz`, `hobby`, `type`, `itemsUse`, `priemUse`, `align`, `clan`, `align_zvanie`, `bonus`, `clan_zvanie`, `time_reg`, `city_reg`, `upLevel`, `active`, `expB`, `p_items`, `agressor`, `priems`, `priems_z`, `award` + `id`, `login`, `stats`, `obraz`, `level`, `sex`, `name`, `hobby`, `type`, `itemsUse`, `priemUse`, `align`, `clan`, `align_zvanie`, `bonus`, `clan_zvanie`, `time_reg`, `city_reg`, `upLevel`, `active`, `expB`, `p_items`, `agressor`, `priems`, `priems_z`, `award` FROM `test_bot` WHERE `id` = "' . $bot['id_bot'] . '" LIMIT 1' @@ -175,7 +175,6 @@ function botAddBattle($bot, $logins_bot) `cityreg`, `name`, `sex`, - `deviz`, `hobby`, `timereg`, `obraz`, @@ -189,7 +188,6 @@ function botAddBattle($bot, $logins_bot) "' . $add_bot['city_reg'] . '", "' . $add_bot['name'] . '", "' . $add_bot['sex'] . '", - "' . $add_bot['deviz'] . '", "' . $add_bot['hobby'] . '", "' . $add_bot['time_reg'] . '", "' . $add_bot['obraz'] . '", diff --git a/_incl_data/crons/undone/cron_tower.php b/_incl_data/crons/undone/cron_tower.php index 27a8dc01..419f017d 100644 --- a/_incl_data/crons/undone/cron_tower.php +++ b/_incl_data/crons/undone/cron_tower.php @@ -386,9 +386,9 @@ function add_arhiv($pl, $user) { $return = 0; mysql_query( - 'INSERT INTO `users` (`login`,`pass`,`level`,`inTurnir`,`sex`,`obraz`,`name`,`online`,`city`,`room`,`align`,`clan`,`cityreg`,`bithday`,`activ`) VALUES ( + 'INSERT INTO `users` (`login`,`pass`,`level`,`inTurnir`,`sex`,`obraz`,`name`,`online`,`city`,`room`,`align`,`clan`,`cityreg`,`bithday`) VALUES ( "' . $user['login'] . '","bstowerbot","' . $user['level'] . '","' . $pl['id'] . '","' . $user['sex'] . '","' . $user['obraz'] . '","' . $user['login'] . '","' . (time( - ) + 60 * 60 * 24) . '","' . $user['city'] . '","' . $user['room'] . '","' . $user['align'] . '","' . $user['clan'] . '","capitalcity","01.02.2003","0" + ) + 60 * 60 * 24) . '","' . $user['city'] . '","' . $user['room'] . '","' . $user['align'] . '","' . $user['clan'] . '","capitalcity","01.02.2003", )' ); $return = mysql_insert_id(); @@ -926,8 +926,8 @@ while ($pl = mysql_fetch_array($sp)) { $bus['align'] = 0; } mysql_query( - 'INSERT INTO `users` (`chatColor`,`align`,`inTurnir`,`molch1`,`molch2`,`activ`,`login`,`room`,`name`,`sex`,`level`,`bithday`) VALUES ( - "' . $bus['chatColor'] . '","' . $bus['align'] . '","' . $pl['id'] . '","' . $bus['molch1'] . '","' . $bus['molch2'] . '","0","' . $bus['login'] . '","362","' . $bus['name'] . '","' . $bus['sex'] . '","' . $pl['level'] . '","' . date( + 'INSERT INTO `users` (`chatColor`,`align`,`inTurnir`,`molch1`,`molch2`,`login`,`room`,`name`,`sex`,`level`,`bithday`) VALUES ( + "' . $bus['chatColor'] . '","' . $bus['align'] . '","' . $pl['id'] . '","' . $bus['molch1'] . '","' . $bus['molch2'] . '","' . $bus['login'] . '","362","' . $bus['name'] . '","' . $bus['sex'] . '","' . $pl['level'] . '","' . date( 'd.m.Y' ) . '")' ); diff --git a/active.php b/active.php deleted file mode 100644 index b159f3ec..00000000 --- a/active.php +++ /dev/null @@ -1,44 +0,0 @@ -e-mail для активации персонажа.
Откройте эту ссылку в браузере, в котором Вы авторизированны со своего персонажа.'); - }elseif($u['activ'] == 0) { - error('Персонаж "'.$u['login'].'" был активирован ранее.'); - }else{ - if($_GET['code'] == md5($u['login'].'&[new-combats.com]') || $_GET['code'] == 'ILIKECOMBATS') { - mysql_query('UPDATE `users` SET `activ` = "0" WHERE `id` = "'.$u['id'].'" LIMIT 1'); - error('Вы успешно активировали персонажа, успехов в нашем мире!'); - }else{ - error('Не верный код активации.'); - } - } -}else{ - error('
'. - 'Введите логин и пароль от персонажа:
'. - 'Логин:  
'. - 'Пароль: '. - '
'. - ''. - '
'); -} -?> \ No newline at end of file diff --git a/activnew.php b/activnew.php deleted file mode 100644 index a6b2edd4..00000000 --- a/activnew.php +++ /dev/null @@ -1,140 +0,0 @@ - 1000) { - $v = 1000; - } - $r = 0; - $r = (1-( pow(0.5, ($v/250) ) ))*100; - //$r = round($v/800*100); - //$r = round($r/80*100); - return $r; - } - - $i = 1; - while( $i <= 100 ) { - echo (1010-$i*10).' = '.round(zmgo(1010-$i*10),2).'%
'; - $i++; - } - -die(); - - -$refUrl = mysql_fetch_array(mysql_query('SELECT * FROM `referal_url` WHERE `uid` = "'.$u->info['id'].'" LIMIT 1')); -if(!isset($refUrl['id'])) { - mysql_query('INSERT INTO `referal_url` (`uid`,`url`) VALUES ( - "'.$u->info['id'].'","new-combats.com/r'.$u->info['id'].'" - )'); - $refUrl = mysql_fetch_array(mysql_query('SELECT * FROM `referal_url` WHERE `uid` = "'.$u->info['id'].'" LIMIT 1')); -} - -function ref_url($r) { - $r = str_replace('0','A',$r); - $r = str_replace('1','b',$r); - $r = str_replace('2','C',$r); - $r = str_replace('3','d',$r); - $r = str_replace('4','E',$r); - $r = str_replace('5','f',$r); - $r = str_replace('6','D',$r); - $r = str_replace('7','g',$r); - $r = str_replace('8','H',$r); - $r = str_replace('9','s',$r); - return $r; -} -//$refUrl['url'] = ref_url($refUrl['url']); - -$pf = 0; - -$html_ref = ''; -$i_ref = 0; - -$sp = mysql_query('SELECT `id`,`online`,`activ`,`cityreg` FROM `users` WHERE `host_reg` = "'.$u->info['id'].'"'); -while( $pl = mysql_fetch_array($sp) ) { - - $sp2 = mysql_fetch_array(mysql_query('SELECT COUNT(`id`) FROM `users` WHERE `host_reg` = "'.$pl['id'].'" LIMIT 1')); - $sp2 = 0+$sp2[0]; - $html_ref .= ($i_ref + 1).'. '.$u->microLogin($pl['id'],1).''; - if($sp2==0) { - $html_ref .= ' ['.$sp2.'/1] Персонаж должен пригласить одного реферала'; - }else{ - $html_ref .= ' [1/1] Завершено!'; - $pf += 10; - } - $pf += 23; - $html_ref .= '
'; - $i_ref++; -} - -if( $pf >= 99 ) { - $pf = 100; -} - -if($html_ref == '') { - $html_ref = '
По Вашей ссылке еще никто не зарегистрировался
'; -} - -if(isset($_GET['activated'])) { - if($pf == 100) { - $er = 'Вы будете оповещены по E-mail о начале бета тестинга, в настоящий момент нельзя активировать персонажа!'; - }else{ - $er = 'Задание выполнено на '.$pf.'/100%! Выполните задание полностью!'; - } -} - -?> - - - - -Бойцовский Клуб v2.1 - - - - -
-
Активация Персонажа
-
-
- - - - - - - - - - -
- - Для активации персонажа необходимо пригласить 3 игроков
- (Каждый реферал должен пригласить хотя бы одного игрока) -

- -
-
'.$er.'
'; - } - ?> -
-
- Пригласительная ссылка:
- Рефералы с одного компьютера или ip не учитываются, в первую очередь данное требование вводится для повышения общего онлайна, каждый игрок вносит вклад в развитие проекта. -

-
-
-
-
-
Задание выполнено на %
- -
-
-
- - -
-

Бойцовский Клуб v2.1 © , «www.new-combats.com»™    
- - - \ No newline at end of file diff --git a/adminion/testing.php b/adminion/testing.php index efa37206..39015d96 100644 --- a/adminion/testing.php +++ b/adminion/testing.php @@ -314,7 +314,7 @@ while ($i < 100) { $dv = ''; $da = ''; $dv .= ' - -

Анкета персонажа "info['login']?>" - - - - - -spamFiltr($_POST['name'])!='0' || $filter->spamFiltr($_POST['city'])!='0' || $filter->spamFiltr($_POST['city2'])!='0' || $filter->spamFiltr($_POST['homepage'])!='0' || $filter->spamFiltr($_POST['about'])!='0' || $filter->spamFiltr($_POST['hobby'])!='0') - { - mysql_query('UPDATE `users` SET `info_delete` = "'.(time()+2592000).'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1'); - } - $_POST['city'] = htmlspecialchars($_POST['city'],NULL,'cp1251'); - $_POST['city2'] = htmlspecialchars($_POST['city2'],NULL,'cp1251'); - $_POST['icq'] = htmlspecialchars($_POST['icq'],NULL,'cp1251'); - if(!isset($_POST['mat'])) { $_POST['mat'] == NULL; } - if(!isset($_POST['hide_icq'])){ $_POST['hide_icq'] = NULL; } - $_POST['skype'] = htmlspecialchars($_POST['skype'],NULL,'cp1251'); - if(!isset($_POST['hide_skype'])){ $_POST['hide_skype'] = NULL; }else{ $_POST['hide_skype'] = 1; } - $_POST['hide_icq'] = htmlspecialchars($_POST['hide_icq'],NULL,'cp1251'); - $_POST['homepage'] = htmlspecialchars($_POST['homepage'],NULL,'cp1251'); - $_POST['about'] = htmlspecialchars($_POST['about'],NULL,'cp1251'); - if( $u->info['admin'] == 0 ) { - $_POST['hobby'] = htmlspecialchars($_POST['hobby'],NULL,'cp1251'); - } - $_POST['ChatColor'] = htmlspecialchars($_POST['ChatColor'],NULL,'cp1251'); - - $_POST['hobby']= str_replace("\\n","
",$_POST['hobby']); - $_POST['hobby']= str_replace("\\r","",$_POST['hobby']); - $_POST['hobby']= str_replace("<BR>","
",$_POST['hobby']); - $simbolcount = strlen($_POST['hobby']); - if (isset($_POST['ChatColor']) && $u->info['admin']=='0' && !($_POST['ChatColor'] == "Black" || $_POST['ChatColor'] == "Blue" || $_POST['ChatColor'] == "Lilac" || $_POST['ChatColor'] == "Fuchsia" || $_POST['ChatColor'] == "Gray" || $_POST['ChatColor'] == "Green" || $_POST['ChatColor'] == "Maroon" || $_POST['ChatColor'] == "Navy" || $_POST['ChatColor'] == "Olive" || $_POST['ChatColor'] == "Purple" || $_POST['ChatColor'] == "Teal" || $_POST['ChatColor'] == "Orange" || $_POST['ChatColor'] == "Chocolate" || $_POST['ChatColor'] == "DarkKhaki" || $_POST['ChatColor'] == "SandyBrown")) { - echo "
Возможно использовать цвета указанные только в меню анкеты !
"; - $_POST['ChatColor'] = "Black"; - } - if(!$_POST['city']){$city=$_POST['city2'];} - elseif($_POST['city'] && $_POST['city2']){$city=$_POST['city2'];} - else{$city=$_POST['city'];} -} -if(isset($_POST['saveanketa'])) { -if( $u->info['level'] <= 1 ) { - $dt = explode('.',$_POST['0day']); - if(isset($dt[0],$dt[1],$dt[2])) - { - $erd = 0; - $dt[0] = round($dt[0]); - $dt[1] = round($dt[1]); - $dt[2] = round($dt[2]); - if($dt[0]<1 || $dt[0]>31) - { - $erd = 1; - } - if($dt[1]<1 || $dt[1]>12) - { - $erd = 2; - } - if($dt[2]<1920 || $dt[2]>2006) - { - $erd = 3; - } - if($erd==0) - { - $_POST['0day'] = $dt[0].'.'.$dt[1].'.'.$dt[2]; - $dateofbirth = "`bithday` = '".mysql_real_escape_string($_POST['0day'])."',"; - }else{ - //ошибка - - } - } - - $u->info['bithday'] = $_POST['0day']; -} -$st = $u->lookStats($u->info['stats']); -$maxsimbols = 1024+($st['os6']*200); - if($_POST['mat'] == 1 ) { - $_POST['mat'] = 1; - }else{ - $_POST['mat'] = 0; - } - if($simbolcount>$maxsimbols && $u->info['admin'] == 0) { - }else{ - $lastdes = $u->info['design']; - if($_POST['design'] == 1) { - $u->info['design'] = 1; - }else{ - $u->info['design'] = 0; - } - } - if($simbolcount>$maxsimbols && $u->info['admin'] == 0) { - echo '
Максимальный размер поля "Увлечения / хобби" - '.$maxsimbols.' символов.
'; - }elseif(mysql_query("UPDATE - `users` - SET - `design` = '".$u->info['design']."', - `name` = '".mysql_real_escape_string($_POST['name'])."', - `city_real` = '".mysql_real_escape_string($_POST['city2'])."', - `icq` = '".mysql_real_escape_string((int)$_POST['icq'])."', - `icq_hide` = '".mysql_real_escape_string($_POST['hide_icq'])."', - `skype` = '".mysql_real_escape_string($_POST['skype'])."', - `skype_hide` = '".mysql_real_escape_string($_POST['hide_skype'])."', - `homepage` = '".mysql_real_escape_string($_POST['homepage'])."', - ".$dateofbirth." - `deviz` = '".mysql_real_escape_string($_POST['about'])."', - `hobby` = '".mysql_real_escape_string($_POST['hobby'])."', - `chatColor` = '".mysql_real_escape_string($_POST['ChatColor'])."', - `mat` = '".mysql_real_escape_string((int)$_POST['mat'])."' - WHERE - `id` = '".mysql_real_escape_string($u->info['id'])."' LIMIT 1;")) -{echo '
Все прошло удачно...
'; - if( $u->info['design'] != $lastdes ) { - echo ''; - } -$u->info['name'] = $_POST['name']; -$u->info['city_real'] = $city; -$u->info['icq'] = $_POST['icq']; -$u->info['icq_hide'] = $_POST['hide_icq']; -$u->info['skype'] = $_POST['skype']; -$u->info['skype_hide'] = $_POST['hide_skype']; -$u->info['homepage'] = $_POST['homepage']; -$u->info['deviz'] = $_POST['about']; -$u->info['hobby'] = $_POST['hobby']; -$u->info['chatColor'] = $_POST['ChatColor']; -$u->info['mat'] = $_POST['mat']; -} -else{echo 'что-то не так...';} -} -?> - - - - - - -info['level']<=1) { ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Ваше реальное имя: - - - -
-
ID Персонажа: info['id']?> 
-
День рождения: -День: - -Месяц: - -Год: - - - -
Внимание! Дата рождения должна быть правильной, она используется в игровом процессе. Анкеты с неправильной датой будут удаляться без предупреждения.
-
Город: -    другой    -
ICQ: - info['icq_hide']==1){echo'checked';}?> /> - не отображать в инф. о персонаже.
Домашняя страница:
Девиз:
Увлечения / хобби (не более 60 слов)
-
Цвет сообщений в чате: -
Вариант дизайна: -

- -

-
-
- \ No newline at end of file diff --git a/modules_data/_changepass.php b/modules_data/_changepass.php index ab247594..0964c903 100644 --- a/modules_data/_changepass.php +++ b/modules_data/_changepass.php @@ -1,510 +1,225 @@ - - var elem = document.getElementById('se-pre-con'); - elem.parentNode.removeChild(elem); - - "; -if(!defined('GAME')) -{ - die(); -} -?> - - - - - -

Сменить пароль/email для персонажа "info['login']?>"

- 
-> 4] . $hex[$src[$i] % 16]); - } - return ($res); -} +info['pass2']){ -mysql_query("UPDATE `users` SET `pass2` = '' WHERE `id` = '".mysql_real_escape_string($u->info['id'])."' LIMIT 1;"); -echo "Второй пароль выключен.
"; -$u->info['pass2']=''; -}else{ -echo "Введен не верный второй пароль!
"; +use Core\Config; +use User\Email; +use User\Password; + +if (!defined('GAME')) { + die(); } +$password = new Password($u->info); +$email = new Email($u->info); +$status = null; - } - - - -if ($_POST['num_count']) { - if($_POST['num_count']==4){$pass2=rand(1000,9999);}elseif($_POST['num_count']==6){$pass2=rand(100000,999999);}else{$pass2=rand(10000000,99999999);} - - - if(mysql_query("UPDATE `users` SET `pass2` = '".md5(array2HStr(md5m($pass2)))."' WHERE `id` = '".mysql_real_escape_string($u->info['id'])."' LIMIT 1;")){ -echo "Второй пароль: $pass2.
Запомните или запишите, т.к. он не высылается на email и его нельзя как-либо узнать. Потеряв второй пароль, вы потеряете персонажа!
Этот пароль выслан на ваш email.

"; -$u->info['pass2']=md5(array2HStr(md5m($pass2))); - - - $headers = "Mime-Version: 1.1 \r\n"; - $headers .= "Date: ".date("r")." \r\n"; - $headers .= "Content-type: text/html; charset=cp1251 \r\n"; - $headers .= "From: Новый Бойцовский Клуб \r\n"; - - $headers = trim($headers); - $headers = stripslashes($headers); - if (!empty($_SERVER['HTTP_CLIENT_IP'])) //check ip from share internet - { - $ip=$_SERVER['HTTP_CLIENT_IP']; - } - elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) //to check ip is pass from proxy - { - $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; - } - else - { - $ip=$_SERVER['HTTP_X_REAL_IP']; - } - $aa=' - - Второй пароль от персонажа '.$u->info['login'].'. - - - Вами, с IP адреса - '.$ip.', был установлен второй пароль в игре Бойцовский Клуб.
- Если это были не Вы, свяжитесь с администрацией сайта.
-
- ------------------------------------------------------------------
- Ваш логин | '.$u->info['login'].'
- Второй пароль | '.$pass2.'
- ------------------------------------------------------------------
-
-
- Желаем Вам приятной игры.

- - Администрация - - '; - - mail($u->info['mail'],"Второй пароль от персонажа \"".$u->info['login']."\" [".$u->info['level']."]",$aa,$headers); - - - } - +if ($_POST['oldpsw2']) { // remove psw2 + if (password_verify((int)$_POST['oldpsw2'], $u->info['pass2'])) { + $u->info['pass2'] = $password->changeSecond(null)['pass2']; + $status = "Второй пароль выключен.
"; + } else { + $status = "Введен не верный второй пароль!
"; + } } -/*-------Смена пароля--------*/ - if ($_POST['oldpass'] && $_POST['npass'] && $_POST['npass2']) { - if($u->info['securetime']>$time) {echo"Должно пройти не менее трех суток между сменой подтверждения, пароля или email.
";} - elseif($u->info['emailconfirmation']!=-1123) { - if ($u->info['pass'] == md5($_POST['oldpass'])) { - if($_POST['npass'] == $_POST['npass2']) { - if(mysql_query("UPDATE `users` SET `pass` = '".md5($_POST['npass'])."' , `repass` = 0, `securetime` = '".(time()+259200)."' WHERE `id` = '".mysql_real_escape_string($u->info['id'])."' LIMIT 1;")) - {echo "Пароль удачно сменен.
"; $_COOKIE['pass'] = md5($_POST['npass']);} - } else{echo "Не совпадают новые пароли.
";} - }else{echo "Неверный старый пароль.
";} - } - #---------------------------------------------------------------- - elseif($u->info['emailconfirmation'] == 1) { - if($u->info['pass'] == md5($_POST['oldpass'])) { - if ($_POST['npass'] == $_POST['npass2']){ - $code=rand(1000000000,9999999999).".".rand(10000,99999); - if(mysql_query("INSERT INTO - `emailconfirmation` ( - `id`, - `code`, - `pa_em`, - `pass`) - VALUES ( - '".mysql_real_escape_string($u->info['id'])."', - '".mysql_real_escape_string($code)."', - '".md5($_POST['npass'])."', - 1)")) - { - /////////////////////////////////////////////////IP/////////////////////////////////////////////// - if (!empty($_SERVER['HTTP_CLIENT_IP'])) //check ip from share internet - { - $ip=$_SERVER['HTTP_CLIENT_IP']; - } - elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) //to check ip is pass from proxy - { - $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; - } - else - { - $ip=$_SERVER['HTTP_X_REAL_IP']; - } - //////////////////////////////////////////отсылаем на почту/////////////////////////////////////// - $headers = "Mime-Version: 1.1 \r\n"; - $headers .= "Date: ".date("r")." \r\n"; - $headers .= "Content-type: text/html; charset=utf-8 \r\n"; - $headers .= "From: Бойцовский Клуб \r\n"; - $headers = trim($headers); - $headers = stripslashes($headers); - - $aa=' - - Смена пароля - - - '.date("d.m.y H:i").'
- Кто-то с IP: '.$ip.' пытается сменить пароль к персонажу "'.$u->info['login'].'" ['.$u->info['level'].'].
- Т.к. в анкете у этого персонажа указан email: '.$u->info['mail'].', то вы и получили это письмо.
- login: '.$u->info['login'].'
- Прежний пароль (без кавычек): "'.$_POST['oldpass'].'"
- Новый пароль (без кавычек): "'.$_POST['npass'].'"
-
- Для того чтобы подтвердить смену пароля, вы должны зайти по ссылке:
- https://'.$u->info['city'].'.new-combats.com/confirm.php?id='.$u->info['id'].'&code='.$code.'
-
- --
- Бойцовский Клуб https://www.new-combats.com
- Администрация Бойцовского Клуба: support@new-combats.com
- P.S. Данное письмо сгенерировано автоматически, отвечать на него не нужно. - - - '; +if ($_POST['num_count']) { //add psw2 + $arr = $password->changeSecond((int)$_POST['num_count']); + $status = "Второй пароль: {$arr['pass2']}.
+ Запомните или запишите, т.к. он не высылается на email и его нельзя как-либо узнать. + Потеряв второй пароль, вы потеряете персонажа!
+ Этот пароль выслан на ваш email.
+

"; + $u->info['pass2'] = $arr['hash']; +} - mail($u->info['mail'],"Смена пароля у персонажа \"".$u->info['login']."\" [".$u->info['level']."]",$aa,$headers); - ////////////////////////////////////////////////////////////////////////////////////////////////// - echo"На ваш email выслано письмо с просьбой подтвердить операцию смены пароля
"; - } - }else{echo "Не совпадают новые пароли.";} - }else{ echo "Неверный старый пароль."; } +if ( + ( + $_POST['oldpass'] && $_POST['npass'] && $_POST['npass2'] || + $_POST['oldpsw'] && $_POST['oldemail'] && $_POST['newemail'] + ) && + $u->info['securetime'] > time() +) { + $status = "Должно пройти не менее трех суток между сменой подтверждения, пароля или email.
"; +} else { + if ($_POST['oldpass'] && $_POST['npass'] && $_POST['npass2']) { /*-------Смена пароля--------*/ + if (!password_verify($_POST['oldpass'], $u->info['pass'])) { + $status = "Неверный старый пароль.
"; + } elseif ($_POST['npass'] !== $_POST['npass2']) { + $status = "Не совпадают новые пароли.
"; + } else { + $u->info['pass'] = $password->changeFirst($_POST['oldpass'], $_POST['npass']); + $status = "Пароль удачно сменен.
"; + } + } - } - #------------------------------------- - } - /*-----Смена e-mail------*/ - if ($_POST['oldpsw'] && $_POST['oldemail'] && $_POST['newemail']) { - if($u->info['securetime']>$time) {echo"Должно пройти не менее трех суток между сменой подтверждения, пароля или email.
";} - elseif($u->info['pass'] != md5($_POST['oldpsw'])) {echo "Неверный пароль.
";} - elseif($u->info['mail'] != $_POST['oldemail']) {echo "Неверный старый E-Mail.
";} - elseif($u->info['emailconfirmation']==0) { - if($u->info['pass'] == $_POST['oldpsw'] || $u->info['mail'] == $_POST['oldemail']) { - if(mysql_query("UPDATE `users` SET `mail` = '".mysql_real_escape_string($_POST['newemail'])."', `securetime` = '".(time()+259200)."' WHERE `id` = '".mysql_real_escape_string($u->info['id'])."' LIMIT 1;")) - { - echo "E-mail удачно изменен.
"; - } - } - else{echo "E-Mail не изменен.
";} - } - #---------------------------------------------------------------- - elseif($u->info['emailconfirmation'] == 1) { - if($u->info['pass'] == $_POST['oldpsw'] || $u->info['mail'] == $_POST['oldemail']) { - $code=rand(1000000000,9999999999).".".rand(10000,99999); - if(mysql_query("INSERT INTO - `emailconfirmation` ( - `id`, - `code`, - `pa_em`, - `email`) - VALUES ( - '".mysql_real_escape_string($u->info['id'])."', - '".mysql_real_escape_string($code)."', - '".mysql_real_escape_string($_POST['newemail'])."', - 1)")) - { - /////////////////////////////////////////////////IP/////////////////////////////////////////////// - if (!empty($_SERVER['HTTP_CLIENT_IP'])) //check ip from share internet - { - $ip=$_SERVER['HTTP_CLIENT_IP']; - } - elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) //to check ip is pass from proxy - { - $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; - } - else - { - $ip=$_SERVER['HTTP_X_REAL_IP']; - } - //////////////////////////////////////////отсылаем на почту/////////////////////////////////////// - $headers = "Mime-Version: 1.1 \r\n"; - $headers .= "Date: ".date("r")." \r\n"; - $headers .= "Content-type: text/html; charset=utf-8 \r\n"; - $headers .= "From: Бойцовский Клуб \r\n"; - - $headers = trim($headers); - $headers = stripslashes($headers); - - $aa=' - - Смена email - - - '.date("d.m.y H:i").'
- Кто-то с IP: '.$ip.' пытается сменить email к персонажу "'.$u->info['login'].'" ['.$u->info['level'].'].
- Т.к. в анкете у этого персонажа указан email: '.$u->info['mail'].', то вы и получили это письмо.
- login: '.$u->info['login'].'
- Прежний email (без кавычек): "'.$_POST['oldemail'].'"
- Новый email (без кавычек): "'.$_POST['newemail'].'"
-
- Для того чтобы подтвердить смену email, вы должны зайти по ссылке:
- https://new-combats.com/confirm.php?id='.$u->info['id'].'&code='.$code.'
-
- --
- Бойцовский Клуб https://www.new-combats.com
- Администрация Бойцовского Клуба: support@new-combats.com
- P.S. Данное письмо сгенерировано автоматически, отвечать на него не нужно. - - - '; - - mail($u->info['mail'],"Смена email у персонажа \"".$u->info['login']."\" [".$u->info['level']."]",$aa,$headers); - ////////////////////////////////////////////////////////////////////////////////////////////////// - echo"На ваш email выслано письмо с просьбой подтвердить операцию смены email
"; - } - }else{ echo "Неверный старый пароль или email.
"; } - - } - #------------------------------------- - } - /*----Вопрос/Ответ------*/ -/* if ($_POST['oldpsw1']) { - $ops = mysql_fetch_array(mysql_query("SELECT `pass`, `securetime`, `emailconfirmation` FROM `users` WHERE `id` = '".mysql_real_escape_string($u->info['id'])."'")); - if($u->info['securetime']>$time) {echo"Должно пройти не менее трех суток между сменой подтверждения, пароля или email.
";} - elseif($u->info['emailconfirmation']==0) { - if ($u->info['pass'] == md5($_POST['oldpsw1'])) { - if(mysql_query("UPDATE `users` SET `a1` = '".mysql_real_escape_string($_POST['secretquestion'])."', `q1` = '".mysql_real_escape_string($_POST['secretanswer'])."', `securetime` = '".(time()+259200)."' WHERE `id` = '".mysql_real_escape_string($u->info['id'])."' LIMIT 1;")) - { - $u->info['secretquestion'] = $_POST['secretquestion']; - echo "Новый секретный вопрос / ответ записан.
"; - } - } - else{echo "Неверный старый пароль.
";} - } - #---------------------------------------------------------------- - elseif($u->info['emailconfirmation'] == 1) { - if($u->info['pass'] == md5($_POST['oldpsw1'])) { - $code=rand(1000000000,9999999999).".".rand(10000,99999); - if(mysql_query("INSERT INTO - `emailconfirmation` ( - `id`, - `code`, - `question`, - `answer`, - `qu_an`) - VALUES ( - '".mysql_real_escape_string($u->info['id'])."', - '".mysql_real_escape_string($code)."', - '".mysql_real_escape_string($_POST['secretquestion'])."', - '".mysql_real_escape_string($_POST['secretanswer'])."', - 1)")) - { - /////////////////////////////////////////////////IP/////////////////////////////////////////////// - if (!empty($_SERVER['HTTP_CLIENT_IP'])) //check ip from share internet - { - $ip=$_SERVER['HTTP_CLIENT_IP']; - } - elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) //to check ip is pass from proxy - { - $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; - } - else - { - $ip=$_SERVER['HTTP_X_REAL_IP']; - } - //////////////////////////////////////////отсылаем на почту/////////////////////////////////////// - $headers = "Mime-Version: 1.1 \r\n"; - $headers .= "Date: ".date("r")." \r\n"; - $headers .= "Content-type: text/html; charset=utf-8 \r\n"; - $headers .= "From: Бойцовский Клуб \r\n"; - - $headers = trim($headers); - $headers = stripslashes($headers); - - $aa=' - - Смена секретного вопроса и ответа - - - '.date("d.m.y H:i").'
- Кто-то с IP: '.$ip.' пытается сменить секретный вопрос / ответ к персонажу "'.$u->info['login'].'" ['.$u->info['level'].']. - Т.к. в анкете у этого персонажа указан email: '.$u->info['mail'].', то вы и получили это письмо.
- login: '.$u->info['login'].'
- Прежний секретный вопрос: '.$u->info['secretquestion'].'
- Прежний секретный ответ: '.$u->info['secretanswer'].'
- Новый секретный вопрос: '.$_POST['secretquestion'].'
- Новый секретный ответ: '.$_POST['secretanswer'].'
- Для того чтобы подтвердить смену, вы должны зайти по ссылке:
- https://'.$u->info['city'].'.new-combats.com/confirm.php?id='.$u->info['id'].'&code='.$code.'
-
- --
- Бойцовский Клуб https://www.new-combats.com
- Администрация Бойцовского Клуба: support@new-combats.com
- P.S. Данное письмо сгенерировано автоматически, отвечать на него не нужно. - - - '; - - mail($u->info['mail'],"Смена секретного вопроса и ответа у персонажа \"".$u->info['login']."\" [".$u->info['level']."]",$aa,$headers); - ////////////////////////////////////////////////////////////////////////////////////////////////// - echo"На ваш email выслано письмо с просьбой подтвердить операцию смены секретного вопроса и ответа
"; - } - }else{ echo "Неверный старый пароль.
"; } - - } - #------------------------------------- - $u->info['a1'] = $_POST['secretquestion']; -/* } - /*----Подтверждение на e-mail----*/ - if ($_POST['email'] && $_POST['set_on_emailconfirmation']) { - if($u->info['securetime']>$time) {echo"Должно пройти не менее трех суток между сменой подтверждения, пароля или email.
";} - elseif ($u->info['mail'] == $_POST['email']) { - $code=rand(1000000000,9999999999).".".rand(10000,99999); - if(mysql_query("INSERT INTO - `emailconfirmation` ( - `id`, - `code`, - `active`) - VALUES ( - '".mysql_real_escape_string($u->info['id'])."', - '".mysql_real_escape_string($code)."', - 1)")) - { - /////////////////////////////////////////////////IP/////////////////////////////////////////////// - if (!empty($_SERVER['HTTP_CLIENT_IP'])) //check ip from share internet - { - $ip=$_SERVER['HTTP_CLIENT_IP']; - } - elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) //to check ip is pass from proxy - { - $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; - } - else - { - $ip=$_SERVER['HTTP_X_REAL_IP']; - } - //////////////////////////////////////////отсылаем на почту/////////////////////////////////////// - $headers = "Mime-Version: 1.1 \r\n"; - $headers .= "Date: ".date("r")." \r\n"; - $headers .= "Content-type: text/html; charset=utf-8 \r\n"; - $headers .= "From: Бойцовский Клуб \r\n"; - - $headers = trim($headers); - $headers = stripslashes($headers); - - $aa=' - - Востановление пароля - - - '.date("d.m.y H:i").'
- Запрос поступил с IP: '.$ip.'
- Т.к. в анкете у этого персонажа указан email: '.$u->info['mail'].', то вы и получили это письмо.
- Для того чтобы включить функцию подтверждения смены пароля и email через почту, вы должны зайти по ссылке:
- https://'.$u->info['city'].'.new-combats.com/confirm.php?id='.$u->info['id'].'&code='.$code.'
-
- --
- Бойцовский Клуб https://www.new-combats.com
- Администрация Бойцовского Клуба: support@new-combats.com
- P.S. Данное письмо сгенерировано автоматически, отвечать на него не нужно. - - - '; - - mail($u->info['mail'],"Смена подтверждения у персонажа \"".$u->info['login']."\" [".$u->info['level']."]",$aa,$headers); - ////////////////////////////////////////////////////////////////////////////////////////////////// - echo "На ваш email выслано письмо с просьбой подтвердить операцию.
"; - } - } - else{echo "email указан неверно.
";} - } - if ($_POST['email'] && $_POST['set_off_emailconfirmation']) { //Отключение подтверждения на email - if($u->info['securetime']>$time) {echo"Должно пройти не менее трех суток между сменой подтверждения, пароля или email.
";} - /*НЕДОДЕЛАНО */ - } -?> -Чем выше уровень вашего персонажа, тем больше к нему внимания со стороны злоумышленников. Чтобы ваш персонаж небыл подвержен взлому, необходимо соблюдать элементарные меры предосторожности. А именно:
-1. Никогда, ни под каким предлогом, никому не говорите свой пароль. Ни паладинам, ни администрации не нужно знать ваш пароль.
-2. Вводите логин и пароль только на титульной странице https://new-combats.com Ни на каких других сайтах, которые будут как две капли похожие на наш, и куда вас зазывают обещая на халяву предметы или еврокредиты, не вводите свой пароль! Иначе Ваш персонаж с вероятностью 95% будет взломан.
-Настоятельно рекомендуем прочесть заметку Как обезопасить своего персонажа?.
-
Если вы играете из интернет кафе или компьютерного клуба, где шанс быть взломанным очень высокий, рекомендуем включить второй уровень защиты (см. ниже)

-
-Смена пароля - - - - - -
Старый пароль:
Новый пароль:
Новый пароль (еще раз):
-
- -
-
Смена email - - - - - - -
Ваш игровой пароль:
Прежний email:
Новый email:
-
-
- - -
-
Второй уровень защиты -Настоятельно рекомендуем включить второй уровень защиты.
-На компьютере может быть установлен клавиатурный шпион, который записывает все нажатия клавиш, таким образом, могут узнать ваш пароль.
-Возможно, в сети компьютеров установлен "сетевой снифер", перехватывающий все интернет пакеты, который легко покажет все пароли. Чтобы обезопасить себя, вы можете установить своему персонажу второй пароль, который можно вводить при помощи мышки (клавиатурным шпионом не перехватить) и который передается на игровой сервер в зашифрованном виде, не поддающимся расшифровке ("сетевой снифер" не сможет перехватить его).
-Ваш браузер должен нормально отображать Flash 6! (если наши часики в нижней строке нормально тикают, значит у вас все в порядке :)
-Будьте внимательны! Второй пароль отправляется на email один раз,при установке второго уровня защиты!
- -info['pass2'])){echo"
Второй пароль установлен.

Введите второй пароль ";}else{ -?> - - -Длина пароля:
- 4 знака
- 6 знаков
- 8 знаков
-
-info['pass'])) { + $status = "Неверный пароль.
"; + } elseif ($u->info['mail'] !== $_POST['oldemail']) { + $status = "Неверный старый E-Mail.
"; + } else { + $u->info['mail'] = $email->change($_POST['oldemail'], $_POST['newemail']); + $status = "Email удачно сменен.
"; + } + } } ?> -
-
\ No newline at end of file +
+ +
+

Настройки безопасности

+
+ +
+
+
+ Чем выше уровень вашего персонажа, тем больше к нему внимания со стороны злоумышленников. + Чтобы ваш персонаж небыл подвержен взлому, необходимо соблюдать элементарные меры предосторожности. +
А именно: +
    +
  1. + Никогда, ни под каким предлогом, никому не говорите свой пароль. + Ни паладинам, ни администрации не нужно знать ваш пароль. +
  2. +
  3. + Вводите логин и пароль только на титульной странице + + Ни на каких других сайтах, которые будут как две капли похожие на наш, + и куда вас зазывают обещая на халяву предметы или еврокредиты, не вводите свой пароль! + Иначе Ваш персонаж с вероятностью 95% будет взломан. +
  4. +
+ Настоятельно рекомендуем прочесть заметку + Как обезопасить своего персонажа?. +

+ Если вы играете из интернет кафе или компьютерного клуба, где шанс быть взломанным очень высокий, + рекомендуем включить второй уровень защиты (см. ниже) +

+
+ Смена пароля + + + + + + + + + + + + + + + + + +
+ Старый пароль: + + +
+ Новый пароль: + + +
+ Новый пароль (еще раз): + + +
+ +
+
+ +
+ Смена email + + + + + + + + + + + + + + + + +
+ Ваш игровой пароль: + + +
+ Прежний email: + + +
+ Новый email: + + +
+ +
+
+
+ Второй уровень защиты + Настоятельно рекомендуем включить второй уровень защиты.
+ На компьютере может быть установлен клавиатурный шпион, который записывает все нажатия клавиш, таким + образом, + могут узнать ваш пароль.
+ Возможно, в сети компьютеров установлен "сетевой снифер", перехватывающий все интернет пакеты, который легко + покажет все пароли. Чтобы обезопасить себя, вы можете установить своему персонажу второй пароль, который + можно + вводить при помощи мышки (клавиатурным шпионом не перехватить) и который передается на игровой сервер в + зашифрованном виде, не поддающимся расшифровке ("сетевой снифер" не сможет перехватить его).
+ Будьте внимательны! Второй пароль отправляется на email один раз,при установке второго уровня защиты!
+ + info['pass2'])) { + echo "
Второй пароль установлен.

+ Введите второй пароль + "; + } else { + ?> + Длина пароля:
+ + + + +
+ +
+
+
+ + diff --git a/modules_data/_locations.php b/modules_data/_locations.php index 0ba77fdb..943bffb4 100644 --- a/modules_data/_locations.php +++ b/modules_data/_locations.php @@ -190,10 +190,7 @@ if(isset($_GET['loc'])) }elseif( ($kos1['good'] == 0 && $kos2['good'] == 0) && ((!isset($zadej) || $zadej == 0) && $u->aves['now']>=$u->aves['max'] && $u->room['name']!='Общежитие' && $u->room['name']!='Общ. Этаж 1' && $u->room['name']!='Общ. Этаж 2' && $u->room['name']!='Общ. Этаж 3')) { $re = 'Вы не можете перемещаться, рюкзак переполнен ...'; - }elseif($u->room['name']=='Комната для новичков' && $u->info['activ'] != '' && $u->info['activ'] != '0') - { - echo ''; - }elseif(isset($go['id'])) + elseif(isset($go['id'])) { $rmgo = array(); $rg = explode(',',$u->room['roomGo']); diff --git a/modules_data/_ref2.php b/modules_data/_ref2.php index a929a69c..78b567cb 100644 --- a/modules_data/_ref2.php +++ b/modules_data/_ref2.php @@ -27,14 +27,11 @@ if(isset($_POST['r_bank']) || isset($_POST['r_type'])) } } $rfs['see'] = ''; -$sp = mysql_query('SELECT `s`.`active`,`u`.`activ`,`u`.`online`,`u`.`id`,`u`.`level`,`u`.`login` FROM `users` AS `u` LEFT JOIN `stats` AS `s` ON `u`.`id` = `s`.`id` WHERE `u`.`host_reg` = "'.$u->info['id'].'" AND `u`.`mail` != "No E-Mail" ORDER BY `u`.`level` DESC LIMIT '.$rfs['count']); +$sp = mysql_query('SELECT `s`.`active`,`u`.`online`,`u`.`id`,`u`.`level`,`u`.`login` FROM `users` AS `u` LEFT JOIN `stats` AS `s` ON `u`.`id` = `s`.`id` WHERE `u`.`host_reg` = "'.$u->info['id'].'" AND `u`.`mail` != "No E-Mail" ORDER BY `u`.`level` DESC LIMIT '.$rfs['count']); while($pl = mysql_fetch_array($sp)) { $rfs['c2'] = '    '.$u->microLogin($pl['id'],1).''; - if($pl['activ'] != 0) - { - $rfs['c2'] = ''.$rfs['c2'].'   не активирован'; - }elseif($pl['level']>7) + if($pl['level']>7) { $rfs['c2'] = ''.$rfs['c2'].''; } diff --git a/modules_data/location/katok.php b/modules_data/location/katok.php index b93dfd51..ecea8f3c 100644 --- a/modules_data/location/katok.php +++ b/modules_data/location/katok.php @@ -93,8 +93,8 @@ if($tcount >= 6 ) { $obraz = 'ih60.gif'; } // - mysql_query('INSERT INTO `users` (`obraz`,`chatColor`,`align`,`inTurnir`,`molch1`,`molch2`,`activ`,`login`,`room`,`name`,`sex`,`level`,`bithday`) VALUES ( - "'.$obraz.'","'.$bus['chatColor'].'","'.$bus['align'].'","'.$pl['id'].'","'.$bus['molch1'].'","'.$bus['molch2'].'","0","'.$bus['login'].'","411","'.$bus['name'].'","'.$bus['sex'].'","4","'.date('d.m.Y').'")'); + mysql_query('INSERT INTO `users` (`obraz`,`chatColor`,`align`,`inTurnir`,`molch1`,`molch2`,`login`,`room`,`name`,`sex`,`level`,`bithday`) VALUES ( + "'.$obraz.'","'.$bus['chatColor'].'","'.$bus['align'].'","'.$pl['id'].'","'.$bus['molch1'].'","'.$bus['molch2'].'","'.$bus['login'].'","411","'.$bus['name'].'","'.$bus['sex'].'","4","'.date('d.m.Y').'")'); // $inbot = mysql_insert_id(); //айди бота if( $inbot > 0 ) { diff --git a/modules_data/location/ruine_enter.php b/modules_data/location/ruine_enter.php index 4bf305e4..73315f44 100644 --- a/modules_data/location/ruine_enter.php +++ b/modules_data/location/ruine_enter.php @@ -136,8 +136,8 @@ if($u->room['file']=='ruine_enter') { //Создаем бота $text_user[$team] .= $u->microLogin($bus['id'],1).', '; // - mysql_query('INSERT INTO `users` (`obraz`,`chatColor`,`align`,`inTurnir`,`molch1`,`molch2`,`activ`,`login`,`room`,`name`,`sex`,`level`,`bithday`) VALUES ( - "'.$bus['obraz'].'","'.$bus['chatColor'].'","'.$bus['align'].'","'.$rid.'","'.$bus['molch1'].'","'.$bus['molch2'].'","0","'.$bus['login'].'","413","'.$bus['name'].'","'.$bus['sex'].'","10","'.date('d.m.Y').'")'); + mysql_query('INSERT INTO `users` (`obraz`,`chatColor`,`align`,`inTurnir`,`molch1`,`molch2`,`login`,`room`,`name`,`sex`,`level`,`bithday`) VALUES ( + "'.$bus['obraz'].'","'.$bus['chatColor'].'","'.$bus['align'].'","'.$rid.'","'.$bus['molch1'].'","'.$bus['molch2'].'","'.$bus['login'].'","413","'.$bus['name'].'","'.$bus['sex'].'","10","'.date('d.m.Y').'")'); // $inbot = mysql_insert_id(); //айди бота if( $inbot > 0 ) { diff --git a/news_script/index.php b/news_script/index.php index e1961ab8..6bda150d 100644 --- a/news_script/index.php +++ b/news_script/index.php @@ -13,9 +13,7 @@ Database::init(); $u = mysql_fetch_array( mysql_query( 'SELECT `id`,`login`,`banned`,`admin`,`clan`,`align`,`level`,`molch1`,`molch2` FROM `users` WHERE `login` = "' . mysql_real_escape_string( - $_COOKIE['login'] - ) . '" AND `pass` = "' . mysql_real_escape_string($_COOKIE['pass']) . '"' - ) + $_COOKIE['login']) . '"') ); if ($url[2] > 0) { @@ -808,4 +806,4 @@ if ($u['admin'] > 0) { ?> - \ No newline at end of file + diff --git a/online.php b/online.php index 1d0c06b0..0c3453e7 100644 --- a/online.php +++ b/online.php @@ -526,11 +526,6 @@ if (isset($_POST['msg']) && str_replace(' ', '', $_POST['msg']) != '') { $i++; } - $activ = 0; - if ($u->info['activ'] > 0) { - $activ = 1; - } - $msg['nosee'] = 0; if ($u->info['level'] < 1) { @@ -543,9 +538,8 @@ if (isset($_POST['msg']) && str_replace(' ', '', $_POST['msg']) != '') { } mysql_query( - 'INSERT INTO `chat` (`nosee`,`active`,`invis`,`da`,`delete`,`molch`,`new`,`login`,`to`,`city`,`room`,`time`,`type`,`spam`,`text`,`toChat`,`color`,`typeTime`,`sound`,`global`) VALUES ( + 'INSERT INTO `chat` (`nosee`,`invis`,`da`,`delete`,`molch`,`new`,`login`,`to`,`city`,`room`,`time`,`type`,`spam`,`text`,`toChat`,`color`,`typeTime`,`sound`,`global`) VALUES ( "' . $msg['nosee'] . '", - "' . $activ . '", "' . $u->info['invis'] . '", "' . $msg['da'] . '", "' . $msg['delete'] . '", diff --git a/page/lib.php b/page/lib.php index 1f4872c9..0acb2862 100644 --- a/page/lib.php +++ b/page/lib.php @@ -49,9 +49,7 @@ if( !isset($url[2]) || $url[2] == '' ) { $html = ''; - if( $u->info['activ'] == 1 ) { - $html = 'Чтобы начать публиковать изображения - Активируйте Вашего персонажа.'; - }elseif( $u->info['molch1'] > time() ) { + if( $u->info['molch1'] > time() ) { $html = 'Персонажи с молчанкой не могут публиковать изображения.'; }elseif( $u->info['banned'] > 0 ) { $html = 'Заблокированные персонажи не могут публиковать изображения.'; @@ -188,9 +186,7 @@ if( !isset($url[2]) || $url[2] == '' ) { $_POST['lib_title'] = htmlspecialchars($_POST['lib_title'],NULL,'cp1251'); $mbpage_last = mysql_fetch_array(mysql_query('SELECT `time` FROM `library_content` WHERE `uid` = "'.$u->info['id'].'" ORDER BY `id` DESC LIMIT 1')); - if( $u->info['activ'] == 1 ) { - echo 'Чтобы начать публиковать статьи - Активируйте Вашего персонажа.'; - }elseif( $u->info['molch1'] > time() ) { + if( $u->info['molch1'] > time() ) { echo 'Персонажи с молчанкой не могут публиковать статьи.'; }elseif( $u->info['banned'] > 0 ) { echo 'Заблокированные персонажи не могут публиковать статьи.'; diff --git a/repass.php b/repass.php index a168b8bc..7c064351 100644 --- a/repass.php +++ b/repass.php @@ -64,7 +64,7 @@ if (isset($_POST['relogin'])) { if ($mail === 1) { Db::sql( 'update users set securetime = unix_timestamp(), allLock = unix_timestamp(), pass = ? where id = ?', - [md5($newPassword), $usr['id']] + [password_hash($newPassword, PASSWORD_DEFAULT), $usr['id']] ); Db::sql( 'insert into repass (uid, time, ip, type) values (?,unix_timestamp(),?,1)', @@ -88,7 +88,7 @@ if (isset($_POST['relogin'])) { - Восстановление пароля от персонажа Бойцовский Клуб + <?= Config::get('name') ?>: Восстановление пароля от персонажа @@ -97,11 +97,20 @@ if (isset($_POST['relogin'])) { input[type=text], input[type=date] { padding: 3px; } + div.content, div.after { + display: flex; + justify-content: center; + } + div.content { + align-items: center; + flex-direction: column; + height: 50%; + }
-
+

Восстановление пароля

' . $error . '' : '' ?> @@ -120,11 +129,11 @@ if (isset($_POST['relogin'])) {
-
- Вернутся на главную страницу + -
- «Старый Бойцовский Клуб»     2018- © Браузерная онлайн игра +
+
diff --git a/ruin_characteristics.php b/ruin_characteristics.php index 6d2c64f8..966f2748 100644 --- a/ruin_characteristics.php +++ b/ruin_characteristics.php @@ -20,10 +20,6 @@ if ($u->info['bithday'] == '01.01.1800' && $u->info['inTurnirnew'] == 0) { unset($_GET, $_POST); } -if ($u->info['activ'] > 0) { - die('Вам необходимо активировать персонажа.
Авторизируйтесь с главной страницы.'); -} - if (isset($_POST['set_name'])) { $_POST['set_name'] = htmlspecialchars($_POST['set_name']); $set_x = mysql_fetch_array( diff --git a/settings.php b/settings.php index f7bf275c..b74ec9f2 100644 --- a/settings.php +++ b/settings.php @@ -1,30 +1,63 @@ info['admin']) { + $allowedTextColors[] = 'Red'; +} + +$simbolcount = strlen($u->info['hobby']); +$maxsimbols = 2000; + +if (isset($_POST['name'], $_POST['hobby'], $_POST['ChatColor'], $_POST['saveanketa'])) { + if (!in_array($_POST['ChatColor'], $allowedTextColors)) { + $_POST['ChatColor'] = "Black"; + } + if (!empty($filter->spamFiltr($_POST['name'])) || !empty($filter->spamFiltr($_POST['hobby']))) { // WTF ?! + Db::sql('update users set info_delete = unix_timestamp() + 86400 where id = ?', [$u->info['id']]); + } + + if ($simbolcount > $maxsimbols && $u->info['admin'] == 0) { + $error = '
+ Максимальный размер поля "Увлечения / хобби" - ' . $maxsimbols . ' символов.
'; + } else { + Db::sql( + 'update users set name = ?, chatColor = ?, hobby = ? where id = ?', + [ + $_POST['name'], $_POST['chatColor'], $_POST['hobby'], + ] + ); + $u->info['name'] = $_POST['name']; + $u->info['hobby'] = $_POST['hobby']; + $u->info['chatColor'] = $_POST['ChatColor']; + } +} + ?> - - + + Бойцовский Клуб - Настройки - - - - - + + - - - -spamFiltr($_POST['name']) != '0' || - $filter->spamFiltr($_POST['city']) != '0' || - $filter->spamFiltr($_POST['city2']) != '0' || - $filter->spamFiltr($_POST['homepage']) != '0' || - $filter->spamFiltr($_POST['about']) != '0' || - $filter->spamFiltr($_POST['hobby']) != '0' - ) && - $u->info['level'] < 9 - ) { - mysql_query( - 'UPDATE `users` SET `info_delete` = "' . (time( - ) + 86400) . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1' - ); - } - $_POST['city'] = htmlspecialchars($_POST['city'], null, 'cp1251'); - $_POST['city2'] = htmlspecialchars($_POST['city2'], null, 'cp1251'); - $_POST['icq'] = htmlspecialchars($_POST['icq'], null, 'cp1251'); - if (!isset($_POST['mat'])) { - $_POST['mat'] = null; - } - if (!isset($_POST['hide_icq'])) { - $_POST['hide_icq'] = null; - } - $_POST['skype'] = htmlspecialchars($_POST['skype'], null, 'cp1251'); - if (!isset($_POST['hide_skype'])) { - $_POST['hide_skype'] = null; - } else { - $_POST['hide_skype'] = 1; - } - $_POST['hide_icq'] = htmlspecialchars($_POST['hide_icq'], null, 'cp1251'); - $_POST['homepage'] = htmlspecialchars($_POST['homepage'], null, 'cp1251'); - $_POST['about'] = htmlspecialchars($_POST['about'], null, 'cp1251'); - if ($u->info['admin'] == 0) { - $_POST['hobby'] = htmlspecialchars($_POST['hobby'], null, 'cp1251'); - } - $_POST['ChatColor'] = htmlspecialchars($_POST['ChatColor'], null, 'cp1251'); - - $_POST['hobby'] = str_replace("\\n", "
", $_POST['hobby']); - $_POST['hobby'] = str_replace("\\r", "", $_POST['hobby']); - $_POST['hobby'] = str_replace("<BR>", "
", $_POST['hobby']); - $simbolcount = strlen($_POST['hobby']); - if (isset($_POST['ChatColor']) && $u->info['admin'] == '0' && !($_POST['ChatColor'] == "Black" || $_POST['ChatColor'] == "Blue" || $_POST['ChatColor'] == "Lilac" || $_POST['ChatColor'] == "Fuchsia" || $_POST['ChatColor'] == "Gray" || $_POST['ChatColor'] == "Green" || $_POST['ChatColor'] == "Maroon" || $_POST['ChatColor'] == "Navy" || $_POST['ChatColor'] == "Olive" || $_POST['ChatColor'] == "Purple" || $_POST['ChatColor'] == "Teal" || $_POST['ChatColor'] == "Orange" || $_POST['ChatColor'] == "Chocolate" || $_POST['ChatColor'] == "DarkKhaki" || $_POST['ChatColor'] == "SandyBrown")) { - echo "
Возможно использовать цвета указанные только в меню анкеты !
"; - $_POST['ChatColor'] = "Black"; - } - if (!$_POST['city']) { - $city = $_POST['city2']; - } elseif ($_POST['city'] && $_POST['city2']) { - $city = $_POST['city2']; - } else { - $city = $_POST['city']; - } -} -if (isset($_POST['saveanketa'])) { - if ($u->info['level'] <= 1) { - $dt = explode('.', $_POST['0day']); - if (isset($dt[0], $dt[1], $dt[2])) { - $erd = 0; - $dt[0] = round($dt[0]); - $dt[1] = round($dt[1]); - $dt[2] = round($dt[2]); - if ($dt[0] < 1 || $dt[0] > 31) { - $erd = 1; - } - if ($dt[1] < 1 || $dt[1] > 12) { - $erd = 2; - } - if ($dt[2] < 1920 || $dt[2] > 2006) { - $erd = 3; - } - if ($erd == 0) { - $_POST['0day'] = $dt[0] . '.' . $dt[1] . '.' . $dt[2]; - $dateofbirth = "`bithday` = '" . mysql_real_escape_string($_POST['0day']) . "',"; - } - } - - $u->info['bithday'] = $_POST['0day']; - } - $st = $u->lookStats($u->info['stats']); - $maxsimbols = 2000 + ($st['os6'] * 200); - if ($_POST['mat'] == 1) { - $_POST['mat'] = 1; - } else { - $_POST['mat'] = 0; - } - if ($simbolcount <= $maxsimbols || $u->info['admin'] != 0) { - $lastdes = $u->info['design']; - if ($_POST['design'] == 1) { - $u->info['design'] = 1; - } else { - $u->info['design'] = 0; - } - } - if ($simbolcount > $maxsimbols && $u->info['admin'] == 0) { - echo '
Максимальный размер поля "Увлечения / хобби" - ' . $maxsimbols . ' символов.
'; - } elseif (mysql_query( - "UPDATE - `users` - SET - `design` = '" . $u->info['design'] . "', - `name` = '" . mysql_real_escape_string($_POST['name']) . "', - `city_real` = '" . mysql_real_escape_string($_POST['city2']) . "', - `icq` = '" . mysql_real_escape_string((int)$_POST['icq']) . "', - `icq_hide` = '" . mysql_real_escape_string($_POST['hide_icq']) . "', - `skype` = '" . mysql_real_escape_string($_POST['skype']) . "', - `skype_hide` = '" . mysql_real_escape_string($_POST['hide_skype']) . "', - `homepage` = '" . mysql_real_escape_string($_POST['homepage']) . "', - " . $dateofbirth . " - `deviz` = '" . mysql_real_escape_string($_POST['about']) . "', - `hobby` = '" . mysql_real_escape_string($_POST['hobby']) . "', - `chatColor` = '" . mysql_real_escape_string($_POST['ChatColor']) . "', - `mat` = '" . mysql_real_escape_string((int)$_POST['mat']) . "' - WHERE - `id` = '" . mysql_real_escape_string($u->info['id']) . "' LIMIT 1;" - )) { - echo '
Сохранено
'; - if ($u->info['design'] != $lastdes) { - echo ''; - } - $u->info['name'] = $_POST['name']; - $u->info['city_real'] = $city; - $u->info['icq'] = $_POST['icq']; - $u->info['icq_hide'] = $_POST['hide_icq']; - $u->info['skype'] = $_POST['skype']; - $u->info['skype_hide'] = $_POST['hide_skype']; - $u->info['homepage'] = $_POST['homepage']; - $u->info['deviz'] = $_POST['about']; - $u->info['hobby'] = $_POST['hobby']; - $u->info['chatColor'] = $_POST['ChatColor']; - $u->info['mat'] = $_POST['mat']; - } else { - echo 'что-то не так...'; - } -} - -?> - -info['pass']) { - if ($_POST['pass_new'] == $_POST['pass_new2']) { - $u->info['pass'] = md5($_POST['pass_new']); - mysql_query( - 'UPDATE `users` SET `pass` = "' . $u->info['pass'] . '" WHERE `id` = "' . $u->info['id'] . '" LIMIT 1' - ); - // - setcookie('login', $u->info['login'], time() + 86400 * 365, '', $c['host']); - setcookie('pass', $u->info['pass'], time() + 86400 * 365, '', $c['host']); - // - echo '
Новый пароль успешно записан!
'; - } else { - echo '
Новый пароль не сповпадает со вторым полем!
'; - } - } else { - echo '
Неверный текущий пароль, попробуйте снова!
'; - } -} - -?> - -
@@ -387,20 +156,7 @@ if (isset($_POST['pass_old'])) {
- - +
@@ -408,8 +164,9 @@ if (isset($_POST['pass_old'])) { - + - + +
+ +
+ + + + + - +
+ +
@@ -419,183 +176,89 @@ if (isset($_POST['pass_old'])) { background="https://new-combats.com/new/register/vesch_leftbg.jpg"> - - - - -
+ - - - - - - - - - -
+
+ + +
+ microLogin($u->info['id'], 1) ?> +
-
-
microLogin($u->info['id'], 1) ?>
-
-
- Смена пароля - - Старый пароль:

- Новый пароль:

- Новый пароль (еще раз):

- -
-
+
+
+ Анкета +
+ + + + + + + + + + + + + +
+
+
+ + +
-
+ +
+
- -
- Анкета -
- Ваше реальное имя:

- Город:
-
- Цвет сообщений в чате:
- - -
-
- info['icq'] == 0) { - $u->info['icq'] = ''; - } - ?> - ICQ:

- Skype:

- Вариант дизайна:
- - -
-
-
- Увлечения / хобби (ограничение - символов и 300 строк) -
- -
- -
-
-
+ +
+ +
- -
- + +
+ + @@ -606,56 +269,59 @@ value="Red">Red'; - - - - - -
  
  - - - - - - -
  - -
Бойцовский Клуб © 2013-2016 -

-   -
+
+  
+
- \ No newline at end of file + + + +