Файл: core/modules/users_profil.php
Строк: 120
<?php
if (!defined('CMS')) { die('Access Denied!'); }
if ($is_logged) {
if (!empty($_POST['submit'])) {
$fname = !empty($_POST['fname']) ? check($_POST['fname']) : '';
$lname = !empty($_POST['lname']) ? check($_POST['lname']) : '';
$country = !empty($_POST['country']) ? check($_POST['country']) : '';
$region = !empty($_POST['region']) ? check($_POST['region']) : '';
$city = !empty($_POST['city']) ? check($_POST['city']) : '';
$icq = !empty($_POST['icq']) ? check($_POST['icq']) : '';
$skype = !empty($_POST['skype']) ? check($_POST['skype']) : '';
$site = !empty($_POST['site']) ? check($_POST['site']) : '';
$year = !empty($_POST['year']) ? num($_POST['year']) : '0000';
$month = !empty($_POST['month']) ? num($_POST['month']) : '00';
$month = (strlen($month) == 1) ? '0' . $month : $month;
$day = !empty($_POST['day']) ? num($_POST['day']) : '00';
$day = (strlen($day) == 1) ? '0' . $day : $day;
$birthday = $year . '-' . $month . '-' . $day;
$gender = !empty($_POST['gender']) ? num($_POST['gender']) : '';
$info = !empty($_POST['info']) ? check($_POST['info']) : '';
if (!empty($_POST['rnd']) && $_POST['rnd'] == md5($_SESSION['token'])) {
if (empty($birthday) || preg_match('#^[0-9]{4}+-[0-9]{2}+-[0-9]{2}$#', $birthday)) {
if ($gender == 1 || $gender == 2) {
if (cms_strlen($info) <= 1000) {
if ($site != '') {
$site = str_ireplace('https://', '', $site);
$site = str_ireplace('http://', '', $site);
$site = str_ireplace('ftp://', '', $site);
}
$city = cms_substr($city, 0, 50);
$icq = intval(str_replace('-', '', $icq));
$info = smiles($info);
$db->query("UPDATE ?_users SET `users_first_name` = ?, `users_last_name` = ?, `users_country` = ?, `users_region` = ?, `users_city` = ?, `users_icq` = ?, `users_skype` = ?, `users_site` = ?, `users_birthday` = ?, `users_gender` = ?, `users_info` = ? WHERE `users_login` = ?;", $fname, $lname, $country, $region, $city, $icq, $skype, $site, $birthday, $gender, $info, $log);
$inSes->addMessage('Ваш профиль успешно изменен!', 'ok');
gen_red('index', '', RND);
}
else $inSes->addMessage('Ошибка! Слишком большая информация о себе, не более 1000 символов!');
}
else $inSes->addMessage('Ошибка! Вы не указали ваш пол!');
}
else $inSes->addMessage('Ошибка! Недопустимый формат даты рождения, необходим формат дд-мм-гггг!');
}
else $inSes->addMessage('Ошибка! Неверный идентификатор сессии, повторите действие!');
}
if (!empty($_GET['del_photo'])) {
if (!empty($_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {
$userpic = $db->selectCell("SELECT `users_picture` FROM ?_users WHERE `users_login` = ? LIMIT 1;", $log);
clearstatcache();
if (!empty($userpic) && @is_file(ROOTPATH . '/upload/photos/' . $userpic)) {
unlink_image('upload/photos/', $userpic);
$db->query("UPDATE ?_users SET `users_picture` = '' WHERE `users_login` = ?", $log);
$db->query("OPTIMIZE TABLE ?_users;");
$inSes->addMessage('Фотография успешно удалена!', 'ok');
}
else $inSes->addMessage('Ошибка! Фотографии для удаления не существует!');
}
else $inSes->addMessage('Ошибка! Неверный идентификатор сессии, повторите действие!');
gen_red('profil', '', RND);
}
show_header('Мой профиль');
echo show_link(gen_users($uset['users_id'], 'account', '', RND), 'Мои данные');
$form = new cmsForm('?rnd=' . $_SESSION['token']);
$form->addText('Имя:', 'fname', $uset['users_first_name'], ' maxlength="30"');
$form->addText('Фамилия:', 'lname', $uset['users_last_name'], ' maxlength="30"');
$form->addSelect('Страна:', 'country', !empty($uset['users_country']) ? $uset['users_country'] : 'RU', $countries);
$form->addText('Регион:', 'region', $uset['users_region'], ' maxlength="50"');
$form->addText('Город:', 'city', $uset['users_city'], ' maxlength="50"');
$form->addText('ICQ:', 'icq', $uset['users_icq'], ' maxlength="10"');
$form->addText('Skype:', 'skype', $uset['users_skype'], ' maxlength="50"');
$form->addText('Сайт <span class="xxsmall">(без http://)</span>:', 'site', $uset['users_site'], ' maxlength="50"');
if (!empty($uset['users_birthday'])) {
list($year, $month, $day) = explode('-', $uset['users_birthday']);
}
else {
$day = date('d');
$month = date('m');
$year = date('Y');
}
$form->addDate('Дата рождения:', 'day', 'd', $day);
$form->addDate('', 'month', 'm', $month);
$form->addDate('', 'year', 'y', $year);
$form->addSelect('Пол:', 'gender', $uset['users_gender'], array(1 => 'Мужской', 2 => 'Женский'));
$uset['users_info'] = str_replace(array('<br>', '<br/>', '<br />'), "rn", $uset['users_info']);
$form->addTextarea('О себе:', 'info', $uset['users_info']);
$form->addHidden('rnd', md5($_SESSION['token']));
echo $form->Submit('Изменить', 'submit');
unset($form);
echo show_link(gen_users($uset['users_id'], 'index', '', RND), 'Назад');
}
else {
show_header('Мой профиль');
show_login('Вы не авторизованы, чтобы изменять свои данные, необходимо');
}
?>