Вход Регистрация
Файл: page/settings/profile.php
Строк: 115
<?php
$title 
'Настройки профиля';
require_once(
$_SERVER["DOCUMENT_ROOT"]."/inc/head.php");
if (isset(
$active)) {

    echo 
'<div class="title">Аватар</div>';

    
$avatar GlobFiles::findById($user['id'], GlobFiles::UserAvatar);

    if (
$avatar) {
        if (isset(
$_GET['del'])) {
            if (isset(
$_POST['cancel'])) {
                
header('location: /settings/profile');
            }
            elseif (isset(
$_POST['submit'])) {
                
unlink($avatar);
                
header('location: /settings/profile'); 
            } else {
                echo 
'<div class="menu">
                <form action="" method="POST">
                <input type="submit" name="submit" value="Удалить аватар">
                <input type="submit" name="cancel" value="Отмена">
                </form></div>'
;
            }
        }

        echo 
'<div class="menu">Ваш аватар: '.basename($avatar).' ('.get_filesize($avatar).')<a href="?del"><img src="/img/del.png" alt="del"></a><hr/>
        <img src="/preview/'
.$sys['system']['wava'].'/'.base64_encode('/files/avatar/'.basename($avatar)).'" alt="preview" class="rounded" data-toggle="modal" data-target="#avatar">
         <div id="avatar" class="modal fade" tabindex="-1">
          <div class="modal-dialog">
            <img src="/files/avatar/'
.basename($avatar).'" alt="avatar" class="img-thumbnail" data-dismiss="modal">
          </div>
        </div>
        </div>'
;

    }

    if (isset(
$_POST['avatar'])) {
        
$error '';
        if (!
file_exists($_FILES['filename']['tmp_name'])) {
            
$error.= 'Вы не выбрали файл!<br/>';
        }
        elseif (!
BeforeUpload::AttachPicture($_FILES['filename'])) {
            
$error.= 'Неверный тип файла!<br/>';
        }
        if (
$_FILES['filename']['size'] > 1048576) {
            
$error.= 'Максимальный размер файла - 1024 Kb!<br/>';
        }
        if (
$error) {
            echo 
'<div class="menu">'.$error.'</div>';
        } else {

            
$files $user['id']."_".random_int(1111199999)."_".$_FILES['filename']['name'];

            if (
move_uploaded_file($_FILES['filename']['tmp_name'], $_SERVER["DOCUMENT_ROOT"]."/files/avatar/".$files)) {

                if (
$avatar)
                    
unlink($avatar);

                
header('location: /settings/profile');

            } else {
                echo 
'<div class="menu">Произошла ошибка!</div>';
            }

        }

    }

    echo 
'<div class="menu">
    <form name="form" action="" method="POST" enctype="multipart/form-data">
    Прикрепить файл:<br/><input type="file" name="filename"><br/>
    <input type="submit" name="avatar" value="Загрузить">
    </form></div>'
;

    echo 
'<div class="title">Профиль</div>';

    if (isset(
$_POST['profile'])) {
        
$error '';
        if (!empty(
$_POST['status']) && mb_strlen($_POST['status']) > 250) {
            
$error.= 'Статус должен содержать не более 250 символов!<br/>';
        }
        if (!empty(
$_POST['name']) && mb_strlen($_POST['name']) > 75) {
            
$error.= 'Имя должно содержать не более 75 символов!<br/>';
        }
        if (!empty(
$_POST['info']) && mb_strlen($_POST['info']) > 250) {
            
$error.= 'Краткая информация о себе должна содержать не более 250 символов!<br/>';
        }
        if (!empty(
$_POST['birth']) && !validateDate($_POST['birth'], 'Y-m-d')) {
            
$error.= 'Некорректный формат даты!<br/>';
        }
        if (!empty(
$_POST['timezone']) && !isAvailableTimezone($_POST['timezone'])) {
            
$error.= 'Некорректный часовой пояс!<br/>';
        }
        if (
$error) {
            echo 
'<div class="menu">'.$error.'</div>';
        } else {
            
$hd = isset($_POST['hd']) ? 0;
            
$stmt $connect->prepare("update `users` set `status` = ?, `name` = ?, `pol` = ?, `info` = ?, `birth` = ?, `hd` = ?, `fmail` = ?, `timezone` = ? where `id` = ?");
            if (
$stmt->execute(array($_POST['status'], $_POST['name'], $_POST['pol'], $_POST['info'], $_POST['birth'], $hd$_POST['fmail'], $_POST['timezone'], $user['id']))) {
                
header('location: /settings/profile'); 
            } else {
                echo 
'<div class="menu">Произошла ошибка!</div>';
            }
        }
    }
    echo 
'<div class="menu">
    <form action="" method="POST">
    Статус:<br/><textarea name="status">'
.$user['status'].'</textarea><hr/>
    Имя:<br/><input type="text" name="name" value="'
.$user['name'].'"><br/>
    Пол:<br/><select name="pol"><option value="1">Мужской</option><option '
.($user['pol'] == 'selected' '').' value="2">Женский</option></select><br/>
    О себе:<br/><textarea name="info">'
.$user['info'].'</textarea><br/>
    Дата рождения: <small>ГГГГ-ММ-ДД</small><br/><input type="date" name="birth" max="'
.date('Y-m-d'mktime(000date('d'), date('m'), date('Y') - 14)).'" value="'.$user['birth'].'">
    <input type="checkbox" '
.($user['hd'] == 'checked' '').' name="hd" value="1">Скрыть год рождения<br/>
    Отправлять сообщения могут:<br/><select name="fmail"><option value="1">Все</option><option '
.($user['fmail'] == 'selected' '').' value="2">Только друзья</option></select><br/>
    Часовой пояс:<br/>
    <select name="timezone">'
;

    
$date = new DateTime;

    foreach (
TIMEZONES as $gmt => $value) {

        
$dtz = new DateTimeZone($value);

        
$date->setTimezone($dtz);

        echo 
'<option '.($timezone == $value 'selected' '').' value="'.$value.'">'.$gmt.' ('.$value.' | '.$date->format('d.m H:i').')</option>';

    }

    echo 
'</select><br/>
    <input type="submit" name="profile" value="Сохранить">
    </form></div>'
;

    echo 
'<div class="forlink"><a href="/settings" class="links"><img src="/img/sett.png" alt="sett">Настройки</a></div>'

} else {
    
header('Location: /');
}

require(
$_SERVER["DOCUMENT_ROOT"]."/inc/foot.php");
?>
Онлайн: 3
Реклама