Файл: users/avatar.php
Строк: 84
<?
include('../core/core.php');
include(MAINDIR.'style/head.php');
if(is_user()){
$my = DB::run() -> queryFetch("SELECT * FROM `users` WHERE `login`=? LIMIT 1",array(check($_COOKIE['login'])));
title('Настройки');
echo'<div class="title">Настройки -> Аватар</div>';
switch ($mode):
case 'index':
echo'<div class="menu">';
echo'Ваш основной аватар:<br />
'.ava($my['login']).'<br />';
echo'</div>';
echo'<div class="menu">';
echo'<form action="?mode=size" method="post">
Размер аватара:<br />
<input name="x" type="text" value="'.$my['x_ava'].'" size="3" maxlength="3" /> x <input name="y" type="text" value="'.$my['y_ava'].'" size="3" maxlength="3" /><br />
<input name="" type="submit" value="Изменить" />
</form>';
echo'</div>';
echo'<div class="menu_2">';
if($my['ava'] == NULL){echo'<a href="?mode=up">Загрузить новую</a>';} else {echo'<a href="?mode=delet">Удалить</a>';}
echo'</div>';
break;
case 'up':
$set = DB::run() -> queryFetch("SELECT * FROM `setting` WHERE `id`=? LIMIT 1",array(1));
echo'<div class="error">Загрузка аватара только с латинским именем без пробелов. Разрешается загрузить до <strong>'.$set['ava_upload'].'</strong> кб.</div>';
echo'<div class="menu">';
if($my['ava'] == NULL){
echo'<form action="?mode=upload" enctype="multipart/form-data" method="post">
Выберите файл:<br />
<input name="filename" type="file" /><br />
<input name="" type="submit" value="Загрузить" />
</form>';
} else {echo'Удалите старую!';}
echo'</div>';
break;
case 'upload':
$set = DB::run() -> queryFetch("SELECT * FROM `setting` WHERE `id`=? LIMIT 1",array(1));
echo'<div class="menu">';
$file = basename($_FILES['filename']['name']);
# тип
$tuupp = basename($_FILES['filename']['type']);
if($tuupp == 'gif' || $tuupp == 'png' || $tuupp == 'jpg' || $tuupp == 'jpeg'){
# Размер
$siize = $_FILES['filename']['size'];
$a = $siize / 1024;
$otvet = round($a, 2);
if($set['ava_upload'] > $otvet){
# Имя
if(!preg_match("/([^a-zA-Z0-9-.])/", $file)){
if(is_uploaded_file($_FILES["filename"]["tmp_name"])){
if (file_exists('../obmen/ava/'.$file.'')){$name = ''.rand(1111,99999999).'.'.$tuupp.'';} else {$name = $file;}
move_uploaded_file($_FILES["filename"]["tmp_name"], "../obmen/ava/".$name);
$login = check($_COOKIE['login']);
DB::run() -> query("UPDATE `users` SET `ava`=? WHERE `login`=?",array($name,$login));
header ('location: ?mode=index');
} else {echo('Ошибка загрузки файла');}
} else {echo'В названии есть недопустимые символы!';}
} else {echo'Размер файла превышает '.$set['ava_upload'].' кб.';}
} else {echo'Загружать можно только картинки! '.$file.'';}
echo'</div>';
break;
case 'delet':
$post = abs(intval($_GET['post']));
if(!empty($post)){
echo'<div class="menu">';
echo'Вы действительно хотите удалить ваш текущий аватар?<br />
<a href="mode=delet&post=yes">Да, я хочу удалить</a><br />
<a href="?mode=index">Нет, я не хочу удалять</a>';
echo'</div>';
} else {
unlink('../obmen/ava/'.$my['ava'].'');
DB::run() -> query("UPDATE `users` SET `ava`=? WHERE `login`=?",array(NULL,$my['login']));
header ('location: ?mode=index');
}
break;
case 'size':
$x = abs(intval($_POST['x']));
$y = abs(intval($_POST['y']));
echo'<div class="menu">';
if($x > 0 && $x < 400){
if($y > 0 && $y < 400){
DB::run()->query("UPDATE `users` SET `x_ava`=?,`y_ava`=? WHERE `login`=?",array($x,$y,$my['login']));
header ('location: ?mode=index');
} else {echo'Размер превышает 400!';}
} else {echo'Размер превышает 400!';}
echo'</div>';
break;
default:
header ('location: ?mode=index');
endswitch;
echo'</div>';
} else {
title('Ошибка!');
echo'<div class="title">Ошибка!</div>';
echo'<div class="error">';
echo'Доступ разрешен только авторизованым!';
echo'</div>';
}
include(MAINDIR.'style/foot.php');
?>