Размер файла: 9.28Kb
<?php
// by mides, icq: 529-899-6, mail: [email protected]
$title = 'Мой кабинет';
require("../config.php");
require("../includes/start.php");
if(empty($_SESSION['login'])){header("location: ../");}
require("../includes/functions.php");
tp('Мой кабинет');
switch($_GET['act']){
###############################################################################
## Главная страница кабинета ##
###############################################################################
default:
echo '<div class="s1">Меню</div><div class="s2">';
echo '<a href="profile.php?u='.$_SESSION['login'].'">Мой профиль</a><br/>';
echo '<a href="?act=profile">Изменить профиль</a><br/>';
$private = mysql_result(mysql_query("SELECT COUNT(`id`) FROM `private` WHERE `login` = '".$_SESSION['login']."'"), 0);
echo '<a href="private.php">Мои сообщения</a> ('.$private.')<br/>';
echo '<a href="private.php?act=send">Отправить письмо</a><br/>';
$foes = mysql_result(mysql_query("SELECT COUNT(`id`) FROM `foes` WHERE `is_foe_for` = '".$_SESSION['login']."'"), 0);
echo '<a href="foes.php">Игнор-лист</a> ('.$foes.')<br/>';
$friends = mysql_result(mysql_query("SELECT COUNT(`id`) FROM `friends` WHERE `is_friend_for` = '".$_SESSION['login']."'"), 0);
echo '<a href="friends.php">Контакт лист</a> ('.$friends .')<br/>';
echo '<a href="?act=settings">Мои настройки</a><br/>';
echo '<a href="?act=pm">Пароль и e-mail</a><br/>';
echo '<a href="?act=exit">Завершение сеанса</a></div>';
nav();
break;
###############################################################################
## Форма редактирования профиля ##
###############################################################################
case 'profile':
$profile = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '".$_SESSION['user_id']."'"));
echo '<div class="s1">Изменить профиль</div><div class="s2">';
echo '<form action="office.php?act=profile_do" method="post" name="form">';
echo 'Имя:<br/><input name="name" type="text" maxlength="25" value="'.$profile['profile_name'].'" /><br/>';
echo 'Страна:<br/><input name="country" type="text" maxlength="25" value="'.$profile['profile_country'].'" /><br/>';
echo 'Откуда:<br/><input name="from" type="text" maxlength="25" value="'.$profile['profile_from'].'" /><br/>';
echo 'ICQ:<br/><input name="icq" type="text" maxlength="10" value="'.$profile['profile_icq'].'" /><br/>';
echo 'Сайт:<br/><input name="site" type="text" maxlength="25" value="'.$profile['profile_site'].'" /><br/>';
echo 'Дата рождения(дд.мм.гггг):<br/><input name="birthday" type="text" maxlength="10" value="'.$profile['profile_birthday'].'" /><br/>';
echo 'Пол:<br/>';
if($profile['profile_sex'] == 1){
echo 'Муж<input name="sex" type="radio" value="1" checked /> <input name="sex" type="radio" value="2" />Жен<br/>';
}elseif($profile['profile_sex'] == 2){
echo 'Муж<input name="sex" type="radio" value="1"/> <input name="sex" type="radio" value="2" checked />Жен<br/>';
}else{
echo 'Муж<input name="sex" type="radio" value="1"/> <input name="sex" type="radio" value="2" />Жен<br/>';
}
echo 'О себе(max150):<br/><textarea name="about" rows="3">'.$profile['profile_about'].'</textarea><br/>';
echo '<input name="submit" type="submit" value="Сохранить" /></form></div>';
nav2('office.php', 'назад в кабинет');
break;
###############################################################################
## Редактирование профиля ##
###############################################################################
case 'profile_do':
if(strlen($_POST['about']) <= 150){
$name = sec($_POST['name']);
$country = sec($_POST['country']);
$from = sec($_POST['from']);
$icq = sec($_POST['icq']);
$site = sec($_POST['site']);
$birthday = sec($_POST['birthday']);
$sex = sec($_POST['sex']);
$about = sec($_POST['about']);
mysql_query("UPDATE `users` SET `profile_name` = '$name', `profile_country` = '$country', `profile_from` = '$from', `profile_icq` = '$icq', `profile_site` = '$site', `profile_birthday` = '$birthday', `profile_sex` = '$sex', `profile_about` = '$about' WHERE `id` = '".$_SESSION['user_id']."'");
info('Профиль успешно сохранен!');
nav2('office.php', 'назад в кабинет');
}else{
error('Слишком длинное поле "О себе"!');
nav2('office.php?act=profile', 'назад');
}
break;
###############################################################################
## Форма редактирования настроек ##
###############################################################################
case 'settings':
echo '<div class="s1">Настройки</div><div class="s2">';
echo '<form action="?act=settings_do" method="post" name="form">';
echo 'Стиль сайта:<br/><select name="style">';
echo '<option value="'.$config['style'].'">'.$config['style'].'</option>';
foreach (glob("../styles/*.css") as $styles){
if (basename($styles) != $config['style']){
echo '<option value="'.basename($styles).'">'.basename($styles).'</option>';
}
}
echo '</select><br />';
echo 'Элементов на страницу:<br/><input name="onpage" type="text" value="'.$config['onpage'].'" maxlength="2" /><br/>';
echo '<input name="submit" type="submit" value="Сохранить" /></form>';
echo '</div>';
nav2('office.php', 'назад в кабинет');
break;
###############################################################################
## Редактирование настроек ##
###############################################################################
case 'settings_do':
if(!empty($_POST['style']) && !empty($_POST['onpage'])){
$style = sec($_POST['style']);
$onpage = num($_POST['onpage']);
mysql_query("UPDATE `users` SET `set_style` = '$style', `set_onpage` = '$onpage' WHERE `id` = '".$_SESSION['user_id']."'");
info('Настройки успешно сохранены!');
nav2('office.php', 'назад в кабинет');
}else{
error('Вы не заполнили поля!');
nav2('office.php?act=settings', 'назад');
}
break;
###############################################################################
## Форма редактирования пароля и e-mail'a ##
###############################################################################
case 'pm':
$user = mysql_fetch_assoc(mysql_query("SELECT `user_mail` FROM `users` WHERE `id` = '".$_SESSION['user_id']."'"));
echo '<div class="s1">Пароль и e-mail</div><div class="s2">';
echo '<form action="?act=pm_do" method="post" name="form">';
echo 'Ваш e-mail: <u>'.$user['user_mail'].'</u><br/>';
echo 'Новый пароль:<br/><input name="pass_new" type="text" maxlength="20" /><br/>';
echo 'Старый пароль:<br/><input name="pass" type="text" maxlength="20" /><br/>';
echo '<input name="submit" type="submit" value="Сохранить" /></form>';
echo '</div>';
nav2('office.php', 'назад в кабинет');
break;
###############################################################################
## Редактирования пароля и e-mail'a ##
###############################################################################
case 'pm_do':
if(!empty($_POST['pass_new']) && !empty($_POST['pass'])){
$pass_new = sec($_POST['pass_new']);
$pass = sec($_POST['pass']);
if(!preg_match('|^[a-z0-9\-]+$|i', $pass_new) or !preg_match('|^[a-z0-9\-]+$|i', $pass)){
error('Недопустимые символы. Разрешены знаки латинского алфавита, цифры и дефис!');
nav2('?act=pm', 'назад');
break;
}
$user = mysql_fetch_assoc(mysql_query("SELECT `user_pass` FROM `users` WHERE `id` = '".$_SESSION['user_id']."'"));
if($user['user_pass'] != md5($pass)){
error('Старый пароль введен неверно!');
nav2('?act=pm', 'назад');
break;
}
mysql_query("UPDATE `users` SET `user_pass` = '".md5($pass_new)."' WHERE `id` = '".$_SESSION['user_id']."'");
info('Пароль успешно сохранен!');
nav2('?act=', 'назад в кабинет');
}else{
error('Вы не заполнили поля!');
nav2('?act=pm', 'назад');
}
break;
###############################################################################
## Выход, завершение сеанса ##
###############################################################################
case 'exit':
unset($_SESSION['user_id']);
unset($_SESSION['login']);
unset($_SESSION['access']);
info('Вы успешно завершили сеанс');
nav();
break;
}
require("../includes/tail.php");
?>