<?php
# определение данных
$post = array(); // массив пост - данных
$class = array(); // стили полей
$value = array(); // введенные значения
$form = false; // имя формы
$go = false; // переадресация
# проверка отправки формы, персональные данные
if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['form']) && $_POST['form'] == 'date') {
$form = 'date'; $pass = (USER['pass'] == NULL) ? 'Пароль' : 'Новый пароль'; // указание формы, статус пароля
# проверка полей
$post['nick'] = (empty($_POST['nick'])) ? 'empty' : ((SETUP['nick'] < time() && $USER->filter($_POST['nick'], 'nick', DATA['nick'])) ? $_POST['nick'] : 'stopped'); // ник
if ($post['nick'] != 'stopped' && $post['nick'] != 'empty') { $post['nick'] = (db_exist($DB, 'users', 'id', array('nick' => $_POST['nick']))) ? 'stopped' : $_POST['nick']; } // ник, в базе данных
$post['pass'] = (empty($_POST['pass'])) ? 'empty' : ((isset($_POST['pass']) && $USER->filter($_POST['pass'], 'pass', DATA['pass'])) ? $_POST['pass'] : 'stopped'); // пароль (новый)
$post['check'] = (USER['pass'] == NULL) ? 'empty' : ((isset($_POST['check']) && $FUNC->hashing($_POST['check'], USER['pass'])) ? 'true' : 'stopped'); // текущий пароль
$post['token'] = (isset($_POST['token']) && $_POST['token'] == TOKEN) ? 'true' : 'stopped'; // токен
# определение наличия ошибок
if (in_array('stopped', $post)) { $setting = true; // показ формы настроек
# проверка полей, определение стилей
$class['nick'] = ($post['nick'] == 'empty') ? '' : ($post['nick'] == 'stopped') ? 'no': ''; // ник
$class['pass'] = ($post['pass'] == 'empty') ? '' : ($post['pass'] == 'stopped') ? 'no': ''; // пароль (новый)
$class['check'] = ($post['check'] == 'empty') ? '' : ($post['check'] == 'stopped') ? 'no': ''; // текущий пароль
# проверка введенных значений, вывод данных
$value['nick'] = (isset($_POST['nick']) && !empty($_POST['nick'])) ? ' value="'. $_POST['nick'] .'"': false; // ник
$value['pass'] = (isset($_POST['pass']) && $USER->filter($_POST['pass'], 'pass', DATA['pass'])) ? ' value="'. $_POST['pass'] .'"': false; // пароль
# отсутствие ошибок, обновление данных
} else { if ($post['nick'] != 'empty') { $go = '/settings'; db_update($DB, 'users', array('nick' => $post['nick']), array ('id' => USER['id'])); // ник
$time = time() + 86400; db_update($DB, 'settings', array('nick' => $time), array ('id' => USER['id'])); } // запрет на изменение, сутки
if ($post['pass'] != 'empty') db_update($DB, 'users', array('pass' => $FUNC->hashing($_POST['pass'])), array ('id' => USER['id'])); // пароль
# вывод данных пользователя
$user = db_output($DB, 'users', array('pass', 'vk'), array('id' => USER['id'])); // пользователь
$setup = db_output($DB, 'settings', 'nick', array('id' => USER['id'])); // настройки
# статус пароля
$pass = ($user['pass'] == NULL) ? 'Пароль' : 'Новый пароль'; } }
####################
# проверка отправки формы, приватность
elseif ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['form']) &&
$_POST['form'] == 'vk' && isset($_POST['token'])) { $form = 'vk'; // указание формы
# проверка токена
$stop = ($_POST['token'] != TOKEN) ? true : false;
# проверка доступа, токен
if (!$stop && USER['email'] != NULL && USER['pass'] != NULL && USER['vk'] != 0) { $go = '/garden'; unlink(ROOT .'design/avatars/'. USER['avatar'] .'.jpg'); // удаление аватара
db_update($DB, 'users', array('avatar' => 'none', 'birthday' => 'none', 'name' => 'none', 'vk' => 0), array ('id' => USER['id'])); } } // обновление в базе данных
?>