Вход Регистрация
Файл: settings.php
Строк: 473
<?php
include_once ('core/base.php');
falseauth();

switch(
$act){
default:
    
$header 'Настройки';
    include_once (
'core/head.php');
    
//Если не привязана электронная почта
    
if($u['email'] == ''){
    
header('Location: /settings/email/');
    exit;
    }
    echo 
'<div class="b">';
    echo 
'<div class="title">Настройки</div>';
    echo 
'<div class="event"><center>Первый сброс очков характеристик и очков умений осуществляется бесплатно, а все последующие будут стоить <img src="/images/icons/gold.png"><font color="gold">500</font> золота.</center></div>';
    if(
$u['first_reset_char_points'] == 0$reset_charpoints_cost 0;
    else 
$reset_charpoints_cost 500;
    echo 
'<a class="btn" href="/settings/charpoints/"><img src="/images/icons/character_points.png"> Сбросить очки характеристик <img src="/images/icons/gold.png"><font color="gold">'.$reset_charpoints_cost.'</font></a>';
    if(
$u['first_reset_skill_points'] == 0$reset_skillpoints_cost 0;
    else 
$reset_skillpoints_cost 500;
    echo 
'<a class="btn" href="/settings/skillpoints/"><img src="/images/icons/skill_points.png"> Сбросить очки умений <img src="/images/icons/gold.png"><font color="gold">'.$reset_skillpoints_cost.'</font></a>';
    echo 
'<a class="btn" href="/settings/statistics/"><img src="/images/icons/skeleton.png"> Сбросить статистику <img src="/images/icons/gold.png"><font color="gold">500</font></a>';
    echo 
'<a class="btn" href="/settings/login/"><img src="/images/icons/key.png"> Сменить логин <img src="/images/icons/gold.png"><font color="gold">'.n_f(1000).'<font></a>';
    echo 
'<a class="btn" href="/settings/sex/"><img src="/images/icons/settings.png"> Сменить пол <img src="/images/icons/gold.png"><font color="gold">'.n_f(1000).'</font></a>';
    
//echo '<a class="btn" href="/settings/email/"><img src="/images/icons/mail.png"> Привязать E-mail</a>';
    
echo '<a class="btn" href="/settings/status/"><img src="/images/icons/fearrow.png"> Сменить статус</a>';
    echo 
'<a class="btn" href="/settings/info/"><img src="/images/icons/blue_fearrow.png"> Заполнить анкету</a>';
    echo 
'<a class="btn" href="/settings/pass/"><img src="/images/icons/key.png"> Сменить пароль</a>';
    if(
$u['chat_on_location'] == 'on')     echo '<a class="btn" href="/settings/change_chat_on_location/"><img src="/images/icons/red_fearrow.png"> Отключить чат в локации</a>';
    else echo 
'<a class="btn" href="/settings/change_chat_on_location/"><img src="/images/icons/blue_fearrow.png"> Включить чат в локации</a>';
    echo 
'<a class="btn" href="/exit/"><img src="/images/icons/no.png"> Выйти из игры</a>';
    echo 
'<br/><a class="btn" href="javascript:history.go(-1)"><img src="/images/icons/back.png"> Назад</a>';
    echo 
'</div>';
break;
case 
'activation':
    
$header 'Подтверждение E-mail';
    include_once (
'core/head.php');
    
$codeActivation fl($_GET['code']);
    if(!isset(
$codeActivation)) error('Код подтверждения не обнаружен.');
    elseif(
$u['activation_code'] != $codeActivationerror('Код подтверждения не верный.');
    elseif(
$u['activation'] == 1error('E-mail уже подтвержден.');
    else {
        
$base -> query("UPDATE `users` SET `activation` = '1' WHERE `id` = '".$u['id']."'");
        
succes('E-mail успешно подтвержден.');
        
header('Location: /');
        exit;
    }
break;
case 
'email':
    
$header 'Привязка E-mail';
    include_once (
'core/head.php');
    if(
$u['email'] != ''){
        
$_SESSION['message'] == 'Электронная почта уже привязана.';
        
header('Location: /settings/');
        exit;
    }
    if(isset(
$_REQUEST['email'])){
        
$email  fl($_POST['mail']);
        
$code generateCode($length 10);
        
$sqlMail $base -> query("SELECT * FROM `users` WHERE `email` = '$email'") -> num_rows;
        if(
$sqlMail 0error('Данный E-mail занят.');
        elseif (!
preg_match('/[0-9a-z_-]+@[0-9a-z_-^.]+.[a-z]{2,6}/i'$email)) error('Неверный формат E-mail.');
        elseif(!empty(
$u['activation_code'])) error('Код подтверждения уже был отправлен ранее.');
        elseif(
$u['activation'] == 1error('Вы уже подтвердили E-mail.');
        else{
            
$base -> query("UPDATE `users` SET
            `gold` = `gold` + '100',
            `email` = '
$email',
            `activation_code` = '"
.$code."',
            `activation` = '0'
             WHERE `id` = '"
.$u['id']."'");
            
$message '
                Здравствуйте, '
.$u['login'].'. n
                Для привязки Вашего аккаунта к E-mail перейдите по ссылке: <a href="http://avalor.mobi/activation/'
.$code.'">http://avalor.mobi/activation/'.$code.'</a> n
                --------- n
                Если Вы не собирались привязывать E-mail в AVALOR.mobi, то проигнорируйте данное письмо.
            '
;
            
mail($email"Подтверждение E-mail в AVALOR.mobi"$message"Content-type:text/plain; Charset=utf-8rn");
            
//success('Ссылка для подтверждения отправлена на E-mail.');
            
$_SESSION['message'] = 'Электронная почта успешно привязана.';
            
header('Location: /settings/');
            exit;
        }
    }
    echo 
'<div class="b">';

    echo 
'<div class="title">Привязка E-mail</div>';

    if(
$u['activation'] == 0){
        echo 
'<center><form action="" method="POST">';
            echo 
'<div class="event">
            Привязав электронную почту, вы получите <img src="/images/icons/gold_24.png"><font color="gold"><b>100</b></font> золота.
            </div>'
;
            echo 
'<input type="text" name="mail"></br>';
            echo 
'<input type="submit" name="email" value="Готово"></br>';
        echo 
'</form></center><br/>';
    } else {
        echo 
'<br/><center>Ваш аккаунт привязан к: <b>'.$u['email'].'</b></center><br/>';
    }
    echo 
'</div>';
break;

case 
'status':
    
$header 'Статус';
    include_once (
'core/head.php');
    
unsave();
    
$_REQUEST['success'] = fl($_REQUEST['success']);
    if(isset(
$_REQUEST['success'])){
        
$p['status'] = fl($_POST['status']);
        if(empty(
$p['status'])) error('Заполните все поля.');
        elseif(
mb_strlen($p['status']) < || mb_strlen($p['status']) > 50error('Статус должен содержать не менее 3 символов и не более 50.');
        else {
            
$base -> query("UPDATE `users` SET `status` = '".$p['status']."' WHERE `id` = '".$u['id']."' LIMIT 1");
            
$_SESSION['message'] = 'Статус успешно сохранён.';
            
header('Location: /settings/status/');
            exit;
        }
    }
    echo 
'<div class="b">';
    echo 
'<div class="title">Статус</div>';
    echo 
'<form method="POST" action="">';
    echo 
'<center>';
    echo 
'Новый статус: <br/>';
    echo 
'<input type="text" name="status" value="'.$u['status'].'" /><br/>';
    echo 
'<input type="submit" name="success" value="Сохранить" />';
    echo 
'</form>';
    echo 
'</center>';
    echo 
'<a class="btn" href="/settings/"><img src="/images/icons/back.png"> Назад</a>';
    echo 
'</div>';
break;

case 
'info':
    
$header 'Анкета';
    include_once (
'core/head.php');
    
unsave();
    if(isset(
$_REQUEST['success'])){
        
$i['name'] = fl($_POST['name']);
        
$i['country'] = fl($_POST['country']);
        
$i['info'] = fl($_POST['info']);
        if(empty(
$i['name'])) error('Заполните все поля.');
        elseif(empty(
$i['country'])) error('Заполните все поля.');
        elseif(
mb_strlen($i['name']) < || mb_strlen($i['name']) > 20error('Имя должно содержать не менее 2 символов и не более 20.');
        elseif(
mb_strlen($i['country']) < || mb_strlen($i['country']) > 20error('Страна должна содержать не менее 3 символов и не более 20.');
        else{
            
$base -> query("UPDATE `users` SET
                `name` = '"
.$i['name']."',
                `country` = '"
.$i['country']."',
                `info` = '"
.$i['info']."'
                WHERE `id` = '"
.$u['id']."'");
            
$_SESSION['message'] = 'Анкета успешно сохранена.';
            
header('Location: /settings/info/');
            exit;
        }
    }
    echo 
'<div class="b">';
    echo 
'<div class="title">Анкета</div>';
    echo 
'<form method="POST" action="">';
    echo 
'<center>';
    echo 
'Имя: <br/>';
    echo 
'<input type="text" name="name" value="'.$u['name'].'" /><br/>';
    echo 
'Страна: <br/>';
    echo 
'<input type="text" name="country" value="'.$u['country'].'" /><br/>';
    echo 
'<input type="submit" name="success" value="Сохранить" />';
    echo 
'</form>';
    echo 
'</center>';
    echo 
'<a class="btn" href="/settings/"><img src="/images/icons/back.png"> Назад</a>';
    echo 
'</div>';
break;

case 
'charpoints';

$header 'Сброс очков характеристик';
include_once (
'core/head.php');
unsave();

if(
$u['first_reset_char_points'] == 0$reset_charpoints_cost 0;
else 
$reset_charpoints_cost 500;

$buff_active $base -> query('SELECT * FROM `buffs` WHERE `user` = "'.$u['id'].'" LIMIT 1') -> num_rows;

if(
$buff_active == 0){

if(
$u['equip_right'] == AND $u['equip_left'] == AND $u['equip_head'] == AND $u['equip_body'] == AND $u['equip_hands'] == AND $u['equip_foot'] == AND $u['equip_necklace'] == AND $u['equip_ring'] == 0){

if(
$u['gold'] >= $reset_charpoints_cost){

$_GET['answer'] = fl($_GET['answer']);

if(
$_GET['answer'] == 'yes'){
    
$charpoints $u['level'] * 5;
    
$base -> query('UPDATE `users` SET
        `p_att` = "15",
        `m_att` = "0",
        `p_def` = "0",
        `m_def` = "0",
        `endurance` = "5",
        `intellect` = "5",
        `agility` = "5",
        `skill` = "5",
        `character_points` = "'
.$charpoints.'",
        `gold` = `gold` - "'
.$reset_charpoints_cost.'",
        `first_reset_char_points` = "1" WHERE `id` = "'
.$u['id'].'"');
    
$_SESSION['message'] = 'Очки характеристик успешно сброшены.';
    
header('Location: /settings/');
    exit;
}elseif(
$_GET['answer'] == 'no'){
    
header('Location: /settings/');
    exit;
}

echo 
'<div class="b">';

echo 
'<div class="title">Сброс очков харатеристик</div>';

echo 
'<div class="event"><center>Вы действительно хотите сбросить очки характеристик?</center></div>';

echo 
'<a class="btn" href="/settings/charpoints/yes/"><img src="/images/icons/yes.png"> Да</a>';
echo 
'<a class="btn" href="/settings/charpoints/no/"><img src="/images/icons/no.png"> Нет</a>';

echo 
'</div>';

}else{
    
$_SESSION['message'] = 'Недостаточно золота.';
    
header('Location: /settings/');
    exit;
}

}else{
    
$_SESSION['message'] = 'Для начала, снимите все надетые вещи.';
    
header('Location: /settings/');
    exit;
}

}else{
    
$_SESSION['message'] = 'Дождитесь окончания времени усилений.';
    
header('Location: /settings/');
    exit;
}

break;

case 
'skillpoints';

$header 'Сброс очков умений';
include_once (
'core/head.php');
unsave();

if(
$u['first_reset_skill_points'] == 0$reset_skillpoints_cost 0;
else 
$reset_skillpoints_cost 500;

if(
$u['gold'] >= $reset_skillpoints_cost){

$_GET['answer'] = fl($_GET['answer']);

if(
$_GET['answer'] == 'yes'){
    
$base -> query('DELETE FROM `users_skills` WHERE `user` = "'.$u['id'].'"');
    
$skillpoints $u['level'] - 1;
    
$base -> query('UPDATE `users` SET
        `skill_points` = "'
.$skillpoints.'",
        `gold` = `gold` - "'
.$reset_skillpoints_cost.'",
        `skill_slot_1` = "0",
        `skill_slot_2` = "0",
        `skill_slot_3` = "0",
        `first_reset_skill_points` = "1" WHERE `id` = "'
.$u['id'].'" LIMIT 1');
    
$_SESSION['message'] = 'Очки умений успешно сброшены.';
    
header('Location: /settings/');
    exit;
}elseif(
$_GET['answer'] == 'no'){
    
header('Location: /settings/');
    exit;
}

echo 
'<div class="b">';

echo 
'<div class="title">Сброс очков умений</div>';

echo 
'<div class="event"><center>Вы действительно хотите сбросить очки умений?</center></div>';

echo 
'<a class="btn" href="/settings/skillpoints/yes/"><img src="/images/icons/yes.png"> Да</a>';
echo 
'<a class="btn" href="/settings/skillpoints/no/"><img src="/images/icons/no.png"> Нет</a>';

echo 
'</div>';

}else{
    
$_SESSION['message'] = 'Недостаточно золота.';
    
header('Location: /settings/');
    exit;
}

break;

case 
'statistics';

$header 'Сброс статистики';
include_once (
'core/head.php');
unsave();

$reset_statistics_cost 500;

if(
$u['gold'] >= $reset_statistics_cost){

$_GET['answer'] = fl($_GET['answer']);

if(
$_GET['answer'] == 'yes'){
    
$base -> query('UPDATE `users` SET
        `duel_wins` = "0",
        `duel_loses` = "0",
        `kills` = "0",
        `boss_kills` = "0",
        `gold` = `gold` - "'
.$reset_statistics_cost.'"
        WHERE `id` = "'
.$u['id'].'" LIMIT 1');
    
$_SESSION['message'] = 'Статистика успешно сброшена.';
    
header('Location: /settings/');
    exit;
}elseif(
$_GET['answer'] == 'no'){
    
header('Location: /settings/');
    exit;
}

echo 
'<div class="b">';

echo 
'<div class="title">Сброс статистики</div>';

echo 
'<div class="event"><center>Вы действительно хотите сбросить статистику?</center></div>';

echo 
'<a class="btn" href="/settings/statistics/yes/"><img src="/images/icons/yes.png"> Да</a>';
echo 
'<a class="btn" href="/settings/statistics/no/"><img src="/images/icons/no.png"> Нет</a>';

echo 
'</div>';

}else{
    
$_SESSION['message'] = 'Недостаточно золота.';
    
header('Location: /settings/');
    exit;
}

break;

case 
'login':
    
$header 'Смена логина';
    include_once (
'core/head.php');
    
unsave();
    
$change_login_cost 250;
    if(isset(
$_REQUEST['success'])){
        
$p['login'] = fl($_POST['newLogin']);
        
$login_exist_nr $base -> query('SELECT * FROM `users` WHERE `login` = "'.$p['login'].'" LIMIT 1') -> num_rows;
        if(empty(
$p['login'])) error('Введите новый логин.');
        elseif(
strlen($p['login']) < || strlen($p['login']) > 30error('Логин должен содержать не менее 3 символов и не более 30.');
        elseif(
$login_exist_nr 0error('Логин занят.');
        elseif(
$u['gold'] < $change_login_costerror('Недостаточно золота.');
        else {
            
$base -> query("UPDATE `users` SET `login` = '".$p['login']."', `gold` = `gold` - '".$change_login_cost."' WHERE `id` = '".$u['id']."' LIMIT 1");
            
setcookie('login'$p['login'], time()+86400*365'/');
            
setcookie('password'$u['password'], time()+86400*365'/');
            
success('Логин успешно сохранён.');
        }
    }
    echo 
'<div class="b">';
    echo 
'<div class="title">Смена логина</div>';
    echo 
'<div class="event"><center>Стоимость смены логина <img src="/images/icons/gold.png">'.$change_login_cost.'</center></div>';
    echo 
'<center>';
    echo 
'<form method="POST" action="">';
    echo 
'Новый логин: <br/>';
    echo 
'<input type="text" name="newLogin" placeholder="Введите новый логин." value="" /> <br/>';
    echo 
'<input type="submit" name="success" value="Сохранить" />';
    echo 
'</form>';
    echo 
'</center>';
    echo 
'<a class="btn" href="/settings/"><img src="/images/icons/back.png"> Назад</a>';
    echo 
'</div>';
break;

case 
'sex';

$header 'Смена пола';
include_once (
'core/head.php');
unsave();

$change_sex_cost 500;

if(
$u['gold'] >= $change_sex_cost){

$_GET['answer'] = fl($_GET['answer']);

if(
$_GET['answer'] == 'yes'){
    if(
$u['sex'] == 1$sex 2;
    elseif(
$u['sex'] == 2$sex 1;
    
$base -> query('UPDATE `users_skins` SET `skin` = "'.$sex.'" WHERE `user` = "'.$u['id'].'" AND `skin` = "'.$u['sex'].'" LIMIT 1');
    
$skin $base -> query('SELECT * FROM `users_skins` WHERE `skin` = "'.$u['sex'].'" LIMIT 1') -> fetch_assoc();
    
$base -> query('UPDATE `users` SET `sex` = "'.$sex.'", `skin` = "'.$skin['id'].'", `gold` = `gold` - "'.$change_sex_cost.'" WHERE `id` = "'.$u['id'].'" LIMIT 1');
    
$_SESSION['message'] = 'Пол успешно сменён.';
    
header('Location: /settings/');
    exit;
}elseif(
$_GET['answer'] == 'no'){
    
header('Location: /settings/');
    exit;
}

echo 
'<div class="b">';

echo 
'<div class="title">Смена пола</div>';

echo 
'<div class="event"><center>Вы действительно хотите сменить пол?</center></div>';

echo 
'<a class="btn" href="/settings/sex/yes/"><img src="/images/icons/yes.png"> Да</a>';
echo 
'<a class="btn" href="/settings/sex/no/"><img src="/images/icons/no.png"> Нет</a>';

echo 
'</div>';

}else{
    
$_SESSION['message'] = 'Недостаточно золота.';
    
header('Location: /settings/');
    exit;
}

break;

case 
'pass':
    
$header 'Смена пароля';
    include_once (
'core/head.php');
    
unsave();
    if(isset(
$_REQUEST['success'])){
        
$p['passLast'] = fl($_POST['passLast']);
        
$p['passNew'] = fl($_POST['passNew']);
        
$p['repassNew'] = fl($_POST['repassNew']);
        if(empty(
$p['passLast']) or empty($p['passNew'])or empty($p['repassNew'])) error('Заполните все поля.');
        elseif(
md5($p['passLast']) != $u['password']) error('Неверно введен старый пароль.');
        elseif(
$p['passNew'] != $p['repassNew']) error('Новые пароли не совпадают.');
        elseif(
strlen($p['passNew']) < || strlen($p['passNew']) > 30error('Пароль должен содержать не менее 6 символов и не более 30.');
        elseif(
strlen($p['passNew']) < 6error('Введенный пароль не безопасен. Введите пароль содержащий более 6 символов.');
        elseif(
$u['login'] == $p['passNew']) error('Логин и пароль не должны совпадать.');
        else {
            
$base -> query("UPDATE `users` SET `password` = '".md5($p['passNew'])."' WHERE `id` = '".$u['id']."' LIMIT 1");
            
setcookie('login'$u['login'], time()+86400*365'/');
            
setcookie('password'md5($p['passNew']), time()+86400*365'/');
            
success('Пароль успешно сменён.');
        }
    }
    echo 
'<div class="b">';
    echo 
'<div class="title">Смена пароля</div>';
    echo 
'<center>';
    echo 
'<form method="POST" action="">';
    echo 
'Старый пароль: <br/>';
    echo 
'<input type="password" name="passLast" placeholder="Введите старый пароль." value="" /> <br/>';
    echo 
'Новый пароль: <br/>';
    echo 
'<input type="password" name="passNew" placeholder="Введите новый пароль." value="" /> <br/>';
    echo 
'Повторите новый пароль: <br/>';
    echo 
'<input type="password" name="repassNew" placeholder="Введите новый пароль еще раз." value="" /> <br/>';
    echo 
'<input type="submit" name="success" value="Изменить" />';
    echo 
'</form>';
    echo 
'</center>';
    echo 
'<a class="btn" href="/settings/"><img src="/images/icons/back.png"> Назад</a>';
    echo 
'</div>';
break;

case 
'change_chat_on_location':
    if(
$u['chat_on_location'] == 'on'$change 'off';
    elseif(
$u['chat_on_location'] == 'off'$change 'on';
    
$base -> query('UPDATE `users` SET `chat_on_location` = "'.$change.'" WHERE `id` = "'.$u['id'].'" LIMIT 1');
    if(
$change == 'off'$_SESSION['message'] = 'Чат в локации отключен.';
    elseif(
$change == 'on'$_SESSION['message'] = 'Чат в локации включен.';
    
header('Location: /settings/');
    exit;
break;

}

include_once (
'core/foot.php');
?>
Онлайн: 0
Реклама